4
4
push :
5
5
tags :
6
6
- ' v*'
7
-
7
+ schedule :
8
+ # Every day at midnight (UTC).
9
+ - cron : ' 0 0 * * *'
10
+ # Manual trigger through the UI for testing.
11
+ workflow_dispatch :
8
12
9
13
defaults :
10
14
run :
11
15
shell : bash
12
16
13
17
env :
14
- DOCKER_REPO : lightninglabs
15
- DOCKER_IMAGE : lightning-terminal
18
+ DOCKER_ORG : lightninglabs
19
+ DOCKER_REPO : lightning-terminal
20
+ NIGHTLY_DOCKER_REPO : lightning-terminal-nightly
21
+ # TODO(guggero): Change the branch to 'master' once the experimental branch is
22
+ # merged into master.
23
+ NIGHTLY_BRANCH_NAME : 0-19-staging
24
+ NIGHTLY_TAG_NAME : experimental-daily-testing
16
25
17
26
jobs :
18
27
main :
@@ -30,16 +39,29 @@ jobs:
30
39
username : ${{ secrets.DOCKER_USERNAME }}
31
40
password : ${{ secrets.DOCKER_API_KEY }}
32
41
42
+ # Make it possible to use different values for the version (used for git
43
+ # checkout) and the image tag (used for the docker image tag).
33
44
- name : Set env
34
- run : echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
45
+ run : |
46
+ echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
47
+ echo "IMAGE_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
48
+
49
+ # The daily/nightly build (or manual trigger) will always use the
50
+ # experimental branch and push to a different docker repo.
51
+ - name : Set daily tag
52
+ if : ${{ github.event.schedule == '0 0 * * *' || github.event_name == 'workflow_dispatch' }}
53
+ run : |
54
+ echo "RELEASE_VERSION=${{env.NIGHTLY_BRANCH_NAME}}" >> $GITHUB_ENV
55
+ echo "DOCKER_REPO=${{env.NIGHTLY_DOCKER_REPO}}" >> $GITHUB_ENV
56
+ echo "IMAGE_TAG=${{env.NIGHTLY_TAG_NAME}}-$(date -u +%Y%m%d)" >> $GITHUB_ENV
35
57
36
58
- name : Build and push default image
37
59
id : docker_build
38
60
uses :
lightninglabs/gh-actions/[email protected]
39
61
with :
40
62
push : true
41
63
platforms : linux/amd64,linux/arm64
42
- tags : " ${{ env.DOCKER_REPO }}/${{ env.DOCKER_IMAGE }}:${{ env.RELEASE_VERSION }}"
64
+ tags : " ${{ env.DOCKER_ORG }}/${{ env.DOCKER_REPO }}:${{ env.IMAGE_TAG }}"
43
65
build-args : checkout=${{ env.RELEASE_VERSION }}
44
66
45
67
- name : Build and push image with /lit path
48
70
with :
49
71
push : true
50
72
platforms : linux/amd64,linux/arm64
51
- tags : " ${{ env.DOCKER_REPO }}/${{ env.DOCKER_IMAGE }}:${{ env.RELEASE_VERSION }}-path-prefix"
73
+ tags : " ${{ env.DOCKER_ORG }}/${{ env.DOCKER_REPO }}:${{ env.IMAGE_TAG }}-path-prefix"
52
74
build-args : |
53
75
checkout=${{ env.RELEASE_VERSION }}
54
76
public_url=/lit
0 commit comments