5134 Commits

Author SHA1 Message Date
Colin Walters
1eab48363b pull: Assign idle_src variable before calling unref()
This should pacify Coverity, and also just "reads" better too.
2020-08-18 23:34:57 +00:00
OpenShift Merge Robot
199562fc14
Merge pull request #2149 from stb-tester/boot-self-symlink
sysroot: Support /boot on root or as seperate filesystem for syslinux and u-boot
2020-08-19 01:08:30 +02:00
OpenShift Merge Robot
b92f240e72
Merge pull request #2174 from cgwalters/bump-self
tests/inst: Bump to latest ostree and gtk-rs
2020-08-18 23:08:36 +02:00
Colin Walters
9f8c3f4400 tests/inst: Bump to latest ostree and gtk-rs
Updating our tests to the latest ostree crate is so deliciously
circular.
2020-08-18 18:00:19 +00:00
OpenShift Merge Robot
fa9942c7ad
Merge pull request #2173 from cgwalters/release
Release 2020.5
2020-08-18 19:11:02 +02:00
Colin Walters
b67f029d76 Post-release version bump 2020-08-18 15:55:47 +00:00
Colin Walters
8715989df3 Release 2020.5
Mainly to get https://github.com/ostreedev/ostree/pull/2160 out.
v2020.5
2020-08-18 15:55:21 +00:00
OpenShift Merge Robot
364556b8ae
Merge pull request #2172 from jlebon/pr/add-initrds-prep
Miscellaneous patches split out of #2155
2020-08-17 17:59:18 +02:00
OpenShift Merge Robot
543610bdd2
Merge pull request #2127 from cgwalters/destructive-rs
tests/inst: Add destructive test framework
2020-08-17 17:15:29 +02:00
Colin Walters
1101c02c2a tests/inst: Add destructive test framework
This adds infrastructure to the Rust test suite for destructive
tests, and adds a new `transactionality` test which runs
rpm-ostree in a loop (along with `ostree-finalize-staged`) and
repeatedly uses either `kill -9`, `reboot` and  `reboot -ff`.

The main goal here is to flush out any "logic errors".

So far I've validated that this passes a lot of cycles
using
```
$ kola run --qemu-image=fastbuild-fedora-coreos-ostree-qemu.qcow2 ext.ostree.destructive-rs.transactionality --debug --multiply 8 --parallel 4
```
a number of times.
2020-08-17 14:34:04 +00:00
Jonathan Lebon
10a68cd26b lib/deploy: Clarify comment re. staging API
Don't mention deprecation in the description for
`ostree_sysroot_deploy_tree` since there are legitimate use cases for it
(e.g. to create the first deployment via `ostree admin deploy`).

Instead, make the comment clearly redirect to the staging API when
booted into the sysroot.
2020-08-17 09:48:57 -04:00
Jonathan Lebon
5de3a9759f lib/deploy: Drop unneccessary function arg 2020-08-17 09:48:57 -04:00
Jonathan Lebon
e4fb7d3bb1 lib/cleanup: Drop unnecessary GEqualFunc cast 2020-08-17 09:48:57 -04:00
Jonathan Lebon
74bd136286 lib/deploy: Simplify deployment creation
Minor cleanup; we were declaring a superfluous variable.
2020-08-17 09:48:57 -04:00
Jonathan Lebon
61c544df1b lib/deploy: Avoid shadowing variable
There's already a `boot_relpath` variable in the outside scope.
2020-08-17 09:48:57 -04:00
Jonathan Lebon
52a6224606 lib/deploy: Clean up kargs override handling
Tighten up how we handle kargs here so it's more clear. When we call
`sysroot_finalize_deployment`, any karg overrides have already been set
on the bootconfig object of the deployment. So re-setting it here is
redundant and confusing.
2020-08-17 09:48:57 -04:00
OpenShift Merge Robot
83bb09ae33
Merge pull request #2170 from jprvita/for-upstream
dracut: Create reproducible images
2020-08-16 22:25:20 +02:00
João Paulo Rechi Vita
7cf1fb38b0 dracut: Create reproducible images
Without reproducible images, a rebuild of the initrd will create a
different image file (due to things like creation time of the files in
the cpio archive) even if the actual contents in it are exactly the
same, adding an unnecessary download during updates.

Adding 'reproducible=yes' avoids this and creates the same image files
for the same content.
2020-08-13 08:32:18 -07:00
OpenShift Merge Robot
ab95c0264c
Merge pull request #2168 from arithx/ci_pxe_offline
ci: add pxe-offline-install testiso scenario
2020-08-13 16:43:38 +02:00
Stephen Lowrie
82c0b4a8b8 ci: add pxe-offline-install testiso scenario 2020-08-11 00:02:12 -05:00
OpenShift Merge Robot
012af18ceb
Merge pull request #2103 from cgwalters/underlay-live
Add "transient" unlock
2020-08-07 17:29:31 -04:00
Colin Walters
f2773c1b55 Add "transient" unlock
I was thinking a bit more recently about the "live" changes
stuff https://github.com/coreos/rpm-ostree/issues/639
(particularly since https://github.com/coreos/rpm-ostree/pull/2060 )
and I realized reading the last debates in that issue that
there's really a much simpler solution; do exactly the same
thing we do for `ostree admin unlock`, except mount it read-only
by default.

Then, anything that wants to modify it does the same thing
libostree does for `/sysroot` and `/boot` as of recently; create
a new mount namespace and do the modifications there.

The advantages of this are numerous.  First, we already have
all of the code, it's basically just plumbing through a new
entry in the state enumeration and passing `MS_RDONLY` into
the `mount()` system call.

"live" changes here also naturally don't persist, unlike what
we are currently doing in rpm-ostree.
2020-08-07 18:57:56 +00:00
OpenShift Merge Robot
621e1d7394
Merge pull request #2166 from pwithnall/summary-sig-downloads
pull: Add summary-{,sig-}bytes options to ostree_repo_pull()
2020-08-07 13:24:58 -04:00
Philip Withnall
f5da67d78a pull: Add summary-{,sig-}bytes options to ostree_repo_pull()
These allow the `summary` and `summary.sig` files to be cached at a
higher layer (for example, flatpak) between related pull operations (for
example, within a single flatpak transaction). This avoids
re-downloading `summary.sig` multiple times throughout a transaction,
which increases the transaction’s latency and introduces the possibility
for inconsistency between parts of the transaction if the server changes
its `summary` file part-way through.

In particular, this should speed up flatpak transactions on machines
with high latency network connections, where network round trips have a
high impact on the latency of an overall operation.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2020-08-07 16:12:15 +01:00
Philip Withnall
bd68c7dfd7 pull: Improve formatting of pull options in documentation
Backticks improve all things.

Signed-off-by: Philip Withnall <withnall@endlessm.com>
2020-08-07 16:11:44 +01:00
OpenShift Merge Robot
13e44a6aac
Merge pull request #2163 from cgwalters/fix-ci
ci: Barf on unset umask
2020-08-05 21:20:27 +02:00
Colin Walters
1e127f2dcc ci: Barf on unset umask
Since it's just not a sane thing to do and will cause various
failures in our test suite.
2020-08-05 16:34:52 +00:00
OpenShift Merge Robot
1dedc69a46
Merge pull request #2159 from agners/show-parent
Show commit checksum of parent, if present
2020-08-04 21:54:28 +02:00
OpenShift Merge Robot
9832a36a8c
Merge pull request #2160 from cgwalters/sysroot-ro
remount: Still remount /sysroot writable if not configured ro
2020-08-02 20:53:41 -04:00
OpenShift Merge Robot
4fb5b8f85d
Merge pull request #2162 from cgwalters/fix-repo-finder
tests/repo-finder: Explicitly commit empty dir
2020-08-02 10:29:45 -04:00
OpenShift Merge Robot
769aaea725
Merge pull request #2161 from cgwalters/fix-ci
ci: Fix ISO testing
2020-08-02 09:02:06 -04:00
Colin Walters
98137403aa ci: Fix ISO testing
Regression from
5d7f897908

I'm not sure how (or if) this passed before, the job logs have
been GC'd.

This is a bit confusing but basically right now ostree/rpm-ostree's
CI jobs don't use `/srv/fcos` - it might make sense to port
these to `fcosBuild` but that needs investigation.
2020-08-02 12:55:35 +00:00
Colin Walters
f3c7834f1e tests/repo-finder: Explicitly commit empty dir
We were committing the whole tempdir, which seems to fail
in Travis because the GPG agent Unix domain socket ends up there too,
and ostree refuses to commit sockets.
2020-08-02 12:54:11 +00:00
OpenShift Merge Robot
725b287e3e
Merge pull request #2156 from jlebon/pr/clarify-ref-rev
app: Fix various CLI metavariable names
2020-08-01 15:02:23 -04:00
Colin Walters
33eeb7b9eb remount: Still remount /sysroot writable if not configured ro
Regression from 3564225917
BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1862568

We still need to remount writable if it's not configured on;
because it may need OS adjustments it needs to be opt-in.
2020-08-01 17:27:18 +00:00
Stefan Agner
512b4e6313 Show commit checksum of parent, if present
This is useful for ostree log on client side where often not the
full history of a branch is available. It is also helpful for
ostree show to show if a particular commit has a parent.
2020-07-31 21:46:58 +02:00
Jonathan Lebon
af140266d5 app: Fix various CLI metavariable names
- Use `REV` instead of `REF` in places where we meant it.
- Fix `commit --parent` actually taking a commit checksum and not a ref.
- Fix `ostree admin switch` using `REF` instead of `REFSPEC`.
2020-07-31 15:02:47 -04:00
OpenShift Merge Robot
a5409b872f
Merge pull request #2157 from agners/improve-man-pages
Improve man pages
2020-07-31 14:12:42 -04:00
OpenShift Merge Robot
2905de89c6
Merge pull request #2158 from bgilbert/testiso
ci: test FCOS PXE and ISO install
2020-07-31 13:52:59 -04:00
Benjamin Gilbert
5d7f897908 ci: test FCOS PXE and ISO install
Make sure we don't break the FCOS live image.  PXE is probably sufficient,
but also test the ISO image for good measure.
2020-07-31 06:58:04 -04:00
Stefan Agner
b94c3ae79f man: add missing options to the ostree-commit man page
Add missing parameter to the ostree-commit man page.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-07-31 11:54:19 +02:00
Stefan Agner
999f9a2b2d man: add glossary to main man page
Add glossary to define some commonly used literals throughout the ostree
man pages.

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-07-31 11:49:38 +02:00
OpenShift Merge Robot
21c9840d13
Merge pull request #2153 from cgwalters/release-2020-4
Release 2020.4
2020-07-22 16:48:44 +02:00
Colin Walters
0d91206a62 Post-release version bump 2020-07-22 14:09:26 +00:00
Colin Walters
901747f985 Release 2020.4
A lot of stuff here, new signing API is the biggest.  Let's
get a release out.
v2020.4
2020-07-21 21:48:51 +00:00
OpenShift Merge Robot
12a9161a79
Merge pull request #2152 from cgwalters/pull-fdatasync
pull: Add --per-object-fsync
2020-07-20 13:55:26 -04:00
OpenShift Merge Robot
d5968f2cb2
Merge pull request #2150 from cgwalters/pull-append-written
pull: Also append bytes written
2020-07-18 11:00:49 -04:00
Colin Walters
a615d35762 pull: Add --per-object-fsync
This is the opposite of
https://github.com/ostreedev/ostree/issues/1184

Motivated by OpenShift seeing etcd performance issues during
OS updates: https://github.com/openshift/machine-config-operator/issues/1897

Basically, if we switch to invoking `fsync()` as we go, it makes
ostree performance worse (in my tests, 31s to write 2G versus 7s if we
delay sync) but it avoids *huge* outliers in `fsync()` time for etcd.
2020-07-18 14:59:01 +00:00
Colin Walters
5b75358357 pull: Also append bytes written
This is very useful information that we get from the transaction
stats.  Append it to the final display if we're not inheriting
the transaction.
2020-07-17 17:03:08 +00:00
OpenShift Merge Robot
848411c9e3
Merge pull request #2151 from jlebon/pr/too-parallel
ci: Constrain parallel build jobs
2020-07-17 12:00:24 -04:00