diff --git a/test/data/manifests/centos_8-aarch64-qcow2_customize-boot.json b/test/data/manifests/centos_8-aarch64-qcow2_customize-boot.json index d468152b8..7f5014e65 100644 --- a/test/data/manifests/centos_8-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/centos_8-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5460,11 +5494,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7189,6 +7345,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el8/cs8-aarch64-baseos-20220208/Packages/grub2-efi-aa64-2.02-106.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_8-ppc64le-qcow2_customize-boot.json b/test/data/manifests/centos_8-ppc64le-qcow2_customize-boot.json index 7ab2a69dc..380ce2af8 100644 --- a/test/data/manifests/centos_8-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/centos_8-ppc64le-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5851,11 +5885,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7699,6 +7855,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el8/cs8-ppc64le-baseos-20220208/Packages/libsss_sudo-2.6.1-2.el8.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_8-x86_64-qcow2_customize-boot.json b/test/data/manifests/centos_8-x86_64-qcow2_customize-boot.json index e3d2a3eb5..15d56f276 100644 --- a/test/data/manifests/centos_8-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/centos_8-x86_64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5533,11 +5567,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7300,6 +7456,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el8/cs8-x86_64-baseos-20220208/Packages/trousers-lib-0.3.15-1.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_9-aarch64-qcow2_customize-boot.json b/test/data/manifests/centos_9-aarch64-qcow2_customize-boot.json index bf0cb1d31..fe07fd3b0 100644 --- a/test/data/manifests/centos_9-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/centos_9-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -4844,11 +4878,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6457,6 +6613,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el9/cs9-aarch64-baseos-20230101/Packages/libgpg-error-1.42-5.el9.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_9-ppc64le-qcow2_customize-boot.json b/test/data/manifests/centos_9-ppc64le-qcow2_customize-boot.json index 77523a383..23698c3b2 100644 --- a/test/data/manifests/centos_9-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/centos_9-ppc64le-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5466,11 +5500,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7216,6 +7372,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el9/cs9-ppc64le-baseos-20221124/Packages/ppc64-diag-rtas-2.7.9-1.el9.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_9-s390x-qcow2_customize-boot.json b/test/data/manifests/centos_9-s390x-qcow2_customize-boot.json index 06b8f9d6a..ca8299a24 100644 --- a/test/data/manifests/centos_9-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/centos_9-s390x-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5698,11 +5732,133 @@ "type": "org.osbuild.zipl", "options": {} }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7450,6 +7606,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el9/cs9-s390x-appstream-20221124/Packages/perl-AutoLoader-5.74-479.el9.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/centos_9-x86_64-qcow2_customize-boot.json b/test/data/manifests/centos_9-x86_64-qcow2_customize-boot.json index 69b82c5fc..38e652f17 100644 --- a/test/data/manifests/centos_9-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/centos_9-x86_64-qcow2_customize-boot.json @@ -92,7 +92,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -103,6 +104,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5213,11 +5247,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6903,6 +7059,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/el9/cs9-x86_64-baseos-20230101/Packages/polkit-pkla-compat-0.1-21.el9.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_36-aarch64-qcow2_customize-boot.json b/test/data/manifests/fedora_36-aarch64-qcow2_customize-boot.json index 7f6eb9bb8..d35b7b451 100644 --- a/test/data/manifests/fedora_36-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_36-aarch64-qcow2_customize-boot.json @@ -100,7 +100,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -111,6 +112,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5305,6 +5339,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5313,7 +5468,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6952,6 +7108,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f36/f36-aarch64-updates-released-20220705/Packages/l/libtalloc-2.3.4-1.fc36.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_36-x86_64-qcow2_customize-boot.json b/test/data/manifests/fedora_36-x86_64-qcow2_customize-boot.json index 172873298..5b64ecb5f 100644 --- a/test/data/manifests/fedora_36-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_36-x86_64-qcow2_customize-boot.json @@ -100,7 +100,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -111,6 +112,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5450,6 +5484,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5458,7 +5613,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7165,6 +7321,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f36/f36-x86_64-fedora-20220617/Packages/j/jq-1.6-13.fc36.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_37-aarch64-qcow2_customize-boot.json b/test/data/manifests/fedora_37-aarch64-qcow2_customize-boot.json index 824c01939..b1731070f 100644 --- a/test/data/manifests/fedora_37-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_37-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5303,6 +5337,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5311,7 +5466,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6950,6 +7106,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f37/f37-aarch64-fedora-development-20221025/Packages/g/gawk-5.1.1-4.fc37.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_37-x86_64-qcow2_customize-boot.json b/test/data/manifests/fedora_37-x86_64-qcow2_customize-boot.json index e347c3eb6..630325ba9 100644 --- a/test/data/manifests/fedora_37-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_37-x86_64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5416,6 +5450,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5424,7 +5579,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7119,6 +7275,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f37/f37-x86_64-fedora-development-20221025/Packages/l/lua-libs-5.4.4-4.fc37.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_38-aarch64-qcow2_customize-boot.json b/test/data/manifests/fedora_38-aarch64-qcow2_customize-boot.json index bded063ff..d178fe0b0 100644 --- a/test/data/manifests/fedora_38-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_38-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5311,6 +5345,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5319,7 +5474,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6961,6 +7117,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-aarch64-rawhide-20221025/Packages/p/python3-pyserial-3.5-3.fc37.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/fedora_38-x86_64-qcow2_customize-boot.json b/test/data/manifests/fedora_38-x86_64-qcow2_customize-boot.json index f6fb33d3e..405a6dbfe 100644 --- a/test/data/manifests/fedora_38-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/fedora_38-x86_64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5416,6 +5450,127 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { @@ -5424,7 +5579,8 @@ "cloud-config.service", "cloud-final.service", "cloud-init-local.service", - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7119,6 +7275,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/public/f38/f38-x86_64-rawhide-20221025/Packages/e/elfutils-debuginfod-client-0.187-8.fc38.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json index 1169623f9..a778f0c23 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json @@ -101,7 +101,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -112,6 +113,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2034,11 +2068,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -3616,6 +3772,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-release-server-7.9-3.el7.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_8-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_8-aarch64-qcow2_customize-boot.json index 0970e7d06..cf8ec1c0a 100644 --- a/test/data/manifests/rhel_8-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_8-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2315,11 +2349,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4107,6 +4263,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.7-20221015/Packages/PackageKit-glib-1.1.12-6.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_8-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_8-ppc64le-qcow2_customize-boot.json index 12fe10e90..bb6631669 100644 --- a/test/data/manifests/rhel_8-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_8-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2456,11 +2490,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4367,6 +4523,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.7-20221015/Packages/grub2-common-2.02-142.el8.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_8-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_8-s390x-qcow2_customize-boot.json index beddd24d5..0694d831a 100644 --- a/test/data/manifests/rhel_8-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_8-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2464,11 +2498,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4362,6 +4518,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.7-20221015/Packages/cpio-2.12-11.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_8-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_8-x86_64-qcow2_customize-boot.json index b5d7401a7..e09907e6e 100644 --- a/test/data/manifests/rhel_8-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_8-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2346,11 +2380,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4179,6 +4335,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.7-20221015/Packages/libibverbs-41.0-1.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_84-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_84-aarch64-qcow2_customize-boot.json index dc1995247..15dd63e6d 100644 --- a/test/data/manifests/rhel_84-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_84-aarch64-qcow2_customize-boot.json @@ -84,12 +84,46 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" ] - } + }, + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } + ] } } }, @@ -2273,11 +2307,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -3907,6 +4063,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-baseos-r8.4-20210921/Packages/dhcp-client-4.3.6-44.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_84-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_84-ppc64le-qcow2_customize-boot.json index f167816ff..367a6e29f 100644 --- a/test/data/manifests/rhel_84-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_84-ppc64le-qcow2_customize-boot.json @@ -84,12 +84,46 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" ] - } + }, + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } + ] } } }, @@ -2414,11 +2448,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4168,6 +4324,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-r8.4-20210921/Packages/libksba-1.3.5-7.el8.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_84-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_84-s390x-qcow2_customize-boot.json index 2c47d6b47..b78a25825 100644 --- a/test/data/manifests/rhel_84-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_84-s390x-qcow2_customize-boot.json @@ -84,12 +84,46 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" ] - } + }, + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } + ] } } }, @@ -2417,11 +2451,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4124,6 +4280,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-r8.4-20210921/Packages/libdb-5.3.28-40.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_84-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_84-x86_64-qcow2_customize-boot.json index 5bb01b2a6..9d10eda53 100644 --- a/test/data/manifests/rhel_84-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_84-x86_64-qcow2_customize-boot.json @@ -84,12 +84,46 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" ] - } + }, + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } + ] } } }, @@ -2307,11 +2341,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -3985,6 +4141,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-r8.4-20210921/Packages/libfdisk-2.32.1-27.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_85-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_85-aarch64-qcow2_customize-boot.json index 37f8b01e8..5a2cb6340 100644 --- a/test/data/manifests/rhel_85-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_85-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -103,6 +104,39 @@ "mountpoint": "/", "minsize": 2147483648 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2317,11 +2351,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4141,6 +4297,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-r8.5-20220504/Packages/PackageKit-glib-1.1.12-6.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_85-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_85-ppc64le-qcow2_customize-boot.json index 436192bfd..04b200058 100644 --- a/test/data/manifests/rhel_85-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_85-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -103,6 +104,39 @@ "mountpoint": "/", "minsize": 2147483648 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2467,11 +2501,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4392,6 +4548,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.5-20210326/Packages/libksba-1.3.5-7.el8.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_85-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_85-s390x-qcow2_customize-boot.json index b37430a92..4aded6635 100644 --- a/test/data/manifests/rhel_85-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_85-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -103,6 +104,39 @@ "mountpoint": "/", "minsize": 2147483648 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2472,11 +2506,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4397,6 +4553,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.5-20210326/Packages/libdb-5.3.28-40.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_85-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_85-x86_64-qcow2_customize-boot.json index 045cde6bf..5ef7b96ee 100644 --- a/test/data/manifests/rhel_85-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_85-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -103,6 +104,39 @@ "mountpoint": "/", "minsize": 2147483648 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2348,11 +2382,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4213,6 +4369,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-r8.5-20220504/Packages/parted-3.2-39.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_86-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_86-aarch64-qcow2_customize-boot.json index fd8716024..bc9713515 100644 --- a/test/data/manifests/rhel_86-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_86-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2312,11 +2346,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4101,6 +4257,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.6-20220201/Packages/PackageKit-glib-1.1.12-6.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_86-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_86-ppc64le-qcow2_customize-boot.json index 86a7df539..b220f527a 100644 --- a/test/data/manifests/rhel_86-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_86-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2453,11 +2487,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4361,6 +4517,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.6-20220201/Packages/libcap-2.26-5.el8.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_86-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_86-s390x-qcow2_customize-boot.json index 622b94c0c..3b41f7f45 100644 --- a/test/data/manifests/rhel_86-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_86-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2452,11 +2486,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4341,6 +4497,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.6-20220201/Packages/cpio-2.12-11.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_86-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_86-x86_64-qcow2_customize-boot.json index 7e0e2c89f..df752fc7b 100644 --- a/test/data/manifests/rhel_86-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_86-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2343,11 +2377,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4173,6 +4329,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.6-20220201/Packages/virt-what-1.18-13.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_87-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_87-aarch64-qcow2_customize-boot.json index 4346a7ad8..4df72442e 100644 --- a/test/data/manifests/rhel_87-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_87-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2315,11 +2349,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4107,6 +4263,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.7-20221015/Packages/PackageKit-glib-1.1.12-6.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_87-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_87-ppc64le-qcow2_customize-boot.json index c21b47509..76d87f4cd 100644 --- a/test/data/manifests/rhel_87-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_87-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2456,11 +2490,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4367,6 +4523,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.7-20221015/Packages/grub2-common-2.02-142.el8.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_87-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_87-s390x-qcow2_customize-boot.json index a7a0119fe..ae18d469f 100644 --- a/test/data/manifests/rhel_87-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_87-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2464,11 +2498,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4362,6 +4518,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.7-20221015/Packages/cpio-2.12-11.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_87-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_87-x86_64-qcow2_customize-boot.json index 940d20267..f5058c5bd 100644 --- a/test/data/manifests/rhel_87-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_87-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2346,11 +2380,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4179,6 +4335,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.7-20221015/Packages/libibverbs-41.0-1.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_88-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_88-aarch64-qcow2_customize-boot.json index 3b58b9d4a..31b0fa16a 100644 --- a/test/data/manifests/rhel_88-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_88-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2315,11 +2349,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4107,6 +4263,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.8-20221025/Packages/PackageKit-glib-1.1.12-6.el8.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_88-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_88-ppc64le-qcow2_customize-boot.json index cbe9530b1..2fcddb11a 100644 --- a/test/data/manifests/rhel_88-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_88-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2456,11 +2490,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4367,6 +4523,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.8-20221025/Packages/libgomp-8.5.0-17.el8.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_88-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_88-s390x-qcow2_customize-boot.json index 4a72254df..8dce99083 100644 --- a/test/data/manifests/rhel_88-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_88-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2464,11 +2498,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4362,6 +4518,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.8-20221025/Packages/cpio-2.12-11.el8.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_88-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_88-x86_64-qcow2_customize-boot.json index 7033192da..9f76a926b 100644 --- a/test/data/manifests/rhel_88-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_88-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2346,11 +2380,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4179,6 +4335,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.8-20221025/Packages/libibverbs-41.0-1.el8.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_9-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_9-aarch64-qcow2_customize-boot.json index e54a273ee..1c6f67468 100644 --- a/test/data/manifests/rhel_9-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_9-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5041,11 +5075,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6708,6 +6864,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-baseos-n9.1-20221015/Packages/json-c-0.14-11.el9.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_9-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_9-ppc64le-qcow2_customize-boot.json index 25d84b5cf..830179503 100644 --- a/test/data/manifests/rhel_9-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_9-ppc64le-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5639,11 +5673,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7443,6 +7599,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-baseos-n9.1-20221015/Packages/rhsm-icons-4-1.el9.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_9-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_9-s390x-qcow2_customize-boot.json index 53f33575a..ce0900f4a 100644 --- a/test/data/manifests/rhel_9-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_9-s390x-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5871,11 +5905,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7677,6 +7833,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-appstream-n9.1-20221015/Packages/perl-Data-Dumper-2.174-462.el9.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_9-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_9-x86_64-qcow2_customize-boot.json index 49dd02671..7f45a2b57 100644 --- a/test/data/manifests/rhel_9-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_9-x86_64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5378,11 +5412,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7119,6 +7275,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-baseos-n9.1-20221015/Packages/libacl-2.3.1-3.el9.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_90-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_90-aarch64-qcow2_customize-boot.json index 35e831539..96015918e 100644 --- a/test/data/manifests/rhel_90-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_90-aarch64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2071,11 +2105,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -3714,6 +3870,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-baseos-n9.0-20220208/Packages/json-c-0.14-11.el9.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_90-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_90-ppc64le-qcow2_customize-boot.json index c9e108dbe..974321883 100644 --- a/test/data/manifests/rhel_90-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_90-ppc64le-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2292,11 +2326,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4075,6 +4231,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-baseos-n9.0-20220208/Packages/libnl3-3.5.0-10.el9.ppc64le.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_90-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_90-s390x-qcow2_customize-boot.json index 9d303c17d..139407116 100644 --- a/test/data/manifests/rhel_90-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_90-s390x-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2365,11 +2399,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -4144,6 +4300,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-baseos-n9.0-20220208/Packages/kpartx-0.8.7-4.el9.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_90-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_90-x86_64-qcow2_customize-boot.json index d3baac846..824aae29c 100644 --- a/test/data/manifests/rhel_90-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_90-x86_64-qcow2_customize-boot.json @@ -84,7 +84,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -95,6 +96,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -2204,11 +2238,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -3927,6 +4083,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-baseos-n9.0-20220208/Packages/python3-librepo-1.14.2-1.el9.x86_64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_91-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_91-aarch64-qcow2_customize-boot.json index b27de134e..3fd58fd2a 100644 --- a/test/data/manifests/rhel_91-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_91-aarch64-qcow2_customize-boot.json @@ -91,7 +91,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -102,6 +103,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5314,11 +5348,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7027,6 +7183,26 @@ } } }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } + }, "org.osbuild.skopeo": { "items": { "sha256:d4ee87dab8193afad523b1042b9d3f5ec887555a704e5aaec2876798ebb585a6": { diff --git a/test/data/manifests/rhel_91-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_91-ppc64le-qcow2_customize-boot.json index cb1b5f0c4..55920fd26 100644 --- a/test/data/manifests/rhel_91-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_91-ppc64le-qcow2_customize-boot.json @@ -91,7 +91,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -102,6 +103,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5912,11 +5946,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7762,6 +7918,26 @@ } } }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } + }, "org.osbuild.skopeo": { "items": { "sha256:d4ee87dab8193afad523b1042b9d3f5ec887555a704e5aaec2876798ebb585a6": { diff --git a/test/data/manifests/rhel_91-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_91-s390x-qcow2_customize-boot.json index 8bc80d0e5..b43a2641a 100644 --- a/test/data/manifests/rhel_91-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_91-s390x-qcow2_customize-boot.json @@ -91,7 +91,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -102,6 +103,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -6127,11 +6161,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7976,6 +8132,26 @@ } } }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } + }, "org.osbuild.skopeo": { "items": { "sha256:d4ee87dab8193afad523b1042b9d3f5ec887555a704e5aaec2876798ebb585a6": { diff --git a/test/data/manifests/rhel_91-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_91-x86_64-qcow2_customize-boot.json index 3b57ac764..a54c06da2 100644 --- a/test/data/manifests/rhel_91-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_91-x86_64-qcow2_customize-boot.json @@ -91,7 +91,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -102,6 +103,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5651,11 +5685,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7438,6 +7594,26 @@ } } }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } + }, "org.osbuild.skopeo": { "items": { "sha256:d4ee87dab8193afad523b1042b9d3f5ec887555a704e5aaec2876798ebb585a6": { diff --git a/test/data/manifests/rhel_92-aarch64-qcow2_customize-boot.json b/test/data/manifests/rhel_92-aarch64-qcow2_customize-boot.json index 17a041bca..46060a141 100644 --- a/test/data/manifests/rhel_92-aarch64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_92-aarch64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5017,11 +5051,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -6681,6 +6837,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-baseos-n9.2-20230101/Packages/json-c-0.14-11.el9.aarch64.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_92-ppc64le-qcow2_customize-boot.json b/test/data/manifests/rhel_92-ppc64le-qcow2_customize-boot.json index 586221b30..51d8f6f55 100644 --- a/test/data/manifests/rhel_92-ppc64le-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_92-ppc64le-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5647,11 +5681,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7454,6 +7610,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-baseos-n9.2-20221025/Packages/rhsm-icons-4-1.el9.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_92-s390x-qcow2_customize-boot.json b/test/data/manifests/rhel_92-s390x-qcow2_customize-boot.json index ee6174bbe..5b1061116 100644 --- a/test/data/manifests/rhel_92-s390x-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_92-s390x-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5879,11 +5913,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7688,6 +7844,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-appstream-n9.2-20221025/Packages/perl-Data-Dumper-2.174-462.el9.s390x.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/test/data/manifests/rhel_92-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_92-x86_64-qcow2_customize-boot.json index dc89600e3..d39761ad8 100644 --- a/test/data/manifests/rhel_92-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_92-x86_64-qcow2_customize-boot.json @@ -86,7 +86,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -97,6 +98,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "user": 1020, + "group": 1050, + "mode": "0770" + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "user": "root", + "group": "root", + "mode": "0644", + "data": "image builder is the best" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -5378,11 +5412,133 @@ } } }, + { + "type": "org.osbuild.mkdir", + "options": { + "paths": [ + { + "path": "/etc/systemd/system/custom.service.d", + "exist_ok": true + }, + { + "path": "/etc/custom_dir" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_dir": { + "mode": "0770" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_dir": { + "user": 1020, + "group": 1050 + } + } + } + }, + { + "type": "org.osbuild.copy", + "inputs": { + "file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e" + } + ] + }, + "file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2" + } + ] + }, + "file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258" + } + ] + }, + "file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "type": "org.osbuild.files", + "origin": "org.osbuild.source", + "references": [ + { + "id": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + } + ] + } + }, + "options": { + "paths": [ + { + "from": "input://file-246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e/sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e", + "to": "tree:///etc/systemd/system/custom.service" + }, + { + "from": "input://file-3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2/sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2", + "to": "tree:///etc/systemd/system/custom.service.d/override.conf" + }, + { + "from": "input://file-a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258/sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258", + "to": "tree:///etc/custom_file.txt" + }, + { + "from": "input://file-e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855/sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "to": "tree:///etc/empty_file.txt" + } + ] + } + }, + { + "type": "org.osbuild.chmod", + "options": { + "items": { + "/etc/custom_file.txt": { + "mode": "0644" + } + } + } + }, + { + "type": "org.osbuild.chown", + "options": { + "items": { + "/etc/custom_file.txt": { + "user": "root", + "group": "root" + }, + "/etc/empty_file.txt": { + "user": 0, + "group": 0 + } + } + } + }, { "type": "org.osbuild.systemd", "options": { "enabled_services": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled_services": [ "bluetooth.service" @@ -7119,6 +7275,26 @@ "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-baseos-n9.2-20230101/Packages/linux-firmware-whence-20221214-129.el9.noarch.rpm" } } + }, + "org.osbuild.inline": { + "items": { + "sha256:246c90eeaabd45d57f9c52ba19ec83577e1ece72cfb262b674dcd444f8f33a8e": { + "encoding": "base64", + "data": "W1VuaXRdCkRlc2NyaXB0aW9uPUN1c3RvbSBzZXJ2aWNlCgpbU2VydmljZV0KRXhlY1N0YXJ0PS91c3IvYmluL2ZhbHNlCgpbSW5zdGFsbF0KV2FudGVkQnk9bXVsdGktdXNlci50YXJnZXQK" + }, + "sha256:3858d66c9da0509af1f75847bf49134bf8df01bd712b59ce251826744d3bafe2": { + "encoding": "base64", + "data": "W1NlcnZpY2VdCkV4ZWNTdGFydD0KRXhlY1N0YXJ0PS91c3IvYmluL2NhdCAvZXRjL2N1c3RvbV9maWxlLnR4dAo=" + }, + "sha256:a08a06016ca077755a7948a9631271011f1a1c3ecaa0e701e10ec0bec1923258": { + "encoding": "base64", + "data": "aW1hZ2UgYnVpbGRlciBpcyB0aGUgYmVzdA==" + }, + "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855": { + "encoding": "base64", + "data": "" + } + } } } }, diff --git a/tools/test-case-generators/format-request-map.json b/tools/test-case-generators/format-request-map.json index 0144b93ef..51b7cec94 100644 --- a/tools/test-case-generators/format-request-map.json +++ b/tools/test-case-generators/format-request-map.json @@ -767,7 +767,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -778,6 +779,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "mode": "0770", + "user": 1020, + "group": 1050 + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "data": "image builder is the best", + "mode": "0644", + "user": "root", + "group": "root" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } } @@ -853,7 +887,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -864,6 +899,39 @@ "mountpoint": "/opt", "minsize": 1073741824 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "mode": "0770", + "user": 1020, + "group": 1050 + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "data": "image builder is the best", + "mode": "0644", + "user": "root", + "group": "root" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] }, "containers": [ @@ -943,12 +1011,46 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" ] - } + }, + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "mode": "0770", + "user": 1020, + "group": 1050 + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "data": "image builder is the best", + "mode": "0644", + "user": "root", + "group": "root" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } + ] } } }, @@ -1022,7 +1124,8 @@ }, "services": { "enabled": [ - "sshd.socket" + "sshd.socket", + "custom.service" ], "disabled": [ "bluetooth.service" @@ -1041,6 +1144,39 @@ "mountpoint": "/", "minsize": 2147483648 } + ], + "directories": [ + { + "path": "/etc/systemd/system/custom.service.d" + }, + { + "path": "/etc/custom_dir", + "mode": "0770", + "user": 1020, + "group": 1050 + } + ], + "files": [ + { + "path": "/etc/systemd/system/custom.service", + "data": "[Unit]\nDescription=Custom service\n\n[Service]\nExecStart=/usr/bin/false\n\n[Install]\nWantedBy=multi-user.target\n" + }, + { + "path": "/etc/systemd/system/custom.service.d/override.conf", + "data": "[Service]\nExecStart=\nExecStart=/usr/bin/cat /etc/custom_file.txt\n" + }, + { + "path": "/etc/custom_file.txt", + "data": "image builder is the best", + "mode": "0644", + "user": "root", + "group": "root" + }, + { + "path": "/etc/empty_file.txt", + "user": 0, + "group": 0 + } ] } }