summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorintrigeri <intrigeri@boum.org>2016-05-21 15:20:58 +0000
committerintrigeri <intrigeri@boum.org>2016-05-21 15:20:58 +0000
commitb7af5093f2a433ac52b79f3096dd1c0fd9b00270 (patch)
tree1b6ce05f7c066710f2d367de1b63ec25a6b04cc5
parent297a0f1a829bda7ffae16387480953f746779c5d (diff)
Add documentation for the freeze exceptions workflow.
refs: #11446
-rw-r--r--wiki/src/contribute/APT_repository/time-based_snapshots.mdwn44
-rw-r--r--wiki/src/contribute/release_process.mdwn2
2 files changed, 44 insertions, 2 deletions
diff --git a/wiki/src/contribute/APT_repository/time-based_snapshots.mdwn b/wiki/src/contribute/APT_repository/time-based_snapshots.mdwn
index bbf60d8..147a040 100644
--- a/wiki/src/contribute/APT_repository/time-based_snapshots.mdwn
+++ b/wiki/src/contribute/APT_repository/time-based_snapshots.mdwn
@@ -158,7 +158,49 @@ For example, when we stopped tracking Wheezy, we did:
Freeze exception
----------------
-XXX
+### Grant a freeze exception
+
+1. Import the package you want to upgrade into our own
+ [[custom APT repository|contribute/APT repository/custom]], in the
+ suite corresponding to the branch that we want to see this
+ package in.
+
+2. If the imported package comes from a Debian distribution whose
+ pinning value is at least 990 in `config/chroot_apt/preferences`:
+ you can stop right here. Otherwise, read on.
+
+3. Add a pinning entry in `config/chroot_apt/preferences` for the
+ package you imported:
+
+ Explanation: freeze exception
+ Package: XYZ
+ Pin: origin deb.tails.boum.org
+ Pin-Priority: 999
+
+4. Commit:
+
+ git commit config/chroot_apt/preferences \
+ -m "Add freeze exceptions for $(dpkg-parsechangelog -SVersion)"
+
+5. Push to Git.
+
+<a id="freeze-exceptions-post-release"></a>
+
+### Post-release
+
+Thaw the packages that were granted freeze exceptions, now that they
+can be fetched from a newer time-based snapshot of the repository
+we've initially pulled it from.
+
+1. For each entry in `config/chroot_apt/preferences` that has
+ `Explanation: freeze exception`: set `Pin-Priority` to `-1`.
+
+2. Commit:
+
+ git commit config/chroot_apt/preferences \
+ -m "Remove freeze exceptions added for $(dpkg-parsechangelog -SVersion)"
+
+3. Push to Git.
# Design notes
diff --git a/wiki/src/contribute/release_process.mdwn b/wiki/src/contribute/release_process.mdwn
index 88b0cd0..a84e1d8 100644
--- a/wiki/src/contribute/release_process.mdwn
+++ b/wiki/src/contribute/release_process.mdwn
@@ -1100,7 +1100,7 @@ this, and skip what does not make sense for a RC.
for an emergency release that was never made.
1. [[Thaw|APT_repository/time-based snapshots#thaw]] the time-based
APT repository snapshots that were used during the freeze, if any.
-1. XXX: update pinning for freeze exceptions
+1. [[Thaw the packages that were granted freeze exceptions|APT_repository/time-based snapshots#freeze-exceptions-post-release]].
1. Pull `master` back and merge it into `stable`, and in turn into
`devel`
1. Follow the