constellation/.github/workflows/build-micro-service-manual.yml
Fabian Kammel 085f548333 GitHub action pin-by-hash & dependabot (#283)
* remove Sunday and Monday morning runs, little value
* run test lint on main, as we do for all linters
* fixup outdated instructions
* use version hash instead of tags
* use dependabot for github actions
Signed-off-by: Fabian Kammel <fk@edgeless.systems>
2022-07-20 10:48:01 +02:00

60 lines
1.9 KiB
YAML

name: Build micro-service Manual
on:
workflow_dispatch:
inputs:
microService:
description: 'Name of the micro-service image to build'
type: choice
options:
- 'access-manager'
- 'join-service'
- 'kmsserver'
- 'verification-service'
required: true
default: 'access-manager'
imageTag:
description: 'Container image tag'
required: true
default: 'manual-build'
version:
description: 'Version of the image to build'
required: true
default: '0.0.0'
jobs:
build-micro-service:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Check out repository
id: checkout
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
# choose the correct Dockerfile depending on what micro-service is being build
- name: Set Dockerfile variable
id: set-variable
run: |
case "${{ inputs.microService }}" in
"access-manager" )
echo "microServiceDockerfile=access_manager/Dockerfile" >> $GITHUB_ENV ;;
"join-service" )
echo "microServiceDockerfile=joinservice/Dockerfile" >> $GITHUB_ENV ;;
"kmsserver" )
echo "microServiceDockerfile=kms/Dockerfile" >> $GITHUB_ENV ;;
"verification-service" )
echo "microServiceDockerfile=verify/Dockerfile" >> $GITHUB_ENV ;;
esac
- name: Build and upload container image
id: build-and-upload
uses: ./.github/actions/build_micro_service
with:
name: ${{ inputs.microService }}
projectVersion: ${{ inputs.version }}
dockerfile: ${{ env.microServiceDockerfile }}
pushTag: ${{ inputs.imageTag }}
githubToken: ${{ secrets.GITHUB_TOKEN }}