Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

A free and open-source forge that lives in your Git repo.

Blame · packaging/nfpm.yaml

Line attribution on main · 90 line(s)

3b39a84c
Keenan Nemetz
14d ago
1 # nfpm builds both the .deb and the .rpm from this file. The release workflow
2 # renders it once per architecture, with VERSION and ARCH supplied:
3 #
4 # ARCH=amd64 VERSION=0.2.0 nfpm package -f packaging/nfpm.yaml -p deb -p rpm -t dist
5 #
6 # See docs/packaging.md.
7 name: vole
8 arch: ${ARCH}
9 platform: linux
10 version: ${VERSION}
11 release: "1"
12 section: devel
13 priority: optional
14 maintainer: Keenan Nemetz <keenan.nemetz@gmail.com>
15 vendor: Rodent Software
ed03b3d1
Keenan Nemetz
4h ago
16 homepage: https://rodent.software/vole
3b39a84c
Keenan Nemetz
14d ago
17 license: Apache-2.0
18 description: |
e73d453f
Keenan Nemetz
2d ago
19 A forge that lives in your Git repo.
3b39a84c
Keenan Nemetz
14d ago
20
e73d453f
Keenan Nemetz
2d ago
21 Code, issues, comments, change requests, reviews, and releases live in Git. CI
22 history stays on the instance and is backed up with it. One binary, one config
23 file, no extra services to operate.
3b39a84c
Keenan Nemetz
14d ago
24 depends:
25 # The server shells out to git for every push, clone, and metadata write.
26 - git
95425af7
Keenan Nemetz
10d ago
27 # The binary is linked against the system SQLite, so each format names its own
28 # runtime library. An override replaces the list above rather than adding to it.
29 overrides:
30 deb:
31 depends:
32 - git
33 - libsqlite3-0
34 rpm:
35 depends:
36 - git
37 - sqlite-libs
3b39a84c
Keenan Nemetz
14d ago
38 contents:
39 - src: dist/vole-linux-${ARCH}
40 dst: /usr/bin/vole
41 # nfpm only expands ${...} in a source path when asked to.
42 expand: true
43 file_info:
44 mode: 0755
45 - src: packaging/systemd/vole.service
46 dst: /usr/lib/systemd/system/vole.service
47 file_info:
48 mode: 0644
d0d4239f
Keenan Nemetz
3d ago
49 # The CI runner is the same binary in another mode, so its unit ships here too.
50 # It is not enabled by the package, and it refuses to start until an operator
51 # fills in /etc/vole/runner.env: who runs builds on a machine is that machine
52 # owner's decision. See docs/deploy/runner.md.
53 - src: packaging/systemd/vole-runner.service
54 dst: /usr/lib/systemd/system/vole-runner.service
55 file_info:
56 mode: 0644
57 - src: packaging/runner.env
58 dst: /etc/vole/runner.env
59 type: config|noreplace
9704d735
Keenan Nemetz
3h ago
60 # Two settings a runner needs that the distributions do not ship: a registry to
61 # resolve a short image name against, and a cgroup manager that works without a
62 # systemd user session. Both are drop-ins, so they merge with what the
63 # distribution has rather than replacing it, and a site can override either with
64 # a higher-numbered file. See docs/deploy/runner.md.
65 - src: packaging/containers/registries.conf
66 dst: /etc/containers/registries.conf.d/50-vole-runner.conf
67 type: config|noreplace
68 file_info:
69 mode: 0644
70 - src: packaging/containers/containers.conf
71 dst: /etc/containers/containers.conf.d/50-vole-runner.conf
72 type: config|noreplace
73 file_info:
74 mode: 0644
3b39a84c
Keenan Nemetz
14d ago
75 # An operator's edits survive upgrades: rpm gets %config(noreplace), deb gets a
76 # conffile. Changing this file is how you set public_url, pages_domain, or a
77 # different listen address.
78 - src: packaging/vole.toml
79 dst: /etc/vole/vole.toml
80 type: config|noreplace
81 - src: LICENSE
82 dst: /usr/share/doc/vole/LICENSE
83 file_info:
84 mode: 0644
85 - src: NOTICE
86 dst: /usr/share/doc/vole/NOTICE
87 file_info:
88 mode: 0644
89 scripts:
90 postinstall: packaging/scripts/postinstall.sh