Skip to content

Workflow file for this run

name: Build and Publish Docker Image
on:
push:
tags:
- 'v3.*.*'
release:
types: [prereleased]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
env:
DOCKER_REPOSITORY: fiscobcos
jobs:
build:
runs-on: self-hosted-docker
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Get branch name
uses: nelonoel/[email protected]
- name: Fetch tag
run: |
git fetch --tags --force
- name: Get git tag
uses: little-core-labs/[email protected]
id: tag_data
with:
tagRegex: (.*) # Optional. Returns specified group text as tag name. Full tag string is returned if regex is not defined.
tagRegexGroup: 1 # Optional. Default is 1.
- name: Set docker tag from tag
id: set_docker_tag
run: |
[[ ${{github.ref}} == */tags/* ]] && DOCKER_TAG="${GIT_TAG_NAME}" || DOCKER_TAG="${BRANCH_NAME}"
DOCKER_TAG="fiscoorg/${DOCKER_REPOSITORY}:${DOCKER_TAG}"
echo "New docker tag is ${DOCKER_TAG}"
echo "::set-output name=docker_tag::$(echo ${DOCKER_TAG})"
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Build
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_FISCOPR_USER }}
password: ${{ secrets.DOCKER_FISCOPR_TOKEN }}
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
context: .
push: true
file: ./tools/.ci/Dockerfile
platforms: linux/amd64
tags: ${{ steps.set_docker_tag.outputs.docker_tag }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}