Skip to content

Update UI: app, client, user #7

Update UI: app, client, user

Update UI: app, client, user #7

Workflow file for this run

name: Build and Release
on:
workflow_dispatch:
push:
branches:
- main
tags:
- v*.**
pull_request:
types: [opened, synchronize, reopened]
jobs:
docker-build:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v')
steps:
- uses: actions/checkout@master
- name: Build docker image
run: |
git_hash=$(git rev-parse --short "$GITHUB_SHA")
git_branch=${GITHUB_REF#refs/heads/}
# determine version from tag
export VERSION=$(echo "${GITHUB_REF}" | cut -d "/" -f3)
if [[ $VERSION != v* ]]
then
export VERSION="git-${git_branch}-${git_hash}"
echo "Building version-less (${VERSION})"
else
export VERSION=${VERSION:1:${#VERSION}}
echo "Building as ${VERSION}"
fi
echo "##[set-output name=version;]$VERSION"
docker build -t ghcr.io/fraunhofer-aisec/omejdn-ui:dev .
id: build_docker
- name: Push Docker Image
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
docker push ghcr.io/fraunhofer-aisec/omejdn-ui:dev
if: github.ref == 'refs/heads/main'
- name: Push branch docker image
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
git_branch=${GITHUB_REF#refs/heads/}
docker tag ghcr.io/fraunhofer-aisec/omejdn-ui:dev ghcr.io/fraunhofer-aisec/omejdn-ui:$git_branch
docker push ghcr.io/fraunhofer-aisec/omejdn-ui:$git_branch
if: (github.ref != 'refs/heads/main') && startsWith(github.ref, 'refs/heads')
- name: Push release docker image
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
docker tag ghcr.io/fraunhofer-aisec/omejdn-ui:dev ghcr.io/fraunhofer-aisec/omejdn-ui:${{ steps.build_docker.outputs.version }}
docker tag ghcr.io/fraunhofer-aisec/omejdn-ui:dev ghcr.io/fraunhofer-aisec/omejdn-ui:latest
docker push ghcr.io/fraunhofer-aisec/omejdn-ui:${{ steps.build_docker.outputs.version }}
docker push ghcr.io/fraunhofer-aisec/omejdn-ui:latest
if: startsWith(github.ref, 'refs/tags/v')
- name: "Create Release"
if: startsWith(github.ref, 'refs/tags/v')
id: create_release
uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ steps.build_docker.outputs.version }}
draft: false
prerelease: false
- name: "Upload Release SBOM"
if: startsWith(github.ref, 'refs/tags/v')
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: bom.xml
asset_name: bom-${{ steps.build_docker.outputs.version }}.xml
asset_content_type: application/xml