Skip to content

Commit

Permalink
Merge pull request #3091 from cgwalters/fix-soup3
Browse files Browse the repository at this point in the history
build-sys: Enable libsoup3 by default if installed
  • Loading branch information
ericcurtin authored Nov 10, 2023
2 parents 331bc17 + bc62fd5 commit 2997377
Show file tree
Hide file tree
Showing 5 changed files with 32 additions and 17 deletions.
29 changes: 20 additions & 9 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -155,17 +155,26 @@ AS_IF([test x$enable_http2 != xno ], [
SOUP3_DEPENDENCY="libsoup-3.0 >= 3.0.0"
AC_ARG_WITH(soup3,
AS_HELP_STRING([--with-soup3], [Use libsoup3 @<:@default=no@:>@]),
[], [with_soup3=no])
[], [with_soup3=check])
AS_IF([test x$with_soup3 != xno], [
PKG_CHECK_MODULES(OT_DEP_SOUP3, $SOUP3_DEPENDENCY)
with_soup3=yes
AC_DEFINE([HAVE_LIBSOUP3], 1, [Define if we have libsoup3])
OSTREE_FEATURES="$OSTREE_FEATURES libsoup3"
with_soup_default=no
dnl soup3 always supports client certs
have_libsoup_client_certs=yes
AC_MSG_CHECKING([for $SOUP3_DEPENDENCY])
PKG_CHECK_EXISTS($SOUP3_DEPENDENCY, have_soup3=yes, have_soup3=no)
AC_MSG_RESULT([$have_soup3])
AS_IF([ test x$have_soup3 = xno && test x$with_soup3 != xcheck], [
AC_MSG_ERROR([libsoup3 is enabled but could not be found])
])
AS_IF([test x$have_soup3 = xyes], [
with_soup3=yes
PKG_CHECK_MODULES(OT_DEP_SOUP3, $SOUP3_DEPENDENCY)
AC_DEFINE([HAVE_LIBSOUP3], 1, [Define if we have libsoup3])
OSTREE_FEATURES="$OSTREE_FEATURES libsoup3"
dnl And disable libsoup2
with_soup_default=no
dnl soup3 always supports client certs
have_libsoup_client_certs=yes
], [with_soup3=no])
], [with_soup_default=check])
AM_CONDITIONAL(USE_LIBSOUP3, test x$with_soup3 != xno)
AM_CONDITIONAL(USE_LIBSOUP3, test x$with_soup3 = xyes)

dnl When bumping the libsoup-2.4 dependency, remember to bump
dnl SOUP_VERSION_MIN_REQUIRED and SOUP_VERSION_MAX_ALLOWED in
Expand Down Expand Up @@ -704,6 +713,8 @@ echo "
introspection: $found_introspection
rofiles-fuse: $enable_rofiles_fuse
HTTP backend: $fetcher_backend
libsoup: $with_soup
libsoup3: $with_soup3
SELinux: $with_selinux
fs-verity: $ac_cv_header_linux_fsverity_h
cryptographic checksums: $with_crypto
Expand Down
12 changes: 7 additions & 5 deletions tests/kolainst/destructive/boot-automount.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,8 @@ EOF
# Check that the finalize and hold services succeeded in the
# previous boot. Dump them to the test log to help debugging.
prepare_tmpdir
journalctl -b -1 -o short-monotonic \
prev_bootid=$(journalctl --list-boots -o json |jq -r '.[] | select(.index == -1) | .boot_id')
journalctl -b "${prev_bootid}" -o short-monotonic \
-u ostree-finalize-staged.service \
-u ostree-finalize-staged-hold.service \
-u boot.mount \
Expand All @@ -72,10 +73,11 @@ EOF

# Check that the hold service remained active and kept /boot mounted until
# the finalize service completed.
finalize_stopped=$(journalctl -b -1 -o json -g Stopped -u ostree-finalize-staged.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
hold_stopping=$(journalctl -b -1 -o json -g Stopping -u ostree-finalize-staged-hold.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
hold_stopped=$(journalctl -b -1 -o json -g Stopped -u ostree-finalize-staged-hold.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
boot_unmounting=$(journalctl -b -1 -o json -g Unmounting -u boot.mount | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
prev_bootid=$(journalctl --list-boots -o json |jq -r '.[] | select(.index == -1) | .boot_id')
finalize_stopped=$(journalctl -b $prev_bootid -o json -g Stopped -u ostree-finalize-staged.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
hold_stopping=$(journalctl -b $prev_bootid -o json -g Stopping -u ostree-finalize-staged-hold.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
hold_stopped=$(journalctl -b $prev_bootid -o json -g Stopped -u ostree-finalize-staged-hold.service | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
boot_unmounting=$(journalctl -b $prev_bootid -o json -g Unmounting -u boot.mount | tail -n1 | jq -r .__MONOTONIC_TIMESTAMP)
test "${finalize_stopped}" -lt "${hold_stopping}"
test "${hold_stopped}" -lt "${boot_unmounting}"
;;
Expand Down
3 changes: 2 additions & 1 deletion tests/kolainst/destructive/staged-delay.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ rpm-ostree kargs --append=somedummykarg=1
;;

"2")
journalctl -b -1 -u ostree-finalize-staged > logs.txt
prev_bootid=$(journalctl --list-boots -o json |jq -r '.[] | select(.index == -1) | .boot_id')
journalctl -b $prev_bootid -u ostree-finalize-staged > logs.txt
assert_file_has_content_literal logs.txt 'ostree-finalize-staged found /boot/loader/entries'
# older systemd doesn't output the success message
if systemctl --version | head -1 | grep -qF -e 'systemd 239'; then
Expand Down
3 changes: 2 additions & 1 deletion tests/kolainst/destructive/staged-deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,8 @@ EOF
# Check that deploy-staged service worked
rpm-ostree status
# Assert that the previous boot had a journal entry for it
journalctl -b "-1" -u ostree-finalize-staged.service > svc.txt
prev_bootid=$(journalctl --list-boots -o json |jq -r '.[] | select(.index == -1) | .boot_id')
journalctl -b $prev_bootid -u ostree-finalize-staged.service > svc.txt
assert_file_has_content svc.txt 'Bootloader updated; bootconfig swap: yes;.*deployment count change: 1'
# Also validate ignoring socket and fifo
assert_file_has_content svc.txt 'Ignoring.*during /etc merge:.*sock-to-ignore'
Expand Down
2 changes: 1 addition & 1 deletion tests/kolainst/destructive/unlock-transient.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ case "${AUTOPKGTEST_REBOOT_MARK:-}" in
fatal "modified /usr"
fi
# But, we can affect it in a new mount namespace
unshare -m -- /bin/sh -c 'mount -o remount,rw /usr && echo hello from transient unlock >'"${testfile}"
unshare -m -- /bin/sh -c 'mount --options-source=disable -o remount,rw /usr && echo hello from transient unlock >'"${testfile}"
assert_file_has_content "${testfile}" "hello from transient unlock"
# Still can't write to it from the outer namespace
if touch ${testfile} || rm -v "${testfile}" 2>/dev/null; then
Expand Down

0 comments on commit 2997377

Please sign in to comment.