Skip to content

docs: restructure navigation into Configuration/Deployment/API/Operations/Background #10881

docs: restructure navigation into Configuration/Deployment/API/Operations/Background

docs: restructure navigation into Configuration/Deployment/API/Operations/Background #10881

Workflow file for this run

---
name: 'Build Docker images'
on:
push:
branches:
- master
tags:
- 'v*'
pull_request:
branches:
- master
# cancel build action if superseded by new commit on same branch
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
# deny-all default; each job below grants only the scopes it needs
permissions: {}
jobs:
docker:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
with:
persist-credentials: false
- name: Set version params
id: version
shell: bash
run: |
echo "git_commit=$(echo ${GITHUB_SHA})" >> $GITHUB_OUTPUT
echo "git_branch=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_OUTPUT
echo "git_version=$(git name-rev --tags --name-only $(git rev-parse HEAD))" >> $GITHUB_OUTPUT
- uses: actions-ecosystem/action-get-latest-tag@b7c32daec3395a9616f88548363a42652b22d435 # v1
id: get-latest-tag
with:
semver_only: true
- name: Print version params
env:
GIT_COMMIT: ${{ steps.version.outputs.git_commit }}
GIT_BRANCH: ${{ steps.version.outputs.git_branch }}
GIT_VERSION: ${{ steps.version.outputs.git_version }}
LATEST_TAG: ${{ steps.get-latest-tag.outputs.tag }}
THIS_TAG: ${{ github.ref }}
run: |
echo "Commit: ${GIT_COMMIT}"
echo "Branch: ${GIT_BRANCH}"
echo "Version: ${GIT_VERSION}"
echo "Latest tag: ${LATEST_TAG}"
echo "This tag: ${THIS_TAG}"
- name: Docker meta
id: docker_meta
uses: docker/metadata-action@dc802804100637a589fabce1cb79ff13a1411302 # v6
with:
images: nutsfoundation/nuts-node
tags: |
# generate 'master' tag for the master branch
type=ref,event=branch,enable={{is_default_branch}},prefix=
# generate 5.2.1 tag
type=semver,pattern={{version}}
flavor: |
latest=${{ steps.version.outputs.git_version == steps.get-latest-tag.outputs.tag }}
- name: Set up QEMU
uses: docker/setup-qemu-action@96fe6ef7f33517b61c61be40b68a1882f3264fb8 # v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@37fe631027851001ddb9b187196cc803df7f5f0e # v4
- name: Login to Docker Hub
if: ${{ github.event_name != 'pull_request' }}
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7
with:
context: .
file: Dockerfile
# On PRs we only verify the build doesn't break; arm64 under QEMU
# is ~5-8x slower and adds no signal there. Multi-arch on push/tag.
platforms: ${{ github.event_name == 'pull_request' && 'linux/amd64' || 'linux/amd64,linux/arm64' }}
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.docker_meta.outputs.tags }}
build-args: |
GIT_VERSION=${{ steps.version.outputs.git_version }}
GIT_COMMIT=${{ steps.version.outputs.git_commit }}
GIT_BRANCH=${{ steps.version.outputs.git_branch }}
- name: Build and push development image
if: ${{ github.event_name != 'pull_request' && github.ref == 'refs/heads/master'}}
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7
with:
context: development/dev-image
push: true
platforms: linux/amd64,linux/arm64
tags: nutsfoundation/nuts-node:dev