Skip to content

Commit 7ad8710

Browse files
committed
chore(ci): add deployment workflow
1 parent efe8889 commit 7ad8710

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

.github/workflows/deploy.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Deploy
2+
3+
on: [ push, workflow_dispatch ]
4+
5+
jobs:
6+
7+
affected:
8+
uses: lunarmodules/.github/.github/workflows/list_affected_rockspecs.yml@main
9+
10+
build:
11+
needs: affected
12+
if: ${{ needs.affected.outputs.rockspecs }}
13+
uses: lunarmodules/.github/.github/workflows/test_build_rock.yml@main
14+
with:
15+
rockspecs: ${{ needs.affected.outputs.rockspecs }}
16+
17+
upload:
18+
needs: [ affected, build ]
19+
# Only run upload if:
20+
# 1. We are on the canonical repository (no uploads from forks)
21+
# 2. The current commit is either tagged or on the default branch (the workflow will upload dev/scm rockspecs any
22+
# time they are touched, tagged ones whenever the edited rockspec and tag match)
23+
# 3. Some rockspecs were changed — this implies the commit changing the rockspec is the same one that gets tagged
24+
if: >-
25+
${{
26+
github.repository == 'lunarmodules/cluacov' &&
27+
( github.ref_name == 'master' || startsWith(github.ref, 'refs/tags/') ) &&
28+
needs.affected.outputs.rockspecs
29+
}}
30+
uses: lunarmodules/.github/.github/workflows/upload_to_luarocks.yml@main
31+
with:
32+
rockspecs: ${{ needs.affected.outputs.rockspecs }}
33+
secrets:
34+
apikey: ${{ secrets.LUAROCKS_APIKEY }}
35+
36+
docker:
37+
if: >-
38+
${{
39+
github.repository == 'lunarmodules/cluacov' &&
40+
( github.ref_name == 'master' || startsWith(github.ref, 'refs/tags/') )
41+
}}
42+
uses: lunarmodules/.github/.github/workflows/docker_ghcr_deploy.yml@main
43+
with:
44+
username: ${{ github.actor }}
45+
tag: ${{ github.ref_name }}
46+
secrets:
47+
token: ${{ secrets.GHCR_PAT }}

0 commit comments

Comments
 (0)