ostree.git
3 years agoMerge pull request #2742 from lucab/ups/rust-regenerate-2022.6
Colin Walters [Wed, 26 Oct 2022 13:15:14 +0000 (09:15 -0400)]
Merge pull request #2742 from lucab/ups/rust-regenerate-2022.6

rust: regenerate bindings after latest release (2022.6)

3 years agoMerge pull request #2745 from lucab/ups/ci-bump-rust-linting
Colin Walters [Wed, 26 Oct 2022 13:15:01 +0000 (09:15 -0400)]
Merge pull request #2745 from lucab/ups/ci-bump-rust-linting

ci/rust: bump linting toolchain to latest stable (1.64)

3 years agoMerge pull request #2746 from lucab/ups/lib-repo-refs-error
Colin Walters [Wed, 26 Oct 2022 13:14:48 +0000 (09:14 -0400)]
Merge pull request #2746 from lucab/ups/lib-repo-refs-error

lib/repo-refs: properly return an error value

3 years agolib/repo-refs: properly return an error value
Luca BRUNO [Wed, 26 Oct 2022 11:12:37 +0000 (11:12 +0000)]
lib/repo-refs: properly return an error value

This tweaks a logic check in order to return a proper error value
when the related condition is not satisfied.

3 years agoMerge pull request #2740 from lucab/ups/lib-sign-ed25519-assertions
Colin Walters [Wed, 26 Oct 2022 10:33:04 +0000 (06:33 -0400)]
Merge pull request #2740 from lucab/ups/lib-sign-ed25519-assertions

lib/sign-ed25519: convert invariant checks to assertions

3 years agoci/rust: bump linting toolchain to latest stable (1.64)
Luca BRUNO [Wed, 26 Oct 2022 06:46:09 +0000 (06:46 +0000)]
ci/rust: bump linting toolchain to latest stable (1.64)

This bumps the Rust toolchain for clippy/rustfmt to 1.64.

3 years agorust: update manual helpers
Luca BRUNO [Mon, 24 Oct 2022 16:01:57 +0000 (16:01 +0000)]
rust: update manual helpers

3 years agoostree: manually patch generated files
Luca BRUNO [Fri, 4 Mar 2022 14:28:35 +0000 (14:28 +0000)]
ostree: manually patch generated files

This manually adds a missing `ToGlibPtr` import, which seems to be result
of some bugs in `gir` code-generation.

3 years agorust: regenerate bindings after latest release (2022.6)
Luca BRUNO [Mon, 24 Oct 2022 15:23:47 +0000 (15:23 +0000)]
rust: regenerate bindings after latest release (2022.6)

3 years agolib/sign-ed25519: convert invariant checks to assertions
Luca BRUNO [Fri, 21 Oct 2022 08:43:22 +0000 (08:43 +0000)]
lib/sign-ed25519: convert invariant checks to assertions

This converts several invariant checks to asserts. Most of the
functions in this file were already using assertions, so this aligns
the remaining few outliers to the rest.

3 years agoMerge pull request #2744 from lucab/ups/ci-memory-bump
Luca Bruno [Wed, 26 Oct 2022 09:23:29 +0000 (09:23 +0000)]
Merge pull request #2744 from lucab/ups/ci-memory-bump

ci: bump cosaPod memory requirement to 5Gi

3 years agoci: bump cosaPod memory requirement to 5Gi
Jonathan Lebon [Tue, 25 Oct 2022 13:58:01 +0000 (09:58 -0400)]
ci: bump cosaPod memory requirement to 5Gi

We're hitting memory limits when running the reprovisioning tests. We
should investigate why we need 1Gi of overhead, but for now to get
unblocked let's just bump it.

3 years agoMerge pull request #2663 from mstuehn/test-static-delta-file
Colin Walters [Wed, 19 Oct 2022 21:04:40 +0000 (17:04 -0400)]
Merge pull request #2663 from mstuehn/test-static-delta-file

lib/static-delta: document and check parameters format

3 years agorust/tests: fix static delta generation testcase
Luca BRUNO [Tue, 11 Oct 2022 09:03:40 +0000 (09:03 +0000)]
rust/tests: fix static delta generation testcase

3 years agolib/static-delta: document and check parameters format
Luca BRUNO [Tue, 11 Oct 2022 08:50:10 +0000 (08:50 +0000)]
lib/static-delta: document and check parameters format

This enhances the logic handling GVariant parameters within
`ostree_repo_static_delta_generate()`.
Several of those entries are expected to be zero-terminated values,
and this implicit assumption has been observed to be an hidden trap
in languages where strings and arrays may not carry a terminator value
(e.g. Rust).
In order to improve the situation, this makes the documentation more
explicit and actively tries to catch invalid input parameters.

3 years agoAdd test for generating static delta to file
Manuel Stühn [Thu, 30 Jun 2022 07:06:30 +0000 (09:06 +0200)]
Add test for generating static delta to file

3 years agoMerge pull request #2733 from ostreedev/dependabot/submodules/libglnx-e701578
Luca Bruno [Thu, 13 Oct 2022 15:36:28 +0000 (15:36 +0000)]
Merge pull request #2733 from ostreedev/dependabot/submodules/libglnx-e701578

build(deps): bump libglnx from `26375b5` to `e701578`

3 years agoMerge pull request #2738 from lucab/ups/lib-zipl-check-open-errors
Jonathan Lebon [Thu, 13 Oct 2022 15:22:38 +0000 (11:22 -0400)]
Merge pull request #2738 from lucab/ups/lib-zipl-check-open-errors

3 years agoci: Use new names for custom kola steps
Jonathan Lebon [Thu, 13 Oct 2022 13:18:08 +0000 (09:18 -0400)]
ci: Use new names for custom kola steps

The old `fcos*` versions are deprecated now:
https://github.com/coreos/coreos-ci-lib/pull/111

3 years agoci: Drop unnecessary outer stage
Jonathan Lebon [Thu, 13 Oct 2022 13:16:19 +0000 (09:16 -0400)]
ci: Drop unnecessary outer stage

We define stages inside of this stage, so get rid of the outer `FCOS`
stage. This should help rendering the pipeline in BlueOcean more
clearly.

3 years agoci: Bump memory request, use fcosKolaTestIso
Jonathan Lebon [Thu, 13 Oct 2022 13:14:08 +0000 (09:14 -0400)]
ci: Bump memory request, use fcosKolaTestIso

More fallout from https://github.com/coreos/coreos-ci-lib/pull/116. We
need to be more honest about how much memory we need.

While we're here, switch the `kola testiso` invocation to use
`fcosKolaTestIso` instead. This will add coverage for UEFI and UEFI
SecureBoot testing.

3 years agoMerge pull request #2737 from lucab/ups/repo-checkout-fix-uid-typo
Dan Nicholson [Thu, 13 Oct 2022 12:41:55 +0000 (06:41 -0600)]
Merge pull request #2737 from lucab/ups/repo-checkout-fix-uid-typo

lib/repo-checkout: fix typo in error message

3 years agolib/bootloader-zipl: check for errors when opening initrd
Luca BRUNO [Thu, 13 Oct 2022 10:48:38 +0000 (10:48 +0000)]
lib/bootloader-zipl: check for errors when opening initrd

This adds a missing error check when opening an initrd in s390x
Secure Execution (SE) logic.
It was detected by RH internal static checks.

3 years agolib/repo-checkout: fix typo in error message
Luca BRUNO [Thu, 13 Oct 2022 10:38:11 +0000 (10:38 +0000)]
lib/repo-checkout: fix typo in error message

This fixes a typo in an error message, resulting in a GID vs UID
mixup. It was detected by RH internal static checks.

3 years agobuild(deps): bump libglnx from `26375b5` to `e701578`
dependabot[bot] [Tue, 11 Oct 2022 12:29:06 +0000 (12:29 +0000)]
build(deps): bump libglnx from `26375b5` to `e701578`

Bumps libglnx from `26375b5` to `e701578`.

---
updated-dependencies:
- dependency-name: libglnx
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
3 years agoMerge pull request #2730 from ostreedev/release-2022.6
Luca Bruno [Fri, 7 Oct 2022 16:40:10 +0000 (16:40 +0000)]
Merge pull request #2730 from ostreedev/release-2022.6

Release 2022.6

3 years agoconfigure: post-release version bump
Luca BRUNO [Fri, 7 Oct 2022 07:56:24 +0000 (07:56 +0000)]
configure: post-release version bump

3 years agoRelease 2022.6
Luca BRUNO [Fri, 7 Oct 2022 07:54:09 +0000 (07:54 +0000)]
Release 2022.6

3 years agoMerge pull request #2721 from cgwalters/link-otto
Luca Bruno [Wed, 28 Sep 2022 21:54:53 +0000 (21:54 +0000)]
Merge pull request #2721 from cgwalters/link-otto

README.md: Link otto

3 years agoMerge pull request #2717 from mangelajo/support-whiteouts
Colin Walters [Wed, 28 Sep 2022 12:35:24 +0000 (08:35 -0400)]
Merge pull request #2717 from mangelajo/support-whiteouts

Support overlayfs whiteouts on checkout

3 years agoREADME.md: Link otto
Colin Walters [Wed, 28 Sep 2022 12:30:18 +0000 (08:30 -0400)]
README.md: Link otto

Another project in the ostree/container space.

3 years agoSupport overlayfs whiteouts on checkout
Miguel Angel Ajo [Mon, 19 Sep 2022 15:15:24 +0000 (17:15 +0200)]
Support overlayfs whiteouts on checkout

Introduces an intermediate format for overlayfs storage, where
.wh-ostree. prefixed files will be converted into char 0:0
whiteout devices used by overlayfs to mark deletions across layers.

The CI scripts now uses a volume for the scratch directories
previously in /var/tmp otherwise we cannot create whiteout
devices into an overlayfs mounted filesystem.

Related-Issue: #2712

3 years agoMerge pull request #2720 from lucab/ups/lib-deploy-ignore-result
Luca Bruno [Mon, 26 Sep 2022 12:40:04 +0000 (12:40 +0000)]
Merge pull request #2720 from lucab/ups/lib-deploy-ignore-result

lib/sysroot-deploy: explicitly handle `g_variant_lookup` results

3 years agolib/sysroot-deploy: explicitly handle `g_variant_lookup` results
Luca BRUNO [Mon, 26 Sep 2022 07:42:12 +0000 (07:42 +0000)]
lib/sysroot-deploy: explicitly handle `g_variant_lookup` results

This explicitly ignores the results of two optional variant lookups,
in order to pacify a RHT internal static analyzer.

3 years agoMerge pull request #2718 from lucab/ups/repo-initialize-valid-bootloader
Colin Walters [Fri, 23 Sep 2022 15:09:13 +0000 (11:09 -0400)]
Merge pull request #2718 from lucab/ups/repo-initialize-valid-bootloader

lib/repo: properly initialize boolean variable

3 years agolib/repo: properly initialize boolean variable
Luca BRUNO [Fri, 23 Sep 2022 13:02:00 +0000 (13:02 +0000)]
lib/repo: properly initialize boolean variable

This initializes a boolean variable that was previously left
uninitialized. It was detected by a RHT internal static analyzer.

3 years agoMerge pull request #2716 from dbnicholson/max-metadata-size-doc
Colin Walters [Sun, 18 Sep 2022 19:04:54 +0000 (15:04 -0400)]
Merge pull request #2716 from dbnicholson/max-metadata-size-doc

lib/pull: Fix max-metadata-size documentation

3 years agolib/pull: Fix max-metadata-size documentation
Dan Nicholson [Sun, 18 Sep 2022 18:13:31 +0000 (12:13 -0600)]
lib/pull: Fix max-metadata-size documentation

The documented option is incorrect and has been since it's introduction
in 2c55bc6997.

3 years agoMerge pull request #2714 from andreamtp/patch-1
Dan Nicholson [Sat, 17 Sep 2022 18:12:09 +0000 (12:12 -0600)]
Merge pull request #2714 from andreamtp/patch-1

Fix recursive git archive reference

3 years agoFix recursive git archive reference
Andrea Perotti [Sat, 17 Sep 2022 09:00:46 +0000 (11:00 +0200)]
Fix recursive git archive reference

Broken link for "recursive git archive" example

3 years agoMerge pull request #2711 from lucab/ups/sign-assertions
Colin Walters [Fri, 9 Sep 2022 14:05:27 +0000 (10:05 -0400)]
Merge pull request #2711 from lucab/ups/sign-assertions

lib/sign: convert invariant checks to assertions

3 years agolib/sign: convert invariant checks to assertions
Luca BRUNO [Fri, 9 Sep 2022 13:20:43 +0000 (13:20 +0000)]
lib/sign: convert invariant checks to assertions

This converts several invariant checks to asserts. Most of the
functions in this file were already using assertions, so this aligns
the remaining few outliers to the rest.

3 years agoMerge pull request #2709 from lucab/ups/otutils-variant-builder-error
Luca Bruno [Thu, 8 Sep 2022 14:41:53 +0000 (14:41 +0000)]
Merge pull request #2709 from lucab/ups/otutils-variant-builder-error

otutil: add error handling to variant builders

3 years agootutil: add error handling to variant builders
Luca BRUNO [Thu, 8 Sep 2022 13:53:05 +0000 (13:53 +0000)]
otutil: add error handling to variant builders

This enhances a bunch of helpers related to GVariant building, in
order to properly handle errors and avoid some potential cases of
unexpected NULL results.

3 years agoMerge pull request #2708 from nikita-dubrovskii/sh_to_c
Colin Walters [Thu, 8 Sep 2022 11:45:04 +0000 (07:45 -0400)]
Merge pull request #2708 from nikita-dubrovskii/sh_to_c

s390x: drop shell code for `initrd` modification in SE case

3 years agos390x: use 'libarchive' to modify initrd in SE case
Nikita Dubrovskii [Mon, 5 Sep 2022 12:54:03 +0000 (14:54 +0200)]
s390x: use 'libarchive' to modify initrd in SE case

3 years agoMerge pull request #2710 from lucab/ups/lib-mtree-redundant-validation
Luca Bruno [Wed, 7 Sep 2022 13:24:36 +0000 (13:24 +0000)]
Merge pull request #2710 from lucab/ups/lib-mtree-redundant-validation

lib/mtree: drop redundant name checks

3 years agolib/mtree: drop redundant name checks
Luca BRUNO [Wed, 7 Sep 2022 12:33:37 +0000 (12:33 +0000)]
lib/mtree: drop redundant name checks

This drops several NULL checks against filename input argument.
Those checks are both redundant (as filename validation already
checks for that) and dangerous (as they return early without
setting an error value).

3 years agoMerge pull request #2707 from lucab/ups/libostree-bootloader-asserts
Luca Bruno [Tue, 6 Sep 2022 00:36:11 +0000 (00:36 +0000)]
Merge pull request #2707 from lucab/ups/libostree-bootloader-asserts

lib/bootloader: assert invariants

3 years agos390x: simplify 's390x-se-luks-gencpio' script
Nikita Dubrovskii [Mon, 5 Sep 2022 10:08:35 +0000 (12:08 +0200)]
s390x: simplify 's390x-se-luks-gencpio' script

3 years agoMerge pull request #2706 from git-bruh/main
Luca Bruno [Mon, 5 Sep 2022 09:29:29 +0000 (09:29 +0000)]
Merge pull request #2706 from git-bruh/main

ostree-fetcher-curl: check for HTTP2 support before trying to use it

3 years agolib/bootloader: assert invariants
Luca BRUNO [Mon, 5 Sep 2022 09:22:26 +0000 (09:22 +0000)]
lib/bootloader: assert invariants

This tweaks some invariants checks into full assertions, in order
to avoid returning to the caller in case of known invalid states.

3 years agos390x: ensure both 'root' and 'boot' luks keys exist
Nikita Dubrovskii [Thu, 1 Sep 2022 14:34:48 +0000 (16:34 +0200)]
s390x: ensure both 'root' and 'boot' luks keys exist

3 years agoostree-fetcher-curl: check for HTTP2 support before trying to use it
git-bruh [Sat, 3 Sep 2022 07:20:00 +0000 (12:50 +0530)]
ostree-fetcher-curl: check for HTTP2 support before trying to use it

3 years agoMerge pull request #2704 from cgwalters/finalize-no-sigterm
Dan Nicholson [Tue, 30 Aug 2022 22:32:46 +0000 (16:32 -0600)]
Merge pull request #2704 from cgwalters/finalize-no-sigterm

finalize-staged: Don't listen to `SIGTERM`, just let kernel exit us

3 years agofinalize-staged: Don't listen to `SIGTERM`, just let kernel exit us
Colin Walters [Tue, 30 Aug 2022 20:23:38 +0000 (16:23 -0400)]
finalize-staged: Don't listen to `SIGTERM`, just let kernel exit us

Followup from discussion in
https://github.com/ostreedev/ostree/pull/2544#discussion_r958840936

This is more efficient; no need to have the kernel context switch
us in at shutdown time just so we can turn around and call
`exit()`.

3 years agoMerge pull request #2544 from dbnicholson/finalize-block
Colin Walters [Tue, 30 Aug 2022 19:12:32 +0000 (15:12 -0400)]
Merge pull request #2544 from dbnicholson/finalize-block

finalize-staged: Ensure /boot and /sysroot automounts don't expire

3 years agofinalize-staged: Ensure /boot automount doesn't expire
Dan Nicholson [Wed, 16 Feb 2022 22:58:58 +0000 (15:58 -0700)]
finalize-staged: Ensure /boot automount doesn't expire

If `/boot` is an automount, then the unit will be stopped as soon as the
automount expires. That's would defeat the purpose of using systemd to
delay finalizing the deployment until shutdown. This is not uncommon as
`systemd-gpt-auto-generator` will create an automount unit for `/boot`
when it's the EFI System Partition and there's no fstab entry.

To ensure that systemd doesn't stop the service early when the `/boot`
automount expires, introduce a new unit that holds `/boot` open until
it's sent `SIGTERM`. This uses a new `--hold` option for
`finalize-staged` that loads but doesn't lock the sysroot. A separate
unit is used since we want the process to remain active throughout the
finalization run in `ExecStop`. That wouldn't work if it was specified
in `ExecStart` in the same unit since it would be killed before the
`ExecStop` action was run.

Fixes: #2543
3 years agomain: Factor out sysroot loading
Dan Nicholson [Tue, 30 Aug 2022 14:38:36 +0000 (08:38 -0600)]
main: Factor out sysroot loading

It can be useful to parse the options and initialize the sysroot without
actually loading it until later. Factor out the sysroot loading to a new
`ostree_admin_sysroot_load` and add a new
`OSTREE_ADMIN_BUILTIN_FLAG_NO_LOAD` flag to accommodate this.

3 years agoMerge pull request #2695 from HuijingHei/kargs-stage
Colin Walters [Mon, 29 Aug 2022 12:23:15 +0000 (08:23 -0400)]
Merge pull request #2695 from HuijingHei/kargs-stage

Fix `ostree admin kargs edit-in-place` assertion when deployments are pending

3 years agoFix `ostree admin kargs edit-in-place` assertion when deployments
Huijing Hei [Fri, 19 Aug 2022 03:31:46 +0000 (11:31 +0800)]
Fix `ostree admin kargs edit-in-place` assertion when deployments
are pending

This is to support pending deployments instead of rasing assertion.
For example:
```
$ sudo rpm-ostree kargs --append=foo=bar
$ sudo ostree admin kargs edit-in-place --append-if-missing=foobar
```
After reboot we get both `foo=bar foobar`.

Fix https://github.com/ostreedev/ostree/issues/2679

3 years agoMerge pull request #2701 from cgwalters/bind-list-commits
Colin Walters [Wed, 24 Aug 2022 16:03:58 +0000 (12:03 -0400)]
Merge pull request #2701 from cgwalters/bind-list-commits

 rust: Bind `ostree_repo_list_commits_starting_with`

3 years agorust: Bind `ostree_repo_list_commits_starting_with`
Colin Walters [Mon, 22 Aug 2022 18:10:16 +0000 (14:10 -0400)]
rust: Bind `ostree_repo_list_commits_starting_with`

I wanted to use this as a fallback for
https://github.com/ostreedev/ostree-rs-ext/pull/351/commits/30dee81c22ad5cb90e77198d3ddbcc25d388afb5

3 years agoMerge pull request #2702 from thesamesam/bashism
Luca Bruno [Wed, 24 Aug 2022 13:24:35 +0000 (13:24 +0000)]
Merge pull request #2702 from thesamesam/bashism

buildutil/glibtests.m4: fix bashism

3 years agoMerge pull request #2700 from jlebon/pr/staged-docs
Luca Bruno [Wed, 24 Aug 2022 13:17:41 +0000 (13:17 +0000)]
Merge pull request #2700 from jlebon/pr/staged-docs

docs: Add section about staged deployments

3 years agobuildutil/glibtests.m4: fix bashism
Sam James [Tue, 23 Aug 2022 22:37:06 +0000 (23:37 +0100)]
buildutil/glibtests.m4: fix bashism

configure scripts need to be runnable with a POSIX-compliant /bin/sh.

On many (but not all!) systems, /bin/sh is provided by Bash, so errors
like this aren't spotted. Notably Debian defaults to /bin/sh provided
by dash which doesn't tolerate such bashisms as '=='.

This retains compatibility with bash.

Fixes configure warnings/errors like:
```

checking whether to build static libraries... no
./configure: 14795: test: unexpected operator
```

Signed-off-by: Sam James <sam@gentoo.org>
3 years agoMerge pull request #2698 from cgwalters/update-gir
Jonathan Lebon [Tue, 23 Aug 2022 18:53:36 +0000 (14:53 -0400)]
Merge pull request #2698 from cgwalters/update-gir

3 years agodocs: Add section about staged deployments
Jonathan Lebon [Tue, 23 Aug 2022 14:56:28 +0000 (10:56 -0400)]
docs: Add section about staged deployments

I was explaining staged deployments to someone today and was looking for
a doc but we didn't have any. Fix that.

3 years agoMerge pull request #2699 from cgwalters/drop-debian-testing
Dan Nicholson [Tue, 23 Aug 2022 07:35:40 +0000 (01:35 -0600)]
Merge pull request #2699 from cgwalters/drop-debian-testing

ci: Also drop seccomp on debian testing

3 years agoci: Also drop seccomp on debian testing
Colin Walters [Mon, 22 Aug 2022 19:59:33 +0000 (15:59 -0400)]
ci: Also drop seccomp on debian testing

I didn't deep dive into debugging this but I'm pretty sure it's
 https://gitlab.gnome.org/GNOME/glib/-/issues/2580
which is us having an older Docker in the middle here.

3 years agorust: Update to latest git
Colin Walters [Mon, 22 Aug 2022 18:23:03 +0000 (14:23 -0400)]
rust: Update to latest git

In the future I may try to add CI that requires this to be
sync'd...

3 years agoMerge pull request #2692 from GeorgesStavracas/gbsneto/transaction-leak
Colin Walters [Mon, 22 Aug 2022 18:25:07 +0000 (14:25 -0400)]
Merge pull request #2692 from GeorgesStavracas/gbsneto/transaction-leak

lib/commit: Unref repo on success

3 years agoMerge pull request #2697 from tkfu/docs/add-related-projects
Colin Walters [Fri, 19 Aug 2022 14:53:56 +0000 (10:53 -0400)]
Merge pull request #2697 from tkfu/docs/add-related-projects

docs: Add aktualizr and TorizonCore to related projects

3 years agodocs: Add aktualizr and TorizonCore to related projects
Jon Oster [Fri, 19 Aug 2022 14:27:01 +0000 (16:27 +0200)]
docs: Add aktualizr and TorizonCore to related projects

Signed-off-by: Jon Oster <jon.oster@toradex.com>
3 years agoMerge pull request #2693 from lucab/ups/libostree-fix-annotation
Joseph Marrero Corchado [Fri, 19 Aug 2022 11:31:24 +0000 (07:31 -0400)]
Merge pull request #2693 from lucab/ups/libostree-fix-annotation

libostree: fix a typo in annotation

3 years agolibostree: fix a typo in annotation
Luca BRUNO [Fri, 19 Aug 2022 10:39:09 +0000 (10:39 +0000)]
libostree: fix a typo in annotation

This fixes a typo in the `allow-none` annotation on
`ostree_sysroot_deployment_set_kargs_in_place` argument.

3 years agoMerge pull request #2691 from cgwalters/rev-parse-single
Jonathan Lebon [Thu, 18 Aug 2022 16:07:19 +0000 (12:07 -0400)]
Merge pull request #2691 from cgwalters/rev-parse-single

3 years agocli/rev-parse: Add `--single` option
Colin Walters [Tue, 16 Aug 2022 21:27:46 +0000 (17:27 -0400)]
cli/rev-parse: Add `--single` option

In the current "ostree native container" flow, we're inserting
a commit object into the repo but with no refs.

We have hacks in a few places to find the commit digest via e.g.
`find repo/objects -name *.commit` but that's a horrible hack.
Add `ostree rev-parse --single` which will print the single commit,
and error out if there is not exactly one commit.

Co-authored-by: Jonathan Lebon <jonathan@jlebon.com>
3 years agoMerge pull request #2690 from cgwalters/cli-less-goto-1
Luca Bruno [Wed, 17 Aug 2022 07:21:55 +0000 (07:21 +0000)]
Merge pull request #2690 from cgwalters/cli-less-goto-1

cli/rev-parse: Port to new code style

3 years agolib/commit: Unref repo on success
Georges Basile Stavracas Neto [Tue, 16 Aug 2022 22:54:29 +0000 (19:54 -0300)]
lib/commit: Unref repo on success

Commit 540e60c3 introduced _ostree_repo_auto_transaction_new(), a
private constructor to OstreeRepoAutoTransaction, by factoring out
some code from _ostree_repo_auto_transaction_start(). This factored
code increased the refcount of the 'repo' variable.

Subsequent commit 71304e854c made ostree_repo_prepare_transaction()
use ths newly introduced constructor. However, in this function, the
happy path assumed no ref was taken, and therefore did not unref it.
Commit 71304e854c didn't add the corresponding unref either.

This leaks a reference to OstreeRepo when calling
ostree_repo_prepare_transaction().

Plug this leak by using g_clear_object() to clear the repo field
of OstreeRepoAutoTransaction, instead of simply setting it to NULL.

Closes https://github.com/flatpak/flatpak/issues/4928

3 years agocli/rev-parse: Port to new code style
Colin Walters [Tue, 16 Aug 2022 21:11:30 +0000 (17:11 -0400)]
cli/rev-parse: Port to new code style

Prep for future changes.

3 years agoMerge pull request #2684 from ostreedev/dependabot/submodules/libglnx-26375b5
Jonathan Lebon [Tue, 16 Aug 2022 13:03:07 +0000 (09:03 -0400)]
Merge pull request #2684 from ostreedev/dependabot/submodules/libglnx-26375b5

3 years agobuild(deps): bump libglnx from `c59eb27` to `26375b5`
dependabot[bot] [Tue, 16 Aug 2022 07:28:21 +0000 (07:28 +0000)]
build(deps): bump libglnx from `c59eb27` to `26375b5`

Bumps libglnx from `c59eb27` to `26375b5`.

---
updated-dependencies:
- dependency-name: libglnx
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
3 years agoMerge pull request #2689 from jlebon/pr/ficlone-direct-payload
Colin Walters [Mon, 15 Aug 2022 22:33:55 +0000 (18:33 -0400)]
Merge pull request #2689 from jlebon/pr/ficlone-direct-payload

lib/commit: Directly use FICLONE for payload link

3 years agotests/kolainst/staged-deploy: parse `rpm-ostree status --json` instead
Jonathan Lebon [Mon, 15 Aug 2022 21:50:11 +0000 (17:50 -0400)]
tests/kolainst/staged-deploy: parse `rpm-ostree status --json` instead

Don't parse `rpm-ostree status` output, it's not meant for that. Use
`--json` output instead.

While we're here, fix an obsolete reference to Ansible.

Related: https://github.com/coreos/rpm-ostree/pull/3938

3 years agolib/commit: Directly use FICLONE for payload link
Jonathan Lebon [Mon, 15 Aug 2022 17:54:35 +0000 (13:54 -0400)]
lib/commit: Directly use FICLONE for payload link

The idea of payload linking is to reflink between objects where
possible. Instead of relying on `glnx_regfile_copy_bytes` to hit the
`FICLONE` path, just call `FICLONE` directly. At that point in the code,
we've already established that the source and dest repos are on the same
filesystem and that it supports `FICLONE`.

Related: https://gitlab.gnome.org/GNOME/libglnx/-/merge_requests/41
Related: https://github.com/ostreedev/ostree/pull/2684#issuecomment-1204068437

3 years agoMerge pull request #2688 from LukasKalbertodt/main
Colin Walters [Sat, 13 Aug 2022 18:02:07 +0000 (14:02 -0400)]
Merge pull request #2688 from LukasKalbertodt/main

Update to `libtest-mimic` 0.5.0

3 years agoUpdate to `libtest-mimic` 0.5.0
Lukas Kalbertodt [Sat, 13 Aug 2022 14:14:23 +0000 (16:14 +0200)]
Update to `libtest-mimic` 0.5.0

3 years agoMerge pull request #2686 from cgwalters/include-cleanups
Luca Bruno [Thu, 4 Aug 2022 07:02:08 +0000 (07:02 +0000)]
Merge pull request #2686 from cgwalters/include-cleanups

Handle conflicts between newer glibc and kernel headers

3 years agoMove FIFREEZE/FITHAW ioctl invocations into linuxfsutil.c
Colin Walters [Wed, 3 Aug 2022 14:43:43 +0000 (10:43 -0400)]
Move FIFREEZE/FITHAW ioctl invocations into linuxfsutil.c

Should help avoid conflicts between glibc and linux headers.

Closes: https://github.com/ostreedev/ostree/issues/2685
3 years agoRemove unused `linux/fs.h` includes
Colin Walters [Wed, 3 Aug 2022 14:37:40 +0000 (10:37 -0400)]
Remove unused `linux/fs.h` includes

Prep for fixing conflicts introduced by newer glibc.
cc https://github.com/ostreedev/ostree/issues/2685

3 years agoMerge pull request #2683 from cgwalters/sync-deny
Luca Bruno [Wed, 3 Aug 2022 11:41:18 +0000 (11:41 +0000)]
Merge pull request #2683 from cgwalters/sync-deny

deny.toml: Add `Unicode-DFS-2016`

3 years agodeny.toml: Add `Unicode-DFS-2016`
Colin Walters [Mon, 1 Aug 2022 18:43:31 +0000 (14:43 -0400)]
deny.toml: Add `Unicode-DFS-2016`

This is used by the unicode crate now and is definitely a compatible
FOSS license.

3 years agoMerge pull request #2678 from cgwalters/release-2022-5
Colin Walters [Fri, 22 Jul 2022 20:11:20 +0000 (16:11 -0400)]
Merge pull request #2678 from cgwalters/release-2022-5

Release 2022 5

3 years agorust-bindings: Fix `cargo fmt`
Colin Walters [Fri, 22 Jul 2022 19:19:43 +0000 (15:19 -0400)]
rust-bindings: Fix `cargo fmt`

3 years agoconfigure: post-release version bump
Colin Walters [Fri, 22 Jul 2022 19:09:07 +0000 (15:09 -0400)]
configure: post-release version bump

3 years agoRelease 2022.5
Colin Walters [Fri, 22 Jul 2022 19:08:25 +0000 (15:08 -0400)]
Release 2022.5

3 years agoMerge pull request from GHSA-gqf4-p3gv-g8vw
Colin Walters [Fri, 22 Jul 2022 19:05:27 +0000 (15:05 -0400)]
Merge pull request from GHSA-gqf4-p3gv-g8vw

Fix sign ed25519 verify

3 years agoMerge pull request #2675 from HuijingHei/update-doc
Luca Bruno [Fri, 15 Jul 2022 18:25:13 +0000 (18:25 +0000)]
Merge pull request #2675 from HuijingHei/update-doc

Update doc about adding new function to libostree

3 years agoMerge pull request #2676 from render-se/debos-docs
Colin Walters [Fri, 15 Jul 2022 18:24:25 +0000 (14:24 -0400)]
Merge pull request #2676 from render-se/debos-docs

add debos to readme distribution build tools