Skip to content

Commit 2bc5e07

Browse files
committed
Move release to Go Releaser on GitHib Actions
Also add building deb packages and publishing them to GitHub Pages.
1 parent e54e085 commit 2bc5e07

File tree

10 files changed

+391
-0
lines changed

10 files changed

+391
-0
lines changed

.github/workflows/release.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Release
2+
on:
3+
push:
4+
branches:
5+
- main
6+
jobs:
7+
bump-version:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v2
11+
with:
12+
fetch-depth: 0
13+
- name: Bump version and push tag
14+
uses: anothrNick/[email protected]
15+
id: version
16+
env:
17+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
18+
WITH_V: true
19+
DEFAULT_BUMP: patch
20+
RELEASE_BRANCHES: main
21+
- name: Set up Go
22+
uses: actions/setup-go@v2
23+
with:
24+
go-version: 1.15
25+
- name: Run GoReleaser
26+
uses: goreleaser/goreleaser-action@v2
27+
with:
28+
version: latest
29+
args: release
30+
env:
31+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
32+
- name: Import GPG signing key
33+
run: |
34+
mkdir -p -m 0700 ~/.gnupg/
35+
printf -- "${{ secrets.GPG_SIGNING_KEY }}" > ~/.gnupg/private-key.asc
36+
gpg --import --no-tty --batch --yes ~/.gnupg/private-key.asc
37+
- name: Copy deb packages into build area
38+
run: |
39+
mkdir -p site
40+
cp -v dist/*.deb site/
41+
- name: Scan packages
42+
run: |
43+
dpkg-scanpackages --multiversion . > Packages
44+
gzip -k -f Packages
45+
working-directory: site
46+
- name: apt-ftparchive release
47+
run: |
48+
apt-ftparchive release . > Release
49+
gpg -abs --no-tty --batch --yes -o - Release > Release.gpg
50+
gpg --clearsign --no-tty --batch --yes -o - Release > InRelease
51+
working-directory: site
52+
- uses: ZacJW/[email protected]
53+
with:
54+
input_files: '[["README.md"]]'
55+
output_files: '["README.html"]'
56+
- name: Fix link / package name in GitHub Pages
57+
run: |
58+
DEB=$(grep linux_amd64.deb dist/checksums.txt | awk '{print $2}')
59+
sed -i "s/system-state_.*_linux_amd64.deb/<a href=\"https:\/\/github.com\/arnested\/system-state\/releases\/latest\/download\/${DEB}\">${DEB}<\/a>/" README.html
60+
sed -i 's/<!DOCTYPE html>//' README.html
61+
cat page/header.html README.html page/footer.html > site/index.html
62+
- name: Add install script to GitHub Pages
63+
run: cp -v install.sh site/install.sh
64+
- name: Deploy deb packages
65+
uses: JamesIves/[email protected]
66+
with:
67+
branch: gh-pages
68+
folder: site
69+
clean: true

.goreleaser.yml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
before:
2+
hooks:
3+
- go mod download
4+
builds:
5+
- env:
6+
- CGO_ENABLED=0
7+
goos:
8+
- linux
9+
archives:
10+
- format: binary
11+
name_template: "{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}"
12+
replacements:
13+
darwin: Darwin
14+
linux: Linux
15+
windows: Windows
16+
386: i386
17+
amd64: x86_64
18+
checksum:
19+
name_template: 'checksums.txt'
20+
snapshot:
21+
name_template: "{{ .Tag }}-next"
22+
changelog:
23+
sort: asc
24+
filters:
25+
exclude:
26+
- '^docs:'
27+
- '^test:'
28+
release:
29+
# If set to auto, will mark the release as not ready for production
30+
# in case there is an indicator for this in the tag e.g. v1.0.0-rc1
31+
# If set to true, will mark the release as not ready for production.
32+
# Default is false.
33+
prerelease: auto
34+
35+
nfpms:
36+
-
37+
vendor: Arne Jørgensen
38+
maintainer: Arne Jørgensen <[email protected]>
39+
description: http server for monitoring systemd state
40+
license: MIT
41+
formats:
42+
- deb
43+
dependencies:
44+
- libsystemd0
45+
bindir: /usr/libexec
46+
contents:
47+
- src: systemd/systemd-state.service
48+
dst: /lib/systemd/system/systemd-state.service
49+
50+
- src: deb/systemd-state.list
51+
dst: /etc/apt/sources.list.d/systemd-state.list
52+
53+
- src: deb/systemd-state.asc
54+
dst: /etc/apt/trusted.gpg.d/systemd-state.asc
55+
56+
scripts:
57+
postinstall: "deb/postinstall.sh"
58+
preremove: "deb/preremove.sh"
59+
postremove: "deb/postremove.sh"

deb/postinstall.sh

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/sh
2+
3+
set -e
4+
5+
/bin/systemctl daemon-reload
6+
7+
if /bin/systemctl is-active --quiet systemd-state.service; then
8+
/bin/systemctl restart systemd-state.service
9+
fi
10+
11+
if ! /bin/systemctl is-enabled --quiet systemd-state.service; then
12+
/bin/systemctl enable --now systemd-state.service;
13+
fi

deb/postremove.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#!/bin/sh
2+
3+
set -e
4+
5+
/bin/systemctl daemon-reload

deb/preremove.sh

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#!/bin/sh
2+
3+
set -e
4+
5+
if /bin/systemctl is-active --quiet systemd-state.service; then
6+
/bin/systemctl stop systemd-state.service
7+
fi
8+
9+
if /bin/systemctl is-enabled --quiet systemd-state.service; then
10+
/bin/systemctl disable --now systemd-state.service;
11+
fi

deb/systemd-state.asc

Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
-----BEGIN PGP PUBLIC KEY BLOCK-----
2+
3+
mQENBE7X4nwBCAC9GGtiL7ZaDqAr19KySmkLsTPaBsuoeMikXBxLiLxLPSiEpN7g
4+
tK3IMtth1WsxieivYSkakAcTdrtLJ1R236lgmwomHiY7Agiur7SUYr2a4V4RIA4z
5+
4L1kirhIouGvrcXrDHMqhbdY1qShNCuBC6pUzF5CiWTad/aDzR7jGiWh0TnoT1eG
6+
CvFyvY+1CMBJWUK7hJ88uKdk34cUFcmewTsJqXYKtvy+rwf27wpLEgLCquBbTo7D
7+
h0SQtkPrxCsleVAAEZkDIRZOAz0aH0W3OAwIUZCgK7mrY9S5XRVXfWxtjxlePUsi
8+
2/+Nfo1nrwV2yzcIEW2gVXWjkLH3cyqFpQOjABEBAAG0KWtleWJhc2UuaW8vYXJu
9+
ZXN0ZWQgPGFybmVzdGVkQGtleWJhc2UuaW8+iQEtBBMBCgAXBQJO1+J8AhsDAwsJ
10+
BwMVCggCHgECF4AACgkQE5fbeSCrE6ggNAgAmChXAl+gvBUaLbdMxxxxqqumQQ9k
11+
itY5v4tMrYf6CSH8Ay5XzuQYKjeAtuy5PFYL4j5NSEt8Cu/UnCZEYVzhlT6o0Yi2
12+
fsoRInl7JiQpUgiQAD4zkCvepByRxwqMZft8nMgKxTGV5HH9j2HON9B/1/OvkxqD
13+
k2r7zIP55pTorqZyx8kZNcARYD2AehnwRi1Y41NDr0qMgG/n2Yq51UdjE7d/DJnc
14+
jn9x67BdquZhxnD1Jfg6N2vYMuQozMjD9NgUH0B0b1lOAFWwuQD8q//hSFknE/vH
15+
8oB+GDU1kkc90DQgTyKwZOpFtI4tSkAqfgJcoHblUWRrXWfdlbnpAgRsILQiQXJu
16+
ZSBKw7hyZ2Vuc2VuIDxhcm5lQGFybmVzdGVkLmRrPokBOAQTAQIAIgUCTtfifAIb
17+
AwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQE5fbeSCrE6g6FwgAmrOPovPr
18+
6e0cKSXjM1Dnlg5LAOi2viHicyDpT4IyxLyp0am83QF08VlYpz1b2ZzTDU4p6Qku
19+
Zg09GmM7MQgqk7u4Q8a2BBVPHq4hcpv0/wDE7lzsopDcCTFuavZxERNsE8U2y6OV
20+
gAShIH6x48HBYYbFbXNI8QhebjRvFlbMZNaZNvYr+ZoFcm8YvgpVq/q26ZsSPJTZ
21+
OZJP8SXqS3cLEdRvn9ngHU6EeXY6/TOP7Knh+SUJ8ndR3JrRC7AtEoduvJ4d43DJ
22+
incJ5AnqYBoX4T55it56uBQTrd44zpt+yK6gYAgFqsWBU/0sU/Xmo+bzyOIwXy9/
23+
Unc0m7BsbCimjdHQL9AtARAAAQEAAAAAAAAAAAAAAAD/2P/gABBKRklGAAEBAAAB
24+
AAEAAP/+ADtDUkVBVE9SOiBnZC1qcGVnIHYxLjAgKHVzaW5nIElKRyBKUEVHIHY2
25+
MiksIHF1YWxpdHkgPSA5MAr/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYI
26+
DAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUE
27+
BQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU
28+
FBQUFBQUFBQUFBT/wAARCABgAGADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAA
29+
AAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEG
30+
E1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RF
31+
RkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKj
32+
pKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP0
33+
9fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgEC
34+
BAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLR
35+
ChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0
36+
dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbH
37+
yMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9G4Is
38+
gduKtJH90L05yaWGIDA9O1SXP7mymlMy26ojOZXIAUAZJJPA+prmSO5s8n/aF+K+
39+
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
156+
rreCVLhtFvxK2pYhkrug
157+
=IAfj
158+
-----END PGP PUBLIC KEY BLOCK-----

deb/systemd-state.list

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
deb https://systemd-state.arnested.dk/ ./

page/footer.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
</body>
2+
</html>

page/header.html

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<title>systemd-state</title>
5+
<meta name="description" content="http server for monitoring systemd state" />
6+
<meta name="viewport" content="width=device-width, initial-scale=1" />
7+
<style>
8+
html {
9+
background-color: white;
10+
color: black;
11+
font-family: system-ui, -apple-system;
12+
font-size: 16px;
13+
line-height: 1.6;
14+
}
15+
16+
body {
17+
padding: 0 2em;
18+
max-width: 62em;
19+
margin: 10ex auto;
20+
}
21+
22+
code {
23+
background-color: whitesmoke;
24+
color: darkslategrey;
25+
padding: 0.5ex 0.5em;
26+
border-radius: 0.75em;
27+
}
28+
29+
code.language-ini,
30+
code.language-console {
31+
padding: 2ex 1em;
32+
margin: 2ex 0;
33+
display: block;
34+
overflow-x: auto;
35+
}
36+
37+
code.language-console::before {
38+
content: "$ ";
39+
color: black;
40+
font-weight: bold;
41+
}
42+
43+
@media (prefers-color-scheme: dark) {
44+
html {
45+
background-color: black;
46+
color: white;
47+
}
48+
49+
code {
50+
background-color: darkslategrey;
51+
color: whitesmoke;
52+
}
53+
54+
code.language-console::before {
55+
color: white;
56+
}
57+
}
58+
</style>
59+
</head>
60+
<body>

0 commit comments

Comments
 (0)