Skip to content

Commit e41b618

Browse files
committed
Update Talos Linux v1.10.3
Signed-off-by: Andrei Kvapil <[email protected]>
1 parent cf87779 commit e41b618

12 files changed

Lines changed: 145 additions & 93 deletions

File tree

‎.github/workflows/pull-requests-release.yaml‎

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ jobs:
1616
contents: read
1717
packages: write
1818

19-
# Run only when the PR carries the "release" label and not closed.
2019
if: |
2120
contains(github.event.pull_request.labels.*.name, 'release') &&
2221
github.event.action != 'closed'
@@ -35,8 +34,36 @@ jobs:
3534
password: ${{ secrets.GITHUB_TOKEN }}
3635
registry: ghcr.io
3736

37+
- name: Extract tag from PR branch
38+
id: get_tag
39+
uses: actions/github-script@v7
40+
with:
41+
script: |
42+
const branch = context.payload.pull_request.head.ref;
43+
const m = branch.match(/^release-(\d+\.\d+\.\d+(?:[-\w\.]+)?)$/);
44+
if (!m) {
45+
core.setFailed(`❌ Branch '${branch}' does not match 'release-X.Y.Z[-suffix]'`);
46+
return;
47+
}
48+
const tag = `v${m[1]}`;
49+
core.setOutput('tag', tag);
50+
51+
- name: Download required release assets
52+
run: |
53+
mkdir -p _out/assets
54+
gh release download ${{ steps.get_tag.outputs.tag }} \
55+
--repo ${{ github.repository }} \
56+
--dir _out/assets \
57+
--pattern cozystack-installer.yaml \
58+
--pattern nocloud-amd64.raw.xz
59+
env:
60+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
61+
62+
- name: List downloaded files
63+
run: ls -lh _out/assets/
64+
3865
- name: Run tests
39-
run: make manifests && make test
66+
run: make test
4067

4168
finalize:
4269
name: Finalize Release

‎.github/workflows/pull-requests.yaml‎

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,20 @@ jobs:
3737
- name: Build
3838
run: make build
3939

40-
- name: Upload installer artifact
40+
- name: Build Talos image
41+
run: make -C packages/core/installer talos-nocloud
42+
43+
- name: Upload installer
4144
uses: actions/upload-artifact@v4
4245
with:
4346
name: cozystack-installer
4447
path: _out/assets/cozystack-installer.yaml
48+
49+
- name: Upload Talos image
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: talos-nocloud
53+
path: _out/assets/nocloud-amd64.raw.xz
4554

4655
test:
4756
name: Test
@@ -65,5 +74,11 @@ jobs:
6574
name: cozystack-installer
6675
path: _out/assets/
6776

77+
- name: Download Talos image
78+
uses: actions/download-artifact@v4
79+
with:
80+
name: talos-nocloud
81+
path: _out/assets/
82+
6883
- name: Test
6984
run: make test

‎Makefile‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ manifests:
4343
(cd packages/core/installer/; helm template -n cozy-installer installer .) > _out/assets/cozystack-installer.yaml
4444

4545
assets:
46-
make -C packages/core/installer/ assets
46+
make -C packages/core/installer assets
4747

4848
test:
4949
make -C packages/core/testing apply

‎hack/e2e-cluster.bats‎

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,14 @@
33
# Cozystack end‑to‑end provisioning test (Bats)
44
# -----------------------------------------------------------------------------
55

6-
@test "Environment variable COZYSTACK_INSTALLER_YAML is defined" {
7-
if [ -z "${COZYSTACK_INSTALLER_YAML:-}" ]; then
8-
echo 'COZYSTACK_INSTALLER_YAML environment variable is not set!' >&2
9-
echo >&2
10-
echo 'Please export it with the following command:' >&2
11-
echo ' export COZYSTACK_INSTALLER_YAML=$(helm template -n cozy-system installer packages/core/installer)' >&2
6+
@test "Required installer assets exist" {
7+
if [ ! -f _out/assets/cozystack-installer.yaml ]; then
8+
echo "Missing: _out/assets/cozystack-installer.yaml" >&2
9+
exit 1
10+
fi
11+
12+
if [ ! -f _out/assets/nocloud-amd64.raw.xz ]; then
13+
echo "Missing: _out/assets/nocloud-amd64.raw.xz" >&2
1214
exit 1
1315
fi
1416
}
@@ -70,13 +72,15 @@ EOF
7072
done
7173
}
7274

73-
@test "Download Talos NoCloud image" {
74-
if [ ! -f nocloud-amd64.raw ]; then
75-
wget https://github.com/cozystack/cozystack/releases/latest/download/nocloud-amd64.raw.xz \
76-
-O nocloud-amd64.raw.xz --show-progress --output-file /dev/stdout --progress=dot:giga 2>/dev/null
77-
rm -f nocloud-amd64.raw
78-
xz --decompress nocloud-amd64.raw.xz
75+
@test "Use Talos NoCloud image from assets" {
76+
if [ ! -f _out/assets/nocloud-amd64.raw.xz ]; then
77+
echo "Missing _out/assets/nocloud-amd64.raw.xz" 2>&1
78+
exit 1
7979
fi
80+
81+
rm -f nocloud-amd64.raw
82+
cp _out/assets/nocloud-amd64.raw.xz .
83+
xz --decompress nocloud-amd64.raw.xz
8084
}
8185

8286
@test "Prepare VM disks" {
@@ -243,8 +247,8 @@ EOF
243247
--from-literal=api-server-endpoint=https://192.168.123.10:6443 \
244248
--dry-run=client -o yaml | kubectl apply -f -
245249

246-
# Apply installer manifests from env variable
247-
echo "$COZYSTACK_INSTALLER_YAML" | kubectl apply -f -
250+
# Apply installer manifests from file
251+
kubectl apply -f _out/assets/cozystack-installer.yaml
248252

249253
# Wait for the installer deployment to become available
250254
kubectl wait deployment/cozystack -n cozy-system --timeout=1m --for=condition=Available

‎packages/core/installer/hack/gen-profiles.sh‎

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,36 @@ done
3232

3333
for profile in $PROFILES; do
3434
echo "writing profile images/talos/profiles/$profile.yaml"
35-
if [ "$profile" = "nocloud" ] || [ "$profile" = "metal" ]; then
36-
image_options="{ diskSize: 1306525696, diskFormat: raw }"
37-
out_format=".xz"
38-
platform="$profile"
39-
kind="image"
40-
else
41-
image_options="{}"
42-
out_format="raw"
43-
platform="metal"
44-
kind="$profile"
45-
fi
35+
case "$profile" in
36+
initramfs|kernel|iso)
37+
image_options="{}"
38+
out_format="raw"
39+
platform="metal"
40+
kind="$profile"
41+
;;
42+
installer)
43+
image_options="{}"
44+
out_format="raw"
45+
platform="metal"
46+
kind="installer"
47+
;;
48+
metal)
49+
image_options="{ diskSize: 1306525696, diskFormat: raw }"
50+
out_format=".xz"
51+
platform="metal"
52+
kind="image"
53+
;;
54+
nocloud)
55+
image_options="{ diskSize: 1306525696, diskFormat: raw }"
56+
out_format=".xz"
57+
platform="nocloud"
58+
kind="image"
59+
;;
60+
*)
61+
echo "Unknown profile: $profile" >&2
62+
exit 1
63+
;;
64+
esac
4665

4766
cat > images/talos/profiles/$profile.yaml <<EOT
4867
# this file generated by hack/gen-profiles.sh
@@ -57,12 +76,10 @@ input:
5776
initramfs:
5877
path: /usr/install/amd64/initramfs.xz
5978
baseInstaller:
60-
imageRef: ghcr.io/siderolabs/installer:${TALOS_VERSION}
79+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
6180
systemExtensions:
6281
- imageRef: ghcr.io/siderolabs/amd-ucode:${AMD_UCODE_VERSION}
63-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:${AMDGPU_FIRMWARE_VERSION}
6482
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:${BNX2_BNX2X_VERSION}
65-
- imageRef: ghcr.io/siderolabs/i915-ucode:${I915_UCODE_VERSION}
6683
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:${INTEL_ICE_FIRMWARE_VERSION}
6784
- imageRef: ghcr.io/siderolabs/intel-ucode:${INTEL_UCODE_VERSION}
6885
- imageRef: ghcr.io/siderolabs/qlogic-firmware:${QLOGIC_FIRMWARE_VERSION}

‎packages/core/installer/images/talos/profiles/initramfs.yaml‎

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,22 @@
33
arch: amd64
44
platform: metal
55
secureboot: false
6-
version: v1.10.1
6+
version: v1.10.3
77
input:
88
kernel:
99
path: /usr/install/amd64/vmlinuz
1010
initramfs:
1111
path: /usr/install/amd64/initramfs.xz
1212
baseInstaller:
13-
imageRef: ghcr.io/siderolabs/installer:v1.10.1
13+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
1414
systemExtensions:
15-
- imageRef: ghcr.io/siderolabs/amd-ucode:20250410
16-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20241110
17-
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250410
18-
- imageRef: ghcr.io/siderolabs/i915-ucode:20241110
19-
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250410
15+
- imageRef: ghcr.io/siderolabs/amd-ucode:20250509
16+
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250509
17+
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250509
2018
- imageRef: ghcr.io/siderolabs/intel-ucode:20250211
21-
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250410
22-
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.1
23-
- imageRef: ghcr.io/siderolabs/zfs:2.3.1-v1.10.1
19+
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250509
20+
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.3
21+
- imageRef: ghcr.io/siderolabs/zfs:2.3.2-v1.10.3
2422
output:
2523
kind: initramfs
2624
imageOptions: {}

‎packages/core/installer/images/talos/profiles/installer.yaml‎

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,22 @@
33
arch: amd64
44
platform: metal
55
secureboot: false
6-
version: v1.10.1
6+
version: v1.10.3
77
input:
88
kernel:
99
path: /usr/install/amd64/vmlinuz
1010
initramfs:
1111
path: /usr/install/amd64/initramfs.xz
1212
baseInstaller:
13-
imageRef: ghcr.io/siderolabs/installer:v1.10.1
13+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
1414
systemExtensions:
15-
- imageRef: ghcr.io/siderolabs/amd-ucode:20250410
16-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20241110
17-
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250410
18-
- imageRef: ghcr.io/siderolabs/i915-ucode:20241110
19-
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250410
15+
- imageRef: ghcr.io/siderolabs/amd-ucode:20250509
16+
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250509
17+
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250509
2018
- imageRef: ghcr.io/siderolabs/intel-ucode:20250211
21-
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250410
22-
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.1
23-
- imageRef: ghcr.io/siderolabs/zfs:2.3.1-v1.10.1
19+
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250509
20+
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.3
21+
- imageRef: ghcr.io/siderolabs/zfs:2.3.2-v1.10.3
2422
output:
2523
kind: installer
2624
imageOptions: {}

‎packages/core/installer/images/talos/profiles/iso.yaml‎

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,22 @@
33
arch: amd64
44
platform: metal
55
secureboot: false
6-
version: v1.10.1
6+
version: v1.10.3
77
input:
88
kernel:
99
path: /usr/install/amd64/vmlinuz
1010
initramfs:
1111
path: /usr/install/amd64/initramfs.xz
1212
baseInstaller:
13-
imageRef: ghcr.io/siderolabs/installer:v1.10.1
13+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
1414
systemExtensions:
15-
- imageRef: ghcr.io/siderolabs/amd-ucode:20250410
16-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20241110
17-
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250410
18-
- imageRef: ghcr.io/siderolabs/i915-ucode:20241110
19-
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250410
15+
- imageRef: ghcr.io/siderolabs/amd-ucode:20250509
16+
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250509
17+
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250509
2018
- imageRef: ghcr.io/siderolabs/intel-ucode:20250211
21-
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250410
22-
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.1
23-
- imageRef: ghcr.io/siderolabs/zfs:2.3.1-v1.10.1
19+
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250509
20+
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.3
21+
- imageRef: ghcr.io/siderolabs/zfs:2.3.2-v1.10.3
2422
output:
2523
kind: iso
2624
imageOptions: {}

‎packages/core/installer/images/talos/profiles/kernel.yaml‎

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,22 @@
33
arch: amd64
44
platform: metal
55
secureboot: false
6-
version: v1.10.1
6+
version: v1.10.3
77
input:
88
kernel:
99
path: /usr/install/amd64/vmlinuz
1010
initramfs:
1111
path: /usr/install/amd64/initramfs.xz
1212
baseInstaller:
13-
imageRef: ghcr.io/siderolabs/installer:v1.10.1
13+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
1414
systemExtensions:
15-
- imageRef: ghcr.io/siderolabs/amd-ucode:20250410
16-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20241110
17-
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250410
18-
- imageRef: ghcr.io/siderolabs/i915-ucode:20241110
19-
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250410
15+
- imageRef: ghcr.io/siderolabs/amd-ucode:20250509
16+
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250509
17+
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250509
2018
- imageRef: ghcr.io/siderolabs/intel-ucode:20250211
21-
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250410
22-
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.1
23-
- imageRef: ghcr.io/siderolabs/zfs:2.3.1-v1.10.1
19+
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250509
20+
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.3
21+
- imageRef: ghcr.io/siderolabs/zfs:2.3.2-v1.10.3
2422
output:
2523
kind: kernel
2624
imageOptions: {}

‎packages/core/installer/images/talos/profiles/metal.yaml‎

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,22 @@
33
arch: amd64
44
platform: metal
55
secureboot: false
6-
version: v1.10.1
6+
version: v1.10.3
77
input:
88
kernel:
99
path: /usr/install/amd64/vmlinuz
1010
initramfs:
1111
path: /usr/install/amd64/initramfs.xz
1212
baseInstaller:
13-
imageRef: ghcr.io/siderolabs/installer:v1.10.1
13+
imageRef: "ghcr.io/siderolabs/installer:v1.10.3"
1414
systemExtensions:
15-
- imageRef: ghcr.io/siderolabs/amd-ucode:20250410
16-
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20241110
17-
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250410
18-
- imageRef: ghcr.io/siderolabs/i915-ucode:20241110
19-
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250410
15+
- imageRef: ghcr.io/siderolabs/amd-ucode:20250509
16+
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20250509
17+
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20250509
2018
- imageRef: ghcr.io/siderolabs/intel-ucode:20250211
21-
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250410
22-
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.1
23-
- imageRef: ghcr.io/siderolabs/zfs:2.3.1-v1.10.1
19+
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20250509
20+
- imageRef: ghcr.io/siderolabs/drbd:9.2.13-v1.10.3
21+
- imageRef: ghcr.io/siderolabs/zfs:2.3.2-v1.10.3
2422
output:
2523
kind: image
2624
imageOptions: { diskSize: 1306525696, diskFormat: raw }

0 commit comments

Comments
 (0)