mirror of
https://github.com/ostreedev/ostree.git
synced 2024-12-22 17:35:55 +03:00
Merge pull request #2962 from cgwalters/os-init-remount
os-init: Create a mount namespace
This commit is contained in:
commit
09160c1a2b
@ -38,9 +38,8 @@ ot_admin_builtin_os_init (int argc, char **argv, OstreeCommandInvocation *invoca
|
||||
|
||||
g_autoptr (OstreeSysroot) sysroot = NULL;
|
||||
if (!ostree_admin_option_context_parse (context, options, &argc, &argv,
|
||||
OSTREE_ADMIN_BUILTIN_FLAG_SUPERUSER
|
||||
| OSTREE_ADMIN_BUILTIN_FLAG_UNLOCKED,
|
||||
invocation, &sysroot, cancellable, error))
|
||||
OSTREE_ADMIN_BUILTIN_FLAG_SUPERUSER, invocation, &sysroot,
|
||||
cancellable, error))
|
||||
return FALSE;
|
||||
|
||||
if (!ostree_sysroot_ensure_initialized (sysroot, cancellable, error))
|
||||
|
@ -24,6 +24,7 @@ const TESTS: &[StaticTest] = &[
|
||||
test!(sysroot::itest_sysroot_ro),
|
||||
test!(sysroot::itest_immutable_bit),
|
||||
test!(sysroot::itest_tmpfiles),
|
||||
test!(sysroot::itest_osinit_unshare),
|
||||
test!(repobin::itest_basic),
|
||||
test!(repobin::itest_nofifo),
|
||||
test!(repobin::itest_mtime),
|
||||
|
@ -6,6 +6,7 @@ use std::path::Path;
|
||||
use anyhow::Result;
|
||||
use ostree_ext::prelude::*;
|
||||
use ostree_ext::{gio, ostree};
|
||||
use xshell::cmd;
|
||||
|
||||
use crate::test::*;
|
||||
|
||||
@ -55,3 +56,14 @@ pub(crate) fn itest_tmpfiles() -> Result<()> {
|
||||
assert_eq!(metadata.permissions().mode() & !libc::S_IFMT, 0o755);
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub(crate) fn itest_osinit_unshare() -> Result<()> {
|
||||
if skip_non_ostree_host() {
|
||||
return Ok(());
|
||||
}
|
||||
let sh = xshell::Shell::new()?;
|
||||
cmd!(sh, "ostree admin os-init ostreetestsuite").run()?;
|
||||
let metadata = Path::new("/run/ostree").metadata()?;
|
||||
assert_eq!(metadata.permissions().mode() & !libc::S_IFMT, 0o755);
|
||||
Ok(())
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user