-
Notifications
You must be signed in to change notification settings - Fork 154
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into license-plus
- Loading branch information
Showing
28 changed files
with
955 additions
and
448 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,223 @@ | ||
# SPDX-FileCopyrightText: 2019 Free Software Foundation Europe e.V. <https://fsfe.org> | ||
# SPDX-FileCopyrightText: 2022 Carmen Bianca Bakker <carmenbianca@fsfe.org> | ||
# | ||
# SPDX-License-Identifier: GPL-3.0-or-later | ||
|
||
name: Docker Images - test, build and push | ||
|
||
on: | ||
push: | ||
# Tags will carry the tag's version, e.g. v1.2.3: | ||
# - 1.2.3 | ||
# - 1.2 | ||
# - 1 (not with 0 though) | ||
# - latest" | ||
tags: | ||
- "v*.*.*" | ||
# Main branch will be "dev" | ||
branches: | ||
- main | ||
# TODO: remove as soon as master -> main branch | ||
- master | ||
# On PRs only do tests | ||
pull_request: | ||
|
||
jobs: | ||
# =========================================================================== | ||
# Test Docker images | ||
# =========================================================================== | ||
docker_test: | ||
name: Test the docker images | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
# Dockerfile | ||
- name: Build Dockerfile | ||
run: | | ||
docker build -t reuse . | ||
- name: Run Docker image | ||
run: | | ||
docker run -v "$(pwd):/data" reuse | ||
# Dockerfile-extra | ||
- name: Build Dockerfile-extra | ||
run: | | ||
docker build -t reuse-extra --file Dockerfile-extra . | ||
- name: Run Docker extra image | ||
run: | | ||
docker run -v "$(pwd):/data" reuse-extra | ||
# Dockerfile-debian | ||
- name: Build Dockerfile-debian | ||
run: | | ||
docker build -t reuse-debian --file Dockerfile-debian . | ||
- name: Run Docker debian image | ||
run: | | ||
docker run -v "$(pwd):/data" reuse-debian | ||
# =========================================================================== | ||
# Build and push Docker images for tagged releases | ||
# =========================================================================== | ||
docker_push_tag: | ||
name: Push Docker image for tags to Docker Hub | ||
runs-on: ubuntu-latest | ||
# Depends on successful Docker build/test | ||
needs: | ||
- docker_test | ||
if: | ||
${{ github.event_name != 'pull_request' && startsWith(github.ref, | ||
'refs/tags/v') }} | ||
steps: | ||
- name: Check out the repo | ||
uses: actions/checkout@v2 | ||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v1 | ||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v1 | ||
|
||
- name: Log in to Docker Hub | ||
uses: docker/login-action@v1 | ||
with: | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_TOKEN }} | ||
|
||
# Dockerfile | ||
- name: Default Docker - set metadata | ||
id: meta_default | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=semver,pattern={{version}} | ||
type=semver,pattern={{major}}.{{minor}} | ||
type=semver,pattern={{major}},enable=${{ !startsWith(github.ref, 'refs/tags/v0.') }} | ||
- name: Default Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_default.outputs.tags }} | ||
labels: ${{ steps.meta_default.outputs.labels }} | ||
|
||
# Dockerfile-extra | ||
- name: Extra Docker - set metadata | ||
id: meta_extra | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=semver,pattern={{version}} | ||
type=semver,pattern={{major}}.{{minor}} | ||
type=semver,pattern={{major}},enable=${{ !startsWith(github.ref, 'refs/tags/v0.') }} | ||
flavor: | | ||
suffix=-extra,onlatest=true | ||
- name: Extra Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: Dockerfile-extra | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_extra.outputs.tags }} | ||
labels: ${{ steps.meta_extra.outputs.labels }} | ||
|
||
# Dockerfile-debian | ||
- name: Debian Docker - set metadata | ||
id: meta_debian | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=semver,pattern={{version}} | ||
type=semver,pattern={{major}}.{{minor}} | ||
type=semver,pattern={{major}},enable=${{ !startsWith(github.ref, 'refs/tags/v0.') }} | ||
flavor: | | ||
suffix=-debian,onlatest=true | ||
- name: Debian Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: Dockerfile-debian | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_debian.outputs.tags }} | ||
labels: ${{ steps.meta_debian.outputs.labels }} | ||
|
||
# =========================================================================== | ||
# Build and push Docker images for main branch updated (dev tag) | ||
# =========================================================================== | ||
docker_push_dev: | ||
name: Push Docker image for main branch to Docker Hub | ||
runs-on: ubuntu-latest | ||
# Depends on successful Docker build/test | ||
needs: | ||
- docker_test | ||
# TODO: remove master when we switched to main | ||
if: | ||
${{ github.event_name != 'pull_request' && ( github.ref == | ||
'refs/heads/main' || github.ref == 'refs/heads/master' ) }} | ||
steps: | ||
- name: Check out the repo | ||
uses: actions/checkout@v2 | ||
- name: Set up QEMU | ||
uses: docker/setup-qemu-action@v1 | ||
- name: Set up Docker Buildx | ||
uses: docker/setup-buildx-action@v1 | ||
|
||
- name: Log in to Docker Hub | ||
uses: docker/login-action@v1 | ||
with: | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_TOKEN }} | ||
|
||
# Dockerfile | ||
- name: Default Docker - set metadata | ||
id: meta_default | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=raw,value=dev | ||
- name: Default Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_default.outputs.tags }} | ||
labels: ${{ steps.meta_default.outputs.labels }} | ||
|
||
# Dockerfile-extra | ||
- name: Extra Docker - set metadata | ||
id: meta_extra | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=raw,value=dev-extra | ||
- name: Extra Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: Dockerfile-extra | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_extra.outputs.tags }} | ||
labels: ${{ steps.meta_extra.outputs.labels }} | ||
|
||
# Dockerfile-debian | ||
- name: Debian Docker - set metadata | ||
id: meta_debian | ||
uses: docker/metadata-action@v3 | ||
with: | ||
images: fsfe/reuse | ||
tags: | | ||
type=raw,value=dev-debian | ||
- name: Debian Docker - build and push | ||
uses: docker/build-push-action@v2 | ||
with: | ||
context: . | ||
file: Dockerfile-debian | ||
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
tags: ${{ steps.meta_debian.outputs.tags }} | ||
labels: ${{ steps.meta_debian.outputs.labels }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# SPDX-FileCopyrightText: 2022 Carmen Bianca Bakker <carmenbianca@fsfe.org> | ||
# | ||
# SPDX-License-Identifier: GPL-3.0-or-later | ||
|
||
name: Prettier | ||
|
||
on: [push, pull_request] | ||
|
||
jobs: | ||
prettier: | ||
runs-on: ubuntu-latest | ||
container: node:latest | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Run prettier | ||
run: npx prettier --check . |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.