Skip to content

Commit ab79c11

Browse files
committed
migrate CICD-Pipeline to GitHub-Actions
see: https://gardener.github.io/cc-utils/github_actions.html
1 parent 2d04d8d commit ab79c11

8 files changed

Lines changed: 182 additions & 115 deletions

File tree

.ci/component_descriptor

Lines changed: 0 additions & 4 deletions
This file was deleted.

.ci/pipeline_definitions

Lines changed: 0 additions & 111 deletions
This file was deleted.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: Prepare Release
2+
3+
runs:
4+
using: composite
5+
steps:
6+
- uses: actions/setup-go@v5
7+
with:
8+
go-version: '1.24'
9+
- name: make-generate
10+
shell: bash
11+
run: |
12+
set -eu
13+
make generate

.github/workflows/build.yaml

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
name: Build
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
mode:
7+
required: true
8+
type: string
9+
default: snapshot
10+
description: |
11+
the mode to use. either `snapshot` or `release`. Will affect effective version, as well
12+
as target-oci-registry.
13+
14+
jobs:
15+
prepare:
16+
uses: gardener/cc-utils/.github/workflows/prepare.yaml@master
17+
with:
18+
mode: ${{ inputs.mode }}
19+
version-commit-callback-action-path: .github/actions/prepare-release
20+
permissions:
21+
contents: read
22+
23+
oci-images:
24+
name: Build OCI-Images
25+
needs:
26+
- prepare
27+
permissions:
28+
contents: read
29+
packages: write
30+
id-token: write
31+
secrets: inherit
32+
uses: gardener/cc-utils/.github/workflows/oci-ocm.yaml@master
33+
strategy:
34+
matrix:
35+
args:
36+
- name: gardener-extension-shoot-networking-problemdetector
37+
target: gardener-extension-shoot-networking-problemdetector
38+
oci-repository: gardener/extensions/shoot-networking-problemdetector
39+
ocm-labels:
40+
name: gardener.cloud/cve-categorisation
41+
value:
42+
network_exposure: protected
43+
authentication_enforced: false
44+
user_interaction: gardener-operator
45+
confidentiality_requirement: low
46+
integrity_requirement: low
47+
availability_requirement: low
48+
with:
49+
name: ${{ matrix.args.name }}
50+
version: ${{ needs.prepare.outputs.version }}
51+
target: ${{ matrix.args.target }}
52+
oci-registry: ${{ needs.prepare.outputs.oci-registry }}
53+
oci-repository: ${{ matrix.args.oci-repository }}
54+
oci-platforms: linux/amd64,linux/arm64
55+
ocm-labels: ${{ toJSON(matrix.args.ocm-labels) }}
56+
extra-tags: latest
57+
58+
helmcharts:
59+
name: Build Helmcharts
60+
needs:
61+
- prepare
62+
- oci-images
63+
permissions:
64+
contents: read
65+
packages: write
66+
id-token: write
67+
uses: gardener/cc-utils/.github/workflows/helmchart-ocm.yaml@master
68+
strategy:
69+
matrix:
70+
args:
71+
- name: shoot-networking-problemdetector
72+
dir: charts/gardener-extension-shoot-networking-problemdetector
73+
oci-repository: charts/gardener/extensions
74+
ocm-mappings:
75+
- ref: ocm-resource:gardener-extension-shoot-networking-problemdetector.repository
76+
attribute: image.repository
77+
- ref: ocm-resource:gardener-extension-shoot-networking-problemdetector.tag
78+
attribute: image.tag
79+
with:
80+
name: ${{ matrix.args.name }}
81+
dir: ${{ matrix.args.dir }}
82+
oci-registry: ${{ needs.prepare.outputs.oci-registry }}
83+
oci-repository: ${{ matrix.args.oci-repository }}
84+
ocm-mappings: ${{ toJSON(matrix.args.ocm-mappings) }}
85+
86+
verify:
87+
uses: gardener/cc-utils/.github/workflows/sastlint-ocm@sastlinting-workflow
88+
with:
89+
linter: gosec
90+
run: verify

.github/workflows/non-release.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: Build
2+
on:
3+
push:
4+
pull_request:
5+
6+
jobs:
7+
build:
8+
uses: ./.github/workflows/build.yaml
9+
with:
10+
mode: snapshot
11+
secrets: inherit
12+
permissions:
13+
contents: write
14+
packages: write
15+
id-token: write
16+
17+
component-descriptor:
18+
uses: gardener/cc-utils/.github/workflows/post-build.yaml@master
19+
needs:
20+
- build
21+
secrets: inherit
22+
permissions:
23+
id-token: write
24+
contents: write

.github/workflows/release.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Release
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
next-version:
6+
type: choice
7+
options:
8+
- bump-minor
9+
- bump-patch
10+
11+
12+
jobs:
13+
build:
14+
uses: ./.github/workflows/build.yaml
15+
permissions:
16+
contents: write
17+
id-token: write
18+
packages: write
19+
with:
20+
mode: release
21+
22+
release-to-github-and-bump:
23+
uses: gardener/cc-utils/.github/workflows/release.yaml@master
24+
needs:
25+
- build
26+
secrets: inherit
27+
permissions:
28+
contents: write
29+
id-token: write
30+
packages: write
31+
with:
32+
release-commit-target: branch
33+
next-version: ${{ inputs.next-version }}
34+
next-version-callback-action-path: .github/actions/prepare-release
35+
slack-channel-id: C9CEBQPGE # #sap-tech-gardener
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: Create Upgrade-Pull-Requests
2+
on:
3+
schedule:
4+
- cron: '*/10 * * * *'
5+
workflow_dispatch:
6+
7+
jobs:
8+
upgrade-pullrequests:
9+
uses: gardener/cc-utils/.github/workflows/upgrade-dependencies.yaml@master
10+
secrets: inherit
11+
permissions:
12+
contents: write
13+
pull-requests: write

.ocm/base-component.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
main-source:
2+
labels:
3+
- name: cloud.gardener.cnudie/dso/scanning-hints/source_analysis/v1
4+
value:
5+
policy: skip
6+
comment: |
7+
we use gosec for sast scanning. See attached log.

0 commit comments

Comments
 (0)