File: RELEASE_PROCESS.md

package info (click to toggle)
fapolicyd 1.4.3-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,328 kB
  • sloc: ansic: 15,255; makefile: 268; sh: 132; python: 26
file content (71 lines) | stat: -rw-r--r-- 1,477 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# fapolicyd Release Process

1. **Clean the repository**

   ```bash
   git clean -xfd
   ```

2. **Bootstrap and build**

   ```bash
   ./autogen.sh
   ./configure --with-audit --with-rpm --disable-shared
   make
   ```

3. **Run the test suite**

   ```bash
   make check
   ```

4. **Build with Address Sanitizer**

   Reconfigure with `--with-asan`, rebuild, and run both the daemon and
   command-line client to ensure there are no ASAN failures.

   ```bash
   ./configure --with-audit --with-rpm --disable-shared --with-asan
   make
   sudo ./src/fapolicyd --debug-deny
   sudo ./src/fapolicyd-cli --dump-db
   ```

5. **Update version numbers**
   - `configure.ac` line 2
   - `fapolicyd.spec` line 12
   - Document the changes in `ChangeLog`.

6. **Create the source tarball**

   ```bash
   ./autogen.sh
   ./configure --with-audit --with-rpm --disable-shared
   make dist
   ```

7. **Tag the release**

   ```bash
   git tag -s -m "fapolicyd-X.Y.Z" vX.Y.Z
   git push origin vX.Y.Z
   ```

8. **Sign the tarball**

   ```bash
   sha256sum fapolicyd-X.Y.Z.tar.gz > fapolicyd-X.Y.Z.tar.gz.sum
   gpg --armor --detach-sign fapolicyd-X.Y.Z.tar.gz
   gpg --clearsign fapolicyd-X.Y.Z.tar.gz.sum
   ```

9. **Publish on GitHub**

   Create a new release with the tag, include notes from `ChangeLog`, and
   upload the following files:

   - `fapolicyd-X.Y.Z.tar.gz`
   - `fapolicyd-X.Y.Z.tar.gz.asc`
   - `fapolicyd-X.Y.Z.tar.gz.sum`
   - `fapolicyd-X.Y.Z.tar.gz.sum.asc`