removed Codemirror/XML Editor; excluded reference articles; removed w… #15
Workflow file for this run
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: workflows starter | |
on: | |
push: | |
tags: | |
- '**' | |
workflow_dispatch: {} | |
jobs: | |
setup_workflow_env: | |
runs-on: ubuntu-latest | |
outputs: | |
environment: ${{ steps.get_environment_from_git_ref.outputs.environment }} | |
environment_short: ${{ steps.get_environment_from_git_ref.outputs.environment_short }} | |
image_name: lioe-public-frontend | |
registry_root: ghcr.io/${{ github.repository }}/ | |
default_port: "5000" | |
fetch-depth: 10 | |
submodules: "true" | |
herokuish_base_image: ghcr.io/acdh-oeaw/herokuish-for-cypress/main:latest-22 | |
APP_NAME: lioe-public-frontend | |
APP_ROOT: "/" | |
#----------------------------------------------------------------------------------------------------- | |
steps: | |
- name: Get environment from git ref | |
id: get_environment_from_git_ref | |
run: | | |
echo "Running on branch ${{ github.ref_name }}" | |
if [ "${{ github.ref }}" = "refs/heads/main" ]; then | |
echo "environment=production" | |
echo "environment=production" >> $GITHUB_OUTPUT | |
echo "environment_short=prod" >> $GITHUB_OUTPUT | |
elif [[ "${{ github.ref }}" = refs/tags/*-release ]]; then | |
echo "environment=production" | |
echo "environment=production" >> $GITHUB_OUTPUT | |
echo "environment_short=prod" >> $GITHUB_OUTPUT | |
else | |
echo "environment=review/${{ github.ref_name }}" | |
echo "environment=review/${{ github.ref_name }}" >> $GITHUB_OUTPUT | |
echo "environment_short=$(echo -n ${{ github.ref_name }} | sed 's/feat\(ure\)\{0,1\}[_/]//' | tr '_' '-' | tr '[:upper:]' '[:lower:]' )" >> $GITHUB_OUTPUT | |
fi | |
generate_workflow_vars: | |
needs: [setup_workflow_env] | |
environment: | |
name: ${{ needs.setup_workflow_env.outputs.environment }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Generate PUBLIC_URL if not set | |
id: generate_public_url | |
run: | | |
kube_ingress_base_domain="${{ vars.KUBE_INGRESS_BASE_DOMAIN }}" | |
public_url="${{ needs.setup_workflow_env.outputs.PUBLIC_URL || vars.PUBLIC_URL }}" | |
if [ "${public_url}x" == 'x' ] | |
then public_url=https://${{ needs.setup_workflow_env.outputs.environment_short }}.${kube_ingress_base_domain} | |
fi | |
echo "public_url=$public_url" >> $GITHUB_OUTPUT | |
outputs: | |
PUBLIC_URL: ${{ steps.generate_public_url.outputs.public_url }} | |
_1: | |
needs: [setup_workflow_env, generate_workflow_vars] | |
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/build-cnb-and-push-to-registry.yaml@main | |
secrets: inherit | |
with: | |
environment: ${{ needs.setup_workflow_env.outputs.environment }} | |
registry_root: ${{ needs.setup_workflow_env.outputs.registry_root }} | |
image_name: ${{ needs.setup_workflow_env.outputs.image_name }} | |
source_image: ${{ needs.setup_workflow_env.outputs.source_image }} | |
default_port: ${{ needs.setup_workflow_env.outputs.default_port }} | |
PUBLIC_URL: ${{ needs.generate_workflow_vars.outputs.PUBLIC_URL }} | |
fetch-depth: ${{ fromJson(needs.setup_workflow_env.outputs.fetch-depth) }} | |
submodules: ${{ needs.setup_workflow_env.outputs.submodules }} | |
_2: | |
needs: [setup_workflow_env, generate_workflow_vars] | |
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/herokuish-tests-db-url.yaml@main | |
secrets: inherit | |
with: | |
environment: ${{ needs.setup_workflow_env.outputs.environment}} | |
registry_root: ${{ needs.setup_workflow_env.outputs.registry_root }} | |
image_name: ${{ needs.setup_workflow_env.outputs.image_name }} | |
default_port: ${{ needs.setup_workflow_env.outputs.default_port }} | |
fetch-depth: ${{ fromJson(needs.setup_workflow_env.outputs.fetch-depth) }} | |
herokuish_base_image: ${{ needs.setup_workflow_env.outputs.herokuish_base_image }} | |
POSTGRES_ENABLED: ${{ needs.setup_workflow_env.outputs.POSTGRES_ENABLED }} | |
PUBLIC_URL: ${{ needs.generate_workflow_vars.outputs.PUBLIC_URL }} | |
submodules: ${{ needs.setup_workflow_env.outputs.submodules }} | |
_3: | |
needs: [setup_workflow_env, generate_workflow_vars, _1, _2] | |
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/deploy.yml@main | |
secrets: inherit | |
with: | |
environment: ${{ needs.setup_workflow_env.outputs.environment}} | |
fetch-depth: ${{ fromJson(needs.setup_workflow_env.outputs.fetch-depth) }} | |
DOCKER_TAG: ${{ needs.setup_workflow_env.outputs.registry_root }}${{ needs.setup_workflow_env.outputs.image_name }} | |
APP_NAME: ${{ needs.setup_workflow_env.outputs.APP_NAME }}-${{ needs.setup_workflow_env.outputs.environment_short }} | |
APP_ROOT: ${{ needs.setup_workflow_env.outputs.APP_ROOT }} | |
SERVICE_ID: ${{ needs.setup_workflow_env.outputs.SERVICE_ID }} | |
PUBLIC_URL: ${{ needs.generate_workflow_vars.outputs.PUBLIC_URL }} | |
POSTGRES_ENABLED: ${{ needs.setup_workflow_env.outputs.POSTGRES_ENABLED == 'true'}} | |
default_port: "${{ needs.setup_workflow_env.outputs.default_port}}" | |
submodules: ${{ needs.setup_workflow_env.outputs.submodules }} |