Skip to content

v2018.5

@jlebon jlebon tagged this 15 May 14:42
This release introduces a new automatic update policy: "ex-stage". As
hinted by the "ex" prefix, this is still an experimental option. This
builds upon a new "staging" feature in libostree which allows a pending
deployment to only be completed at reboot time. The major advantage of
this approach is that it finally addresses the long-standing `/etc`
merge issue (#40), where changes to `/etc` *after* a pending deployment
is created are not actually carried over at reboot.  We expect this
behaviour to become the default in the future. For now, one can either
use the "ex-stage" policy, or put this in their `rpm-ostreed.conf`:

    ```
    [Experimental]
    StageDeployments=yes
    ```

See the [ostree upstream release](https://mail.gnome.org/archives/ostree-list/2018-May/msg00003.html)
for more details around deployment staging.
PR: #1321

The way pending updates are displayed in the `status` output has been
reworked to be more intuitive. The pending diff and any addressed
advisories are now printed as part of the pending deployment itself
rather than a separate "Available update" section.
PR: #1350

Two changes for overrides:

 - core: Finish implementing `override replace ./kernel*.x86_64.rpm (#1346)
 - core: Don't rm-rf directories when doing overrides (#1341)

We fixed using `override replace systemd*.rpm`.  And the kernel
overrides in particular closes a longstanding gap - using ostree with
local or testing kernel builds is an obvious thing to support.

The `status` command now supports a new `-a`/`--advisories` to only
print details about outstanding advisories fixed in an available update.
PR: #1350

As usual, there were also a string of minor paper cut fixes and
enhancements.  For example, resetting an inactive override is now
possible. There were also multiple tweaks to the auto-updates mechanism
to make it more lightweight.
PRs: #1323 #1324 #1344 #1357

Colin Walters (22 PRs, 28 commits)
  core: Prefix error when loading commit for cache branch (#1314)
  core: Bound number of async imports by CPUs (#1317)
  core/scripts: Support /var/lib/rpm-state (#1319)
  build-sys: Mark libpriv symbols as private (#1320)
  Add "ex-stage" update policy, support for ostree staged deployments (#1321)
  ci: Ensure we exclude ostree from base fedora too (#1326)
  daemon: Simplify how we load deployments (#1327)
  bin/status: Factor out deployment printing into helper function (#1328)
  tests: Split unit test-basic.sh into introspection + upgrade-rebase (#1338)
  core: Don't rm-rf directories when doing overrides (#1341)
  status: Show rpmmd-repo data in verbose mode (#1345)
  core: Finish implementing `override replace ./kernel*.x86_64.rpm (#1346)
  docs/compose: Mention caching, privileged containers, example code (#1347)
  syscore: Only do a single repo prune for base+pkgcache (#1351)
  Add an experimental option to use libostree's "staging" API (#1352)
  db: Add some error prefixing around rpmdb loading (#1356)
  core: Tweak package checkout message, update libglnx (#1363)
  ci: Split codestyle checks into separate context (#1364)
  PR: #1333
    bwrap: Split out a "base" constructor
    core,scripts: Move creation of /var/tmp into core
    compose: Add environment variable to skip tmpdir cleanup
  PR: #1336
    tests: Split test-basic into misc-{1,2}
    tests: Move ostree-update creation functions into libvm.sh
    tests: Migrate some basic unit tests that start daemon to vmcheck
  PR: #1339
    tests: Move upgrade/rebase tests from unit to vmcheck/test-upgrades
    tests: Move more update-generation bits to libvm.sh
  PR: #1355
    tests: Extend staging to cover vmcheck/upgrades
    daemon: Add some error prefixing around reloading

Jonathan Lebon (8 PRs, 18 commits)
  daemon/upgrade: Write out new cached update (#1344)
  libglnx: Bump for copy_file_range fix (#1361)
  Release 2018.5 (#1367)
  PR: #1323
    vmcheck/override-replace: Fix status jq test
    overrides: Allow resetting inactive overrides
    buildutils: Add libglnx.m4 to .gitignore
  PR: #1324
    daemon: Factor out function for retrieving DnfSack
    daemon: Create cache dir before writing cached update
    tests/libvm: Support SSH_CONFIG env var
    daemon/upgrader: Return new deployment in deploy()
  PR: #1350
    app/status: Add --advisories flag
    app/status: Print diff/advisories with pending deployment
  PR: #1357
    daemon/upgrader: Reuse sack from core for advisories
    libpriv/core: Always load updateinfo when preparing
    app/dbus-helpers: Factor out diff/advisory printing
    app/status: Drop unused argument
  PR: #1365
    ci: Use continuous branch for now
    ci: Drop BDB1539 hack

Matthew Leeds (1 PR, 1 commit)
  README.md: Fix youtube link (#1335)

Micah Abbott (2 PRs, 2 commits)
  docs: add additional details about 'tmp-is-dir' (#1315)
  man/rpm-ostree: --check always updates RPM metadata (#1353)

Git-EVTag-v0-SHA512: bef65b5bbc7c0a57a08437a4e536978cbcfca83a2500c3737685973e29373e515baaa4922fb7bc1f6e5dec4e06557074bb67a7e902923d693abe2cfbb6a6cd98
Assets 2
Loading