Skip to content

Commit c808900

Browse files
authored
Merge pull request #5394 from cgwalters/fix-usermod
fix(compose): move usermod sysusers.d fragments to correct directory
2 parents c40f836 + a13866e commit c808900

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

rust/src/builtins/scriptlet_intercept/usermod.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,8 @@ pub(crate) fn entrypoint(args: &[&str]) -> Result<()> {
3434
};
3535

3636
let rootdir = Dir::open_ambient_dir("/", cap_std::ambient_authority())?;
37-
let conf_dir = common::open_create_sysusers_dir(&rootdir)?;
3837
for secondary_group in groups {
39-
generate_sysusers_fragment(&conf_dir, username, secondary_group)?;
38+
generate_sysusers_fragment(&rootdir, username, secondary_group)?;
4039
}
4140

4241
Ok(())
@@ -73,14 +72,15 @@ fn cli_cmd() -> Command {
7372
group
7473
)]
7574
pub(crate) fn generate_sysusers_fragment(
76-
conf_dir: &Dir,
75+
rootdir: &Dir,
7776
username: &str,
7877
group: &str,
7978
) -> Result<bool> {
8079
// The filename of the configuration fragment is in fact a public
8180
// API, because users may have masked it in /etc. Do not change this.
8281
let filename = format!("40-rpmostree-pkg-usermod-{username}-{group}.conf");
8382

83+
let conf_dir = common::open_create_sysusers_dir(rootdir)?;
8484
if conf_dir.try_exists(&filename)? {
8585
return Ok(false);
8686
}
@@ -137,15 +137,14 @@ mod test {
137137
#[test]
138138
fn test_fragment_generation() {
139139
let tmpdir = cap_tempfile::tempdir(cap_tempfile::ambient_authority()).unwrap();
140-
let conf_dir = common::open_create_sysusers_dir(&tmpdir).unwrap();
141140

142141
let testcases = [
143142
("testuser", "bar", true),
144143
("testuser", "bar", false),
145144
("testuser", "other", true),
146145
];
147146
for entry in testcases {
148-
let generated = generate_sysusers_fragment(&conf_dir, entry.0, entry.1).unwrap();
147+
let generated = generate_sysusers_fragment(&tmpdir, entry.0, entry.1).unwrap();
149148
assert_eq!(generated, entry.2, "{:?}", entry);
150149

151150
let path = format!(

0 commit comments

Comments
 (0)