Skip to content

Commit 0b40293

Browse files
authored
fix
1 parent d1e504c commit 0b40293

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

.github/workflows/simplestreams_pre_build.yml

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
.[] |
5656
select(.tag_name != "processed") |
5757
.assets[] |
58-
select(.name | test("^[a-z0-9]+_[0-9a-z.-]+_[a-z0-9]+_[a-z0-9]+_[a-z]+\\.zip$")) |
58+
select(.name | test("^[a-zA-Z0-9]+_[a-zA-Z0-9.\\-]+_[a-zA-Z0-9.\\-]+_[a-zA-Z0-9_\\-]+_[a-zA-Z0-9_\\-]+\\.zip$")) |
5959
@base64
6060
' > assets_to_process.txt
6161
existing_assets=$(curl -s "https://api.github.com/repos/$REPO/releases/$PROCESSED_RELEASE_ID/assets")
@@ -67,14 +67,20 @@ jobs:
6767
name=$(echo "$asset" | jq -r '.name')
6868
url=$(echo "$asset" | jq -r '.browser_download_url')
6969
echo "Processing $name"
70-
if [[ "$name" =~ ^([a-z0-9]+)_([0-9a-z\.\-]+)_([a-z0-9]+)_([a-z0-9]+)_([a-z]+)\.zip$ ]]; then
70+
if [[ "$name" =~ ^([a-zA-Z0-9]+)_([a-zA-Z0-9.\-]+)_([a-zA-Z0-9.\-]+)_([a-zA-Z0-9_\-]+)_([a-zA-Z0-9_\-]+)\.zip$ ]]; then
7171
os="${BASH_REMATCH[1]}"
7272
version="${BASH_REMATCH[2]}"
7373
codename="${BASH_REMATCH[3]}"
7474
arch="${BASH_REMATCH[4]}"
7575
variant="${BASH_REMATCH[5]}"
76-
rootfs_file="${os}-${version}-${arch}-${variant}-rootfs.squashfs"
77-
incus_file="${os}-${version}-${arch}-${variant}-incus.tar.xz"
76+
# 新增标准化映射
77+
case "$arch" in
78+
x86_64) std_arch="amd64" ;;
79+
aarch64) std_arch="arm64" ;;
80+
*) std_arch="$arch" ;;
81+
esac
82+
rootfs_file="${os}-${version}-${std_arch}-${variant}-rootfs.squashfs"
83+
incus_file="${os}-${version}-${std_arch}-${variant}-incus.tar.xz"
7884
rootfs_asset_id=$(echo "$existing_assets" | jq -r --arg name "$rootfs_file" '.[] | select(.name == $name) | .id // empty')
7985
incus_asset_id=$(echo "$existing_assets" | jq -r --arg name "$incus_file" '.[] | select(.name == $name) | .id // empty')
8086
if [ -n "$rootfs_asset_id" ]; then
@@ -96,6 +102,7 @@ jobs:
96102
--arg os "$os" \
97103
--arg version "$version" \
98104
--arg arch "$arch" \
105+
--arg std_arch "$std_arch" \
99106
--arg variant "$variant" \
100107
--arg rootfs_file "$rootfs_file" \
101108
--arg incus_file "$incus_file" \
@@ -105,6 +112,7 @@ jobs:
105112
os: $os,
106113
version: $version,
107114
arch: $arch,
115+
std_arch: $std_arch,
108116
variant: $variant,
109117
rootfs_file: $rootfs_file,
110118
incus_file: $incus_file
@@ -139,6 +147,7 @@ jobs:
139147
os=$(echo "$file_info" | jq -r '.os')
140148
version=$(echo "$file_info" | jq -r '.version')
141149
arch=$(echo "$file_info" | jq -r '.arch')
150+
std_arch=$(echo "$file_info" | jq -r '.std_arch')
142151
variant=$(echo "$file_info" | jq -r '.variant')
143152
rootfs_file=$(echo "$file_info" | jq -r '.rootfs_file')
144153
incus_file=$(echo "$file_info" | jq -r '.incus_file')
@@ -181,6 +190,7 @@ jobs:
181190
jq --arg os "$os" \
182191
--arg version "$version" \
183192
--arg arch "$arch" \
193+
--arg std_arch "$std_arch" \
184194
--arg variant "$variant" \
185195
--arg rootfs_url "$rootfs_url" \
186196
--arg incus_url "$incus_url" \
@@ -193,6 +203,7 @@ jobs:
193203
os: $os,
194204
version: $version,
195205
arch: $arch,
206+
std_arch: $std_arch,
196207
variant: $variant,
197208
rootfs_url: $rootfs_url,
198209
incus_url: $incus_url,

0 commit comments

Comments
 (0)