netmaker #347
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
name: netmaker | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- netmaker/* | |
- .github/workflows/netmaker.yml | |
workflow_dispatch: | |
schedule: | |
- cron: "0 8 * * 1" | |
env: | |
BUILD_VERSION: "v0.21.2" | |
DOCKER_CLI_EXPERIMENTAL: enabled | |
REPOSITORY: ${{ github.actor }}/${{ github.workflow }} | |
permissions: read-all | |
jobs: | |
deploy: | |
runs-on: ubuntu-22.04 | |
permissions: | |
packages: write | |
steps: | |
- name: Harden Runner | |
uses: step-security/harden-runner@eb238b55efaa70779f274895e782ed17c84f2895 # v1 | |
with: | |
egress-policy: block | |
disable-telemetry: true | |
allowed-endpoints: | |
95s5acprodeus1file6.blob.core.windows.net:443 | |
api.github.com:443 | |
artifactcache.actions.githubusercontent.com:443 | |
auth.docker.io:443 | |
codeload.github.com:443 | |
dl-cdn.alpinelinux.org:443 | |
ghcr.io:443 | |
github.com:443 | |
production.cloudflare.docker.com:443 | |
proxy.golang.org:443 | |
registry-1.docker.io:443 | |
storage.googleapis.com:443 | |
- name: Source checkout | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v2.4.0 | |
- name: Setup QEMU | |
id: qemu | |
uses: docker/setup-qemu-action@68827325e0b33c7199eb31dd4e31fbe9023e06e3 # v1.2.0 | |
- name: Setup Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v1 | |
- name: Set Docker metadata | |
id: docker_meta | |
uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v3 | |
with: | |
images: ${{ env.REPOSITORY }} | |
labels: | | |
org.opencontainers.image.version=${{ env.BUILD_VERSION }} | |
org.opencontainers.image.revision=${{ github.sha }} | |
org.opencontainers.image.title=${{ env.REPOSITORY }} | |
- name: GitHub login | |
if: ${{ github.event_name != 'pull_request' }} | |
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v1.12.0 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: DockerHub login | |
if: ${{ github.event_name != 'pull_request' }} | |
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v1.12.0 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Build and push | |
uses: docker/build-push-action@4a13e500e55cf31b7a5d59a38ab2040ab0f42f56 # v2.8.0 | |
with: | |
push: ${{ github.event_name != 'pull_request' }} | |
context: ${{ github.workflow }} | |
#platforms: linux/amd64,linux/arm64,linux/ppc64le,linux/s390x | |
#platforms: linux/amd64,linux/arm64 | |
#platforms: linux/amd64 | |
#platforms: linux/amd64,linux/386,linux/arm64,linux/arm/v7,linux/arm/v6,linux/ppc64le,linux/s390x | |
platforms: linux/amd64,linux/386,linux/arm64,linux/arm/v7,linux/arm/v6,linux/s390x | |
#platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6,linux/s390x | |
build-args: | | |
BUILD_VERSION | |
sbom: true | |
provenance: true | |
cache-from: type=gha, scope=${{ github.workflow }} | |
cache-to: type=gha, scope=${{ github.workflow }} | |
labels: ${{ steps.docker_meta.outputs.labels }} | |
tags: | | |
docker.io/${{ env.REPOSITORY }}:${{ env.BUILD_VERSION }} | |
docker.io/${{ env.REPOSITORY }}:latest | |
ghcr.io/${{ env.REPOSITORY }}:${{ env.BUILD_VERSION }} | |
ghcr.io/${{ env.REPOSITORY }}:latest |