Skip to content

Commit 3eb3c23

Browse files
committed
fix: update GPG signing process and APT repository release file generation in CI workflow
1 parent e0c4890 commit 3eb3c23

1 file changed

Lines changed: 35 additions & 11 deletions

File tree

.github/workflows/repo.yml

Lines changed: 35 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -26,26 +26,37 @@ jobs:
2626
- name: Install packages
2727
run: |
2828
sudo apt-get update
29+
2930
sudo apt-get install -y \
3031
dpkg-dev \
3132
apt-utils \
32-
xz-utils
33+
xz-utils \
34+
gnupg
3335
34-
- name: Import GPG key
36+
- name: Import signing key
3537
env:
3638
APT_PRIVATE_KEY: ${{ secrets.APT_PRIVATE_KEY }}
3739
run: |
38-
echo "$APT_PRIVATE_KEY" | gpg --batch --import
40+
printf "%s" "$APT_PRIVATE_KEY" > private.asc
41+
42+
gpg --batch --import private.asc
43+
44+
echo "=== Secret Keys ==="
45+
gpg --list-secret-keys --keyid-format LONG
3946
4047
- name: Get latest release tag
4148
id: release
4249
run: |
43-
TAG=$(gh release list --limit 1 --json tagName --jq '.[0].tagName')
50+
TAG=$(gh release list \
51+
--limit 1 \
52+
--json tagName \
53+
--jq '.[0].tagName')
54+
4455
echo "tag=$TAG" >> "$GITHUB_OUTPUT"
4556
4657
- name: Download Linux archive
4758
run: |
48-
mkdir -p release
59+
mkdir release
4960
5061
gh release download \
5162
"${{ steps.release.outputs.tag }}" \
@@ -99,8 +110,6 @@ jobs:
99110
--clobber
100111
101112
- name: Build APT repository
102-
env:
103-
KEY_ID: ${{ secrets.APT_KEY_ID }}
104113
run: |
105114
mkdir -p repo
106115
@@ -117,12 +126,28 @@ jobs:
117126
gzip -kf repo/dists/stable/main/binary-amd64/Packages
118127
119128
apt-ftparchive release repo/dists/stable \
120-
> repo/dists/stable/Release
129+
> repo/dists/stable/Release.body
130+
131+
cat > repo/dists/stable/Release <<EOF
132+
Origin: SupCat
133+
Label: SupCat
134+
Suite: stable
135+
Codename: stable
136+
Architectures: amd64
137+
Components: main
138+
Description: SupCat APT Repository
139+
140+
EOF
141+
142+
cat repo/dists/stable/Release.body \
143+
>> repo/dists/stable/Release
144+
145+
rm repo/dists/stable/Release.body
121146
122147
gpg \
123148
--batch \
124149
--yes \
125-
--default-key "$KEY_ID" \
150+
--pinentry-mode loopback \
126151
--armor \
127152
--detach-sign \
128153
--output repo/dists/stable/Release.gpg \
@@ -131,7 +156,7 @@ jobs:
131156
gpg \
132157
--batch \
133158
--yes \
134-
--default-key "$KEY_ID" \
159+
--pinentry-mode loopback \
135160
--clearsign \
136161
--output repo/dists/stable/InRelease \
137162
repo/dists/stable/Release
@@ -147,5 +172,4 @@ jobs:
147172
uses: actions/configure-pages@v5
148173

149174
- name: Deploy Pages
150-
id: deployment
151175
uses: actions/deploy-pages@v5

0 commit comments

Comments
 (0)