runners: add rhel7 runner
Create a runner for RHEL7. The one thing to note is that RHEL 7 makes use of ld.so.confd snippets and one important for us is to include `/usr/lib64/iscsi` needed by qemu-img. Otherwise this is a fairly simple and straight forward runner.
This commit is contained in:
parent
f16b606716
commit
f951a4931e
1 changed files with 35 additions and 0 deletions
35
runners/org.osbuild.rhel7
Executable file
35
runners/org.osbuild.rhel7
Executable file
|
|
@ -0,0 +1,35 @@
|
|||
#!/usr/bin/python3
|
||||
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
import osbuild.api
|
||||
|
||||
|
||||
def ldconfig():
|
||||
# ld.so.conf must exist, or `ldconfig` throws a warning
|
||||
with open("/etc/ld.so.conf", "w", ) as f:
|
||||
# qemu-img needs `libiscsi`, which is located in /usr/lib64/iscsi
|
||||
f.write("/usr/lib64/iscsi\n")
|
||||
f.flush()
|
||||
subprocess.run(["ldconfig"], check=True)
|
||||
|
||||
|
||||
def nsswitch():
|
||||
# the default behavior is fine, but using nss-resolve does not
|
||||
# necessarily work in a non-booted container, so make sure that
|
||||
# is not configured.
|
||||
try:
|
||||
os.remove("/etc/nsswitch.conf")
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
with osbuild.api.exception_handler():
|
||||
ldconfig()
|
||||
nsswitch()
|
||||
|
||||
r = subprocess.run(sys.argv[1:], check=False)
|
||||
sys.exit(r.returncode)
|
||||
Loading…
Add table
Add a link
Reference in a new issue