-
Notifications
You must be signed in to change notification settings - Fork 0
77 lines (77 loc) · 4.06 KB
/
starter.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
name: workflows starter
# env: is empty, see setup-env and the outputs there
on:
push: {}
jobs:
setup_workflow_env:
runs-on: ubuntu-latest
# Optionally specify the environment that should be used on this branch
# environment: production
outputs:
# It seems you have to specify the environment twice (passed to reusable workflow)
# as there is no way yet to get the active environment
# environment: production
# or see the switch on ref_name script below
environment: ${{ steps.get_environment_from_git_ref.outputs.environment }}
image_tagged: expps
registry_root: ghcr.io/acdh-oeaw/
default_port: "8984"
herokuish_base_image: ghcr.io/acdh-oeaw/herokuish-for-cypress/main:latest-22
BUILDPACK_URL: https://github.com/simar0at/heroku-buildpack-basex
APP_NAME: expps
# This together with the branch name is also used as the namespace to deploy to
APP_ROOT: "/expps"
# SERVICE_ID: "99999" # Better use GtiHub environment variables for this
# PUBLIC_URL: "https://some-stuff.acdh-ch-dev.oeaw.ac.at" # Better use GitHub environment variables for this
POSTGRES_ENABLED: "false" # needs to be set to true to enable a postgres db installed next to the deployed app
# You should not need to have to change anything below this line
#-----------------------------------------------------------------------------------------------------
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/master" ]; then
echo "environment=production"
echo "environment=production" >> $GITHUB_OUTPUT
else
echo "environment=review-${{ github.ref_name }}"
echo "environment=review-${{ github.ref_name }}" >> $GITHUB_OUTPUT
fi
_1:
needs: [setup_workflow_env]
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/build-herokuish-and-push-to-registry.yaml@main
secrets: inherit
# if you run this outside of acdh-oeaw yo uneed to specify every secret you want to pass by name
with:
environment: ${{ needs.setup_workflow_env.outputs.environment}}
BUILDPACK_URL: ${{ needs.setup_workflow_env.outputs.BUILDPACK_URL }}
registry_root: ${{ needs.setup_workflow_env.outputs.registry_root }}
image_tagged: ${{ needs.setup_workflow_env.outputs.image_tagged }}
default_port: ${{ needs.setup_workflow_env.outputs.default_port }}
_2:
needs: [setup_workflow_env]
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/herokuish-tests-db-url.yaml@main
secrets: inherit
# if you run this outside of acdh-oeaw yo uneed to specify every secret you want to pass by name
with:
environment: ${{ needs.setup_workflow_env.outputs.environment}}
BUILDPACK_URL: ${{ needs.setup_workflow_env.outputs.BUILDPACK_URL }}
registry_root: ${{ needs.setup_workflow_env.outputs.registry_root }}
image_tagged: ${{ needs.setup_workflow_env.outputs.image_tagged }}
default_port: ${{ needs.setup_workflow_env.outputs.default_port }}
herokuish_base_image: ${{ needs.setup_workflow_env.outputs.herokuish_base_image }}
POSTGRES_ENABLED: ${{ needs.setup_workflow_env.outputs.POSTGRES_ENABLED }}
_3:
needs: [setup_workflow_env, _1, _2]
uses: acdh-oeaw/gl-autodevops-minimal-port/.github/workflows/deploy-cluster-2.yml@main
secrets: inherit
with:
environment: ${{ needs.setup_workflow_env.outputs.environment}}
DOCKER_TAG: ${{ needs.setup_workflow_env.outputs.registry_root }}${{ needs.setup_workflow_env.outputs.image_tagged }}
APP_NAME: ${{ needs.setup_workflow_env.outputs.APP_NAME }}
APP_ROOT: ${{ needs.setup_workflow_env.outputs.APP_ROOT }}
SERVICE_ID: ${{ needs.setup_workflow_env.outputs.SERVICE_ID }}
PUBLIC_URL: ${{ needs.setup_workflow_env.outputs.PUBLIC_URL }}
POSTGRES_ENABLED: ${{ needs.setup_workflow_env.outputs.POSTGRES_ENABLED == 'true'}}
default_port: "${{ needs.setup_workflow_env.outputs.default_port}}"