Skip to content

Commit 2ddbda6

Browse files
committed
Split generator CI
Split the generator CI into a separate CI flow to avoid mixing CI caches. Signed-off-by: SuperQ <superq@gmail.com>
1 parent 717624a commit 2ddbda6

2 files changed

Lines changed: 75 additions & 64 deletions

File tree

.github/workflows/ci.yml

Lines changed: 0 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -40,70 +40,6 @@ jobs:
4040
- run: go install github.com/google/go-jsonnet/cmd/jsonnetfmt@latest
4141
- run: make -C snmp-mixin lint build
4242

43-
generator:
44-
name: Build generator
45-
runs-on: ubuntu-latest
46-
container:
47-
# Whenever the Go version is updated here, .promu.yml
48-
# should also be updated.
49-
image: quay.io/prometheus/golang-builder:1.26-base
50-
defaults:
51-
run:
52-
working-directory: ./generator
53-
steps:
54-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
55-
with:
56-
persist-credentials: false
57-
- uses: prometheus/promci-setup@5af30ba8c199a91d6c04ebdc3c48e630e355f62d # v0.1.0
58-
- run: apt-get update
59-
- run: apt-get -y install build-essential diffutils libsnmp-dev p7zip-full
60-
- run: make mibs
61-
- run: make generator
62-
- run: make parse_errors
63-
- run: make generate
64-
- run: git diff --exit-code
65-
66-
publish_generator_main:
67-
name: Publish generator main branch artifacts
68-
runs-on: ubuntu-latest
69-
needs: [test_go, generator]
70-
defaults:
71-
run:
72-
working-directory: ./generator
73-
if: |
74-
(github.event_name == 'push' && github.event.ref == 'refs/heads/main')
75-
steps:
76-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
77-
with:
78-
persist-credentials: false
79-
- uses: prometheus/promci/publish_main@769ee18070cd21cfc2a24fa912349fd3e48dee58 # v0.6.0
80-
with:
81-
docker_hub_login: ${{ secrets.docker_hub_login }}
82-
docker_hub_password: ${{ secrets.docker_hub_password }}
83-
quay_io_login: ${{ secrets.quay_io_login }}
84-
quay_io_password: ${{ secrets.quay_io_password }}
85-
86-
publish_generator_release:
87-
name: Publish generator release artefacts
88-
runs-on: ubuntu-latest
89-
needs: [test_go, generator]
90-
defaults:
91-
run:
92-
working-directory: ./generator
93-
if: |
94-
(github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v'))
95-
steps:
96-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
97-
with:
98-
persist-credentials: false
99-
- uses: prometheus/promci/publish_release@769ee18070cd21cfc2a24fa912349fd3e48dee58 # v0.6.0
100-
with:
101-
docker_hub_login: ${{ secrets.docker_hub_login }}
102-
docker_hub_password: ${{ secrets.docker_hub_password }}
103-
quay_io_login: ${{ secrets.quay_io_login }}
104-
quay_io_password: ${{ secrets.quay_io_password }}
105-
github_token: ${{ secrets.PROMBOT_GITHUB_TOKEN }}
106-
10743
build:
10844
name: Build snmp_exporter
10945
runs-on: ubuntu-latest

.github/workflows/generator.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
name: Generator
3+
on:
4+
pull_request:
5+
push:
6+
branches: [main, 'release-*']
7+
tags: ['v*']
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
generator:
14+
name: Build generator
15+
runs-on: ubuntu-latest
16+
container:
17+
# Whenever the Go version is updated here, .promu.yml
18+
# should also be updated.
19+
image: quay.io/prometheus/golang-builder:1.26-base
20+
defaults:
21+
run:
22+
working-directory: ./generator
23+
steps:
24+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
25+
with:
26+
persist-credentials: false
27+
- uses: prometheus/promci-setup@5af30ba8c199a91d6c04ebdc3c48e630e355f62d # v0.1.0
28+
- run: apt-get update
29+
- run: apt-get -y install build-essential diffutils libsnmp-dev p7zip-full
30+
- run: make mibs
31+
- run: make generator
32+
- run: make parse_errors
33+
- run: make generate
34+
- run: git diff --exit-code
35+
36+
publish_generator_main:
37+
name: Publish generator main branch artifacts
38+
runs-on: ubuntu-latest
39+
needs: [generator]
40+
defaults:
41+
run:
42+
working-directory: ./generator
43+
if: |
44+
(github.event_name == 'push' && github.event.ref == 'refs/heads/main')
45+
steps:
46+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
47+
with:
48+
persist-credentials: false
49+
- uses: prometheus/promci/publish_main@769ee18070cd21cfc2a24fa912349fd3e48dee58 # v0.6.0
50+
with:
51+
docker_hub_login: ${{ secrets.docker_hub_login }}
52+
docker_hub_password: ${{ secrets.docker_hub_password }}
53+
quay_io_login: ${{ secrets.quay_io_login }}
54+
quay_io_password: ${{ secrets.quay_io_password }}
55+
56+
publish_generator_release:
57+
name: Publish generator release artefacts
58+
runs-on: ubuntu-latest
59+
needs: [generator]
60+
defaults:
61+
run:
62+
working-directory: ./generator
63+
if: |
64+
(github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v'))
65+
steps:
66+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
67+
with:
68+
persist-credentials: false
69+
- uses: prometheus/promci/publish_release@769ee18070cd21cfc2a24fa912349fd3e48dee58 # v0.6.0
70+
with:
71+
docker_hub_login: ${{ secrets.docker_hub_login }}
72+
docker_hub_password: ${{ secrets.docker_hub_password }}
73+
quay_io_login: ${{ secrets.quay_io_login }}
74+
quay_io_password: ${{ secrets.quay_io_password }}
75+
github_token: ${{ secrets.PROMBOT_GITHUB_TOKEN }}

0 commit comments

Comments
 (0)