Skip to content

v2017.9

@cgwalters cgwalters tagged this 25 Sep 16:59
refactoring.

On the treecompose side, a major rework of the kernel detection and
layout landed.  Building on a change that landed in libostree v2017.11:
https://github.com/ostreedev/ostree/releases/tag/v2017.11
rpm-ostree now detects and matches the Fedora default of placing
the kernel in /usr/lib/modules/$kver.
PR: https://github.com/projectatomic/rpm-ostree/pull/959
This also helps make `boot_location: "new"` work better, and it's likely
that at least the Fedora editions using rpm-ostree such as Fedora Atomic
Host will use this in the near future.

`rpm-ostree ex livefs` now ensures the system passwd database is updated,
and runs `systemd-tmpfiles` for /run,/var; this makes thing like
`rpm-ostree install httpd && rpm-ostree ex livefs && systemctl start httpd`
work out of the box.
PR: https://github.com/projectatomic/rpm-ostree/pull/996

On the bugfix side, a subtle issue led to a (client side) crash
when using the `deploy` verb.  Issue:
https://github.com/projectatomic/rpm-ostree/issues/981

SELinux labeling of `ex override` packages was fixed:
https://github.com/projectatomic/rpm-ostree/pull/993

We now detect file conflicts much earlier, rather than relying
on it happening indirectly when writing the RPM database:
https://github.com/projectatomic/rpm-ostree/pull/974
(This uses a new libostree API that was created just for it)

A lot of internal cleanups and refactoring landed in preparation for
"unified core", which is a longstanding effort; likely to appear as
a new experimental flag in the next release or two.  More information:
https://github.com/projectatomic/rpm-ostree/issues/729

```
Colin Walters (47):
      tree-wide: Some misc libglnx porting
      lib/passwd: Misc code cleanup and style porting
      bin/compose: Move treefile variable into self struct
      tests/compose: Be a bit more verbose
      bin/compose: Move /etc/{passwd,group} injection later
      lib/core: Unlink to-import RPMs before unpacking
      daemon/upgrader: Use new libostree timestamp-check option
      tree-wide: Port to new libglnx tmpdir API
      lib/bwrap: Use --die-with-parent
      app: Set GSETTINGS_BACKEND=memory early on if root
      lib/passwd: Error if presented with an unknown check-passwd value
      lib/unpacker: Port unpack function to new style
      tree-wide: Fully purge the rest of "noscripts" support
      tree-wide: A bit more libglnx porting
      tree-wide: Fix extra colon in error prefixes
      app/compose: Drop GFile usage from package install path
      lib/passwd: Port passwd checking to fd-relative
      app: Clarify message on repeated Ctrl-C
      lib/unpacker: Fix theoretical error handling case
      lib/unpacker: Drop ostree convention flag, always enable it
      lib/unpacker: Add a SKIP_EXTRANEOUS flag, use it for filesystem+rootfiles
      libpriv/passwd: Fully complete fd-relative porting
      libpriv/postprocess: Port add-files to fd-relative
      daemon/syscore: Add some error prefixing to cleanup paths
      core: Run %post before %posttrans
      postprocess: Unlink our treecompose-post out of the final /bin
      libpriv/scripts: Use gperf comments, not C comments
      unpacker: Translate /boot → /usr/lib/ostree-boot
      libpriv+daemon: Use autocleanup to abort ostree txn
      tests: Add a test case for lua scripts
      daemon: Add a policy for reload-config
      core: Use a single tmpdir/ostreetxn for relabeling
      Update libglnx, do some fstatat-noent porting
      core: Use fd-relative access to rpmdb
      scripts: Support overriding lua, use for glibc-all-langpacks
      ci: Fixate centos container image to 7.3 until rpm-md repos update
      compose: Make `boot_location: legacy` be an alias for `both`
      tests/compose: Add env variables to force caching and fast fail
      Rework treecompose kernel processing
      compose: Clear libdnf context before postprocessing
      core: Don't search for base filetriggers if no base rpmdb
      daemon/upgrader: Clear core ctx after committing
      tests/livefs: Make sure /usr/bin/ls is executable
      tests: Skip running introspection tests if built with ASAN
      ci: Sync with ostree
      livefs: Update /usr/lib/{passwd,group}, run systemd-tmpfiles
      Release 2017.9

Jonathan Lebon (27):
      libdnf: bump for metadata_expire fix
      docs/manual: be more explicit about bootloader order
      Makefile-tests.am: drop vmshell target
      ci: run the improved-sanity-test
      scripts: fix argument ordering
      libvm: set up ControlPath socket in /var/tmp
      daemon: make use of the new deployment flags
      ci: also compile tests
      scripts: squash a -Wmaybe-uninitialized
      hacking: make it easier to use a custom tree
      ci: workaround broken fedora:26 image
      vmcheck: rename build.sh to install.sh
      overlay.sh: drop hack for backup passwd files
      vmcheck: use --selinux-policy when committing
      app/libbuiltin: convert to new style
      app/upgrade: use signal to determine if changed
      Makefile-tests.am: fail on first command
      daemon/upgrader: make use of override-commit-ids
      daemon/deploy: allow redeploying livefs booted commit
      app: smarter deployment change detection
      livefs: add warning that /etc won't be preserved
      livefs: tweak warning re. /etc
      ci: don't run clang on CentOS
      libpriv/core: fix tmpdir making logic
      libpriv/core: also sort update/downgrade packages
      libpriv/postprocess: also delete semanage lock files
      libpriv/scripts: use rofiles-fuse on /etc too

Ruixin (1):
      tests/core: allow merging identical files during installation

Ruixin Bao (1):
      lib/core: Detect file name conflict before rpmdb
```

Git-EVTag-v0-SHA512: 7c5d17398a3483f7ee9594e91dcc9bd743c5e66c599f6f2b0e1b49be78f4f26b4b6b8e01dd91e1fdb7c90de067a97fbeeca513b72e3628ce1ddfe87f5cce88ec
Assets 2
Loading