File tree Expand file tree Collapse file tree 3 files changed +70
-52
lines changed Expand file tree Collapse file tree 3 files changed +70
-52
lines changed Original file line number Diff line number Diff line change
1
+ name : ci
2
+
3
+ # Build and run all tests.
4
+ # - Triggers: All pushes and pull requests on any branch.
5
+ # - Runs on: All repositories (including forks)
6
+
7
+ on :
8
+ push :
9
+ branches : ['**']
10
+
11
+ pull_request :
12
+ branches : ['**']
13
+
14
+ workflow_dispatch : # Allows manual dispatch
15
+
16
+ # Prevents overlapping runs of this workflow on the same branch.
17
+ # If multiple commits are pushed in quick succession, only the most recent run will complete.
18
+ concurrency :
19
+ group : ${{ github.workflow }}-${{ github.ref }}
20
+ cancel-in-progress : true
21
+
22
+ jobs :
23
+ build-and-test :
24
+ runs-on : ubuntu-latest
25
+ steps :
26
+ - name : Checkout
27
+ uses : actions/checkout@v4
28
+ with :
29
+ fetch-depth : 10
30
+
31
+ - name : Set up QEMU
32
+ uses : docker/setup-qemu-action@v3
33
+
34
+ - name : Install tools
35
+ shell : pwsh
36
+ run : |
37
+ Install-Module InvokeBuild -Force
38
+
39
+ - name : Build
40
+ shell : pwsh
41
+ run : |
42
+ Invoke-Build
43
+
44
+ - name : Test
45
+ shell : pwsh
46
+ run : |
47
+ Invoke-Build Test
48
+
49
+ - name : Upload logs
50
+ uses : actions/upload-artifact@v4
51
+ if : always()
52
+ with :
53
+ name : ci-logs-${{ github.run_id }}
54
+ path : generated/logs
55
+ retention-days : 7 # Short log retention for CI runs
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1
1
name : publish
2
2
3
+ # Build, test and publish official Docker images.
4
+ # - Triggers: Pushes to master and scheduled weekly runs.
5
+ # - Runs on: Only the official repository (FirebirdSQL/firebird-docker)
6
+
3
7
on :
4
8
push :
5
9
branches :
6
10
- master
11
+
7
12
schedule :
8
- - cron : " 0 0 * * 1"
9
- workflow_dispatch :
13
+ - cron : " 0 0 * * 1" # Every Monday at midnight
10
14
15
+ workflow_dispatch : # Allows manual dispatch
16
+
17
+ # Only a single instance of this workflow can be in execution at a given time.
11
18
concurrency :
12
19
group : ${{ github.workflow }}
13
20
14
21
jobs :
15
-
16
- build-test-publish :
22
+ build-test-and-publish :
17
23
if : ${{ github.repository == 'FirebirdSQL/firebird-docker' }}
18
24
runs-on : ubuntu-latest
19
-
20
25
steps :
21
26
- name : Checkout
22
27
uses : actions/checkout@v4
23
28
with :
24
29
fetch-depth : 10
25
30
31
+ - name : Set up QEMU
32
+ uses : docker/setup-qemu-action@v3
33
+
26
34
- name : Install tools
27
35
shell : pwsh
28
36
run : |
29
37
Install-Module InvokeBuild -Force
30
38
31
- - name : Set up QEMU
32
- uses : docker/setup-qemu-action@v3
33
-
34
39
- name : Build
35
40
shell : pwsh
36
41
run : |
@@ -52,13 +57,10 @@ jobs:
52
57
run : |
53
58
Invoke-Build Publish
54
59
55
- - name : Log out from Docker Hub
56
- run : |
57
- docker logout
58
-
59
60
- name : Upload logs
60
61
uses : actions/upload-artifact@v4
61
62
if : always()
62
63
with :
63
- name : logs
64
+ name : publish- logs-${{ github.run_id }}
64
65
path : generated/logs
66
+ retention-days : 30 # Longer log retention for published images
You can’t perform that action at this time.
0 commit comments