Add internal-ci argument for ci passes to rootfs.py

This commit is contained in:
fosslinux 2023-05-01 20:49:41 +10:00
parent 725522b901
commit 3723747562
1 changed files with 37 additions and 34 deletions

View File

@ -84,6 +84,7 @@ def main():
help="Path to prebuilt binary packages.", nargs=None) help="Path to prebuilt binary packages.", nargs=None)
parser.add_argument("--early-preseed", parser.add_argument("--early-preseed",
help="Skip early stages of live-bootstrap.", nargs=None) help="Skip early stages of live-bootstrap.", nargs=None)
parser.add_argument("--internal-ci", help="INTERNAL for github CI")
# QEMU arguments # QEMU arguments
parser.add_argument("-q", "--qemu", help="Use QEMU", parser.add_argument("-q", "--qemu", help="Use QEMU",
@ -177,42 +178,44 @@ print(shutil.which('chroot'))
run('sudo', 'env', '-i', 'PATH=/bin', chroot_binary, system_a.tmp_dir, init) run('sudo', 'env', '-i', 'PATH=/bin', chroot_binary, system_a.tmp_dir, init)
elif args.bwrap: elif args.bwrap:
system_c.prepare(create_disk_image=False) if not args.internal_ci or args.internal_ci == "pass1":
system_a.prepare(create_initramfs=False) system_c.prepare(create_disk_image=False)
system_a.prepare(create_initramfs=False)
arch = stage0_arch_map.get(args.arch, args.arch) arch = stage0_arch_map.get(args.arch, args.arch)
init = os.path.join(os.sep, 'bootstrap-seeds', 'POSIX', arch, 'kaem-optional-seed') init = os.path.join(os.sep, 'bootstrap-seeds', 'POSIX', arch, 'kaem-optional-seed')
run('bwrap', '--unshare-user', run('bwrap', '--unshare-user',
'--uid', '0', '--uid', '0',
'--gid', '0', '--gid', '0',
'--unshare-net', '--unshare-net',
'--clearenv', '--clearenv',
'--setenv', 'PATH', '/usr/bin', '--setenv', 'PATH', '/usr/bin',
'--bind', system_a.tmp_dir, '/', '--bind', system_a.tmp_dir, '/',
'--dir', '/dev', '--dir', '/dev',
'--dev-bind', '/dev/null', '/dev/null', '--dev-bind', '/dev/null', '/dev/null',
'--dev-bind', '/dev/zero', '/dev/zero', '--dev-bind', '/dev/zero', '/dev/zero',
'--dev-bind', '/dev/random', '/dev/random', '--dev-bind', '/dev/random', '/dev/random',
'--dev-bind', '/dev/urandom', '/dev/urandom', '--dev-bind', '/dev/urandom', '/dev/urandom',
init) init)
run('bwrap', '--unshare-user', if not args.internal_ci or args.internal_ci == "pass2":
'--uid', '0', run('bwrap', '--unshare-user',
'--gid', '0', '--uid', '0',
'--unshare-net' if args.external_sources else None, '--gid', '0',
'--clearenv', '--unshare-net' if args.external_sources else None,
'--setenv', 'PATH', '/usr/bin', '--clearenv',
'--bind', system_a.tmp_dir + "/sysc_image", '/', '--setenv', 'PATH', '/usr/bin',
'--dir', '/dev', '--bind', system_a.tmp_dir + "/sysc_image", '/',
'--dev-bind', '/dev/null', '/dev/null', '--dir', '/dev',
'--dev-bind', '/dev/zero', '/dev/zero', '--dev-bind', '/dev/null', '/dev/null',
'--dev-bind', '/dev/random', '/dev/random', '--dev-bind', '/dev/zero', '/dev/zero',
'--dev-bind', '/dev/urandom', '/dev/urandom', '--dev-bind', '/dev/random', '/dev/random',
'--tmpfs', '/dev/shm', '--dev-bind', '/dev/urandom', '/dev/urandom',
'--proc', '/proc', '--tmpfs', '/dev/shm',
'--bind', '/sys', '/sys', '--proc', '/proc',
'--tmpfs', '/tmp', '--bind', '/sys', '/sys',
'/init') '--tmpfs', '/tmp',
'/init')
elif args.bare_metal: elif args.bare_metal:
if args.kernel: if args.kernel: