Skip to content

Commit bea1473

Browse files
authored
[internal] Switch to base images (#257)
Signed-off-by: v.oleynikov <[email protected]>
1 parent da45682 commit bea1473

35 files changed

+321
-466
lines changed

.github/workflows/build_dev.yml

Lines changed: 63 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ env:
1010
GOLANG_VERSION: ${{ vars.GOLANG_VERSION }}
1111
GOPROXY: ${{ secrets.GOPROXY }}
1212
SOURCE_REPO: ${{ secrets.SOURCE_REPO }}
13+
BASE_IMAGES_VERSION: "v0.4.3"
1314

1415
on:
1516
#pull_request:
@@ -20,43 +21,102 @@ on:
2021
branches:
2122
- main
2223

24+
defaults:
25+
run:
26+
shell: bash
27+
2328
jobs:
2429
lint:
2530
runs-on: [self-hosted, regular]
2631
continue-on-error: true
2732
name: Lint
2833
steps:
2934
- uses: actions/checkout@v4
35+
- name: Copy openapi/values_ce.yaml to openapi/values.yaml
36+
run: |
37+
if [ -f openapi/values_ce.yaml ]; then
38+
cp -f openapi/values_ce.yaml openapi/values.yaml
39+
fi
40+
- uses: deckhouse/modules-actions/lint@main
41+
env:
42+
DMT_METRICS_URL: ${{ secrets.DMT_METRICS_URL }}
43+
DMT_METRICS_TOKEN: ${{ secrets.DMT_METRICS_TOKEN }}
44+
- name: Copy openapi/values_ee.yaml to openapi/values.yaml
45+
run: |
46+
if [ -f openapi/values_ee.yaml ]; then
47+
cp -f openapi/values_ee.yaml openapi/values.yaml
48+
fi
3049
- uses: deckhouse/modules-actions/lint@main
3150
env:
3251
DMT_METRICS_URL: ${{ secrets.DMT_METRICS_URL }}
3352
DMT_METRICS_TOKEN: ${{ secrets.DMT_METRICS_TOKEN }}
3453

54+
set_edition:
55+
runs-on: [self-hosted, large]
56+
name: Set edition
57+
outputs:
58+
module_edition: ${{ steps.set-vars.outputs.MODULE_EDITION }}
59+
steps:
60+
- name: Get Pull Request Labels
61+
id: get-labels
62+
uses: actions/github-script@v7
63+
with:
64+
script: |
65+
if (context.eventName === "pull_request" || context.eventName === "pull_request_target" ) {
66+
const prNumber = context.payload.pull_request.number;
67+
const { data: labels } = await github.rest.issues.listLabelsOnIssue({
68+
owner: context.repo.owner,
69+
repo: context.repo.repo,
70+
issue_number: prNumber,
71+
});
72+
return labels.map(label => label.name);
73+
} else {
74+
return [];
75+
}
76+
result-encoding: string
77+
78+
- name: Set vars
79+
id: set-vars
80+
run: |
81+
# Slect edition for build, default ee
82+
if echo "${{ steps.get-labels.outputs.result }}" | grep -q "edition/ce"; then
83+
echo "MODULE_EDITION=ce" >> "$GITHUB_OUTPUT"
84+
else
85+
echo "MODULE_EDITION=ee" >> "$GITHUB_OUTPUT"
86+
fi
87+
3588
dev_setup_build:
3689
runs-on: [self-hosted, large]
3790
name: Build and Push images
91+
needs: [set_edition]
92+
env:
93+
MODULE_EDITION: ${{needs.set_edition.outputs.module_edition}}
3894
steps:
3995
- name: Set vars for PR
4096
if: ${{ github.ref_name != 'main' }}
4197
run: |
4298
MODULES_MODULE_TAG="$(echo pr${{ github.ref_name }} | sed 's/\/.*//g')"
4399
echo "MODULES_MODULE_TAG=$MODULES_MODULE_TAG" >> "$GITHUB_ENV"
44-
shell: bash
45100
- name: Set vars for main
46101
if: ${{ github.ref_name == 'main' }}
47102
run: |
48103
echo "MODULES_MODULE_TAG=${{ github.ref_name }}" >> "$GITHUB_ENV"
49-
shell: bash
50104
- name: Print vars
51105
run: |
52106
echo MODULES_REGISTRY=$MODULES_REGISTRY
53107
echo CI_COMMIT_REF_NAME=$CI_COMMIT_REF_NAME
54108
echo MODULES_MODULE_NAME=$MODULES_MODULE_NAME
55109
echo MODULES_MODULE_SOURCE=$MODULES_MODULE_SOURCE
56110
echo MODULES_MODULE_TAG=$MODULES_MODULE_TAG
57-
shell: bash
111+
echo MODULE_EDITION=$MODULE_EDITION
58112
59113
- uses: actions/checkout@v4
114+
115+
- name: Download base images
116+
run: |
117+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
118+
cat base_images.yml
119+
60120
- uses: deckhouse/modules-actions/setup@v2
61121
with:
62122
registry: ${{ vars.DEV_REGISTRY }}

.github/workflows/build_prod.yml

Lines changed: 47 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@ env:
1111
GOLANG_VERSION: ${{ vars.GOLANG_VERSION }}
1212
GOPROXY: ${{ secrets.GOPROXY }}
1313
SOURCE_REPO: ${{ secrets.SOURCE_REPO }}
14+
BASE_IMAGES_VERSION: "v0.4.3"
1415

1516
on:
1617
push:
1718
tags:
18-
- '**'
19+
- "**"
1920

2021
jobs:
2122
prod_ce_setup_build:
@@ -24,16 +25,24 @@ jobs:
2425
steps:
2526
- name: SET VAR
2627
run: |
27-
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/ce/modules" >> "$GITHUB_ENV"
28+
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/ce/modules" >> "$GITHUB_ENV"
29+
echo "MODULE_EDITION=ce" >> "$GITHUB_ENV"
2830
- run: |
2931
echo $MODULES_REGISTRY
3032
echo $MODULES_MODULE_NAME
3133
echo $MODULES_MODULE_SOURCE
3234
echo $MODULES_MODULE_TAG
35+
echo $MODULE_EDITION
3336
shell: bash
3437
name: Show vars
3538
3639
- uses: actions/checkout@v4
40+
41+
- name: Download base images
42+
run: |
43+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
44+
cat base_images.yml
45+
3746
- uses: deckhouse/modules-actions/setup@v2
3847
with:
3948
registry: ${{ vars.PROD_REGISTRY }}
@@ -57,16 +66,24 @@ jobs:
5766
steps:
5867
- name: SET VAR
5968
run: |
60-
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/ee/modules" >> "$GITHUB_ENV"
69+
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/ee/modules" >> "$GITHUB_ENV"
70+
echo "MODULE_EDITION=ee" >> "$GITHUB_ENV"
6171
- run: |
6272
echo $MODULES_REGISTRY
6373
echo $MODULES_MODULE_NAME
6474
echo $MODULES_MODULE_SOURCE
6575
echo $MODULES_MODULE_TAG
76+
echo $MODULE_EDITION
6677
shell: bash
6778
name: Show vars
6879
6980
- uses: actions/checkout@v4
81+
82+
- name: Download base images
83+
run: |
84+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
85+
cat base_images.yml
86+
7087
- uses: deckhouse/modules-actions/setup@v2
7188
with:
7289
registry: ${{ vars.PROD_REGISTRY }}
@@ -90,16 +107,24 @@ jobs:
90107
steps:
91108
- name: SET VAR
92109
run: |
93-
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/fe/modules" >> "$GITHUB_ENV"
110+
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/fe/modules" >> "$GITHUB_ENV"
111+
echo "MODULE_EDITION=ee" >> "$GITHUB_ENV"
94112
- run: |
95113
echo $MODULES_REGISTRY
96114
echo $MODULES_MODULE_NAME
97115
echo $MODULES_MODULE_SOURCE
98116
echo $MODULES_MODULE_TAG
117+
echo $MODULE_EDITION
99118
shell: bash
100119
name: Show vars
101120
102121
- uses: actions/checkout@v4
122+
123+
- name: Download base images
124+
run: |
125+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
126+
cat base_images.yml
127+
103128
- uses: deckhouse/modules-actions/setup@v2
104129
with:
105130
registry: ${{ vars.PROD_REGISTRY }}
@@ -123,16 +148,24 @@ jobs:
123148
steps:
124149
- name: SET VAR
125150
run: |
126-
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/se/modules" >> "$GITHUB_ENV"
151+
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/se/modules" >> "$GITHUB_ENV"
152+
echo "MODULE_EDITION=se" >> "$GITHUB_ENV"
127153
- run: |
128154
echo $MODULES_REGISTRY
129155
echo $MODULES_MODULE_NAME
130156
echo $MODULES_MODULE_SOURCE
131157
echo $MODULES_MODULE_TAG
158+
echo $MODULE_EDITION
132159
shell: bash
133160
name: Show vars
134161
135162
- uses: actions/checkout@v4
163+
164+
- name: Download base images
165+
run: |
166+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
167+
cat base_images.yml
168+
136169
- uses: deckhouse/modules-actions/setup@v2
137170
with:
138171
registry: ${{ vars.PROD_REGISTRY }}
@@ -156,16 +189,24 @@ jobs:
156189
steps:
157190
- name: SET VAR
158191
run: |
159-
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/se-plus/modules" >> "$GITHUB_ENV"
192+
echo "MODULES_MODULE_SOURCE=$MODULES_REGISTRY/$MODULE_SOURCE_NAME/se-plus/modules" >> "$GITHUB_ENV"
193+
echo "MODULE_EDITION=seplus" >> "$GITHUB_ENV"
160194
- run: |
161195
echo $MODULES_REGISTRY
162196
echo $MODULES_MODULE_NAME
163197
echo $MODULES_MODULE_SOURCE
164198
echo $MODULES_MODULE_TAG
199+
echo $MODULE_EDITION
165200
shell: bash
166201
name: Show vars
167202
168203
- uses: actions/checkout@v4
204+
205+
- name: Download base images
206+
run: |
207+
wget https://fox.flant.com/api/v4/projects/deckhouse%2Fbase-images/packages/generic/base_images/$BASE_IMAGES_VERSION/base_images.yml -O base_images.yml
208+
cat base_images.yml
209+
169210
- uses: deckhouse/modules-actions/setup@v2
170211
with:
171212
registry: ${{ vars.PROD_REGISTRY }}

.github/workflows/deploy_dev.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ env:
99
MODULES_REGISTRY_PASSWORD: ${{ secrets.DEV_MODULES_REGISTRY_PASSWORD }}
1010
RELEASE_CHANNEL: ${{ github.event.inputs.channel }}
1111
MODULES_MODULE_TAG: ${{ github.event.inputs.tag }}
12+
GOLANG_VERSION: ${{ vars.GOLANG_VERSION }}
1213
GOPROXY: ${{ secrets.GOPROXY }}
1314
SOURCE_REPO: ${{ secrets.SOURCE_REPO }}
1415

.github/workflows/deploy_prod.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ jobs:
107107
with:
108108
registry: ${{ vars.PROD_REGISTRY }}
109109
registry_login: ${{ vars.PROD_MODULES_REGISTRY_LOGIN }}
110-
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
110+
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
111111
- name: Check previous release
112112
run: |
113113
chmod +x .github/check_previous_channel_release.sh
@@ -136,7 +136,7 @@ jobs:
136136
with:
137137
registry: ${{ vars.PROD_REGISTRY }}
138138
registry_login: ${{ vars.PROD_MODULES_REGISTRY_LOGIN }}
139-
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
139+
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
140140
- name: Check previous release
141141
run: |
142142
chmod +x .github/check_previous_channel_release.sh
@@ -165,7 +165,7 @@ jobs:
165165
with:
166166
registry: ${{ vars.PROD_REGISTRY }}
167167
registry_login: ${{ vars.PROD_MODULES_REGISTRY_LOGIN }}
168-
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
168+
registry_password: ${{ secrets.PROD_MODULES_REGISTRY_PASSWORD }}
169169
- name: Check previous release
170170
run: |
171171
chmod +x .github/check_previous_channel_release.sh

.github/workflows/go_checks.yaml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Go checks for images
2+
3+
env:
4+
GO_BUILD_TAGS: "ce ee se seplus csepro"
5+
6+
on:
7+
pull_request:
8+
push:
9+
branches:
10+
- main
11+
12+
jobs:
13+
go_linter:
14+
name: Go linter for images
15+
runs-on: [self-hosted, regular]
16+
17+
steps:
18+
- name: Checkout repository
19+
uses: actions/checkout@v2
20+
21+
- name: Run Go lint
22+
uses: deckhouse/modules-actions/go_linter@v2
23+
24+
go_tests:
25+
name: Go tests for images
26+
runs-on: [self-hosted, regular]
27+
28+
steps:
29+
- name: Checkout repository
30+
uses: actions/checkout@v2
31+
32+
- name: Run Go tests
33+
uses: deckhouse/modules-actions/go_tests@v2
34+
35+
go_test_coverage:
36+
name: Go test coverage for images
37+
runs-on: [self-hosted, regular]
38+
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v2
42+
43+
- name: Run Go test coverage count
44+
uses: deckhouse/modules-actions/go_test_coverage@v2
45+
46+
go_modules_check:
47+
name: Go modules version
48+
runs-on: [self-hosted, regular]
49+
50+
steps:
51+
- name: Checkout repository
52+
uses: actions/checkout@v2
53+
54+
- name: Run Go modules version check
55+
uses: deckhouse/modules-actions/go_modules_check@v2

.github/workflows/go_lint.yaml

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

0 commit comments

Comments
 (0)