@@ -486,3 +486,92 @@ def _get_nginx_kwargs(os_version: OsVersion):
486486 )
487487 for os_version in (OsVersion .TUMBLEWEED ,)
488488]
489+
490+
491+ _BASE_PODMAN_OSC_CMD = (
492+ "podman run --rm -it --privileged "
493+ + r"-v \$HOME/.config/osc/oscrc:/root/.config/osc/oscrc:ro,z "
494+ + r"-v \$HOME/.local/state/osc/cookiejar:/root/.local/state/osc/cookiejar:z"
495+ )
496+
497+ OSC_CONTAINER = ApplicationStackContainer (
498+ name = "osc" ,
499+ pretty_name = "Packaging" ,
500+ package_name = "packaging-image" ,
501+ os_version = OsVersion .TUMBLEWEED ,
502+ is_latest = True ,
503+ # we want all the recommends from osc & build
504+ no_recommends = False ,
505+ version_in_uid = False ,
506+ version = "%%osc_version%%" ,
507+ replacements_via_service = [
508+ Replacement (regex_in_build_description = "%%osc_version%%" , package_name = "osc" )
509+ ],
510+ extra_files = {
511+ "entrypoint.sh" : (Path (__file__ ).parent / "osc" / "entrypoint.sh" ).read_bytes ()
512+ },
513+ extra_labels = {
514+ "run" : f"{ _BASE_PODMAN_OSC_CMD } IMAGE" ,
515+ "runcwd" : f"{ _BASE_PODMAN_OSC_CMD } -v .:/root/osc-workdir:z IMAGE" ,
516+ },
517+ package_list = [
518+ # osc + osc build
519+ "osc" ,
520+ "build" ,
521+ "cpio" ,
522+ "hostname" ,
523+ # all the services
524+ "obs-service-appimage" ,
525+ "obs-service-cargo" ,
526+ "obs-service-cdi_containers_meta" ,
527+ "obs-service-compose_kiwi_description" ,
528+ "obs-service-docker_label_helper" ,
529+ "obs-service-download_assets" ,
530+ "obs-service-download_files" ,
531+ "obs-service-download_url" ,
532+ "obs-service-extract_file" ,
533+ "obs-service-format_spec_file" ,
534+ "obs-service-go_modules" ,
535+ "obs-service-kiwi_label_helper" ,
536+ "obs-service-kiwi_metainfo_helper" ,
537+ "obs-service-kubevirt_containers_meta" ,
538+ "obs-service-node_modules" ,
539+ "obs-service-obs_scm" ,
540+ "obs-service-product_converter" ,
541+ "obs-service-recompress" ,
542+ "obs-service-refresh_patches" ,
543+ "obs-service-replace_using_env" ,
544+ "obs-service-replace_using_package_version" ,
545+ "obs-service-set_version" ,
546+ "obs-service-snapcraft" ,
547+ "obs-service-source_validator" ,
548+ "obs-service-tar" ,
549+ "obs-service-tar_scm" ,
550+ "obs-service-verify_file" ,
551+ * OsVersion .TUMBLEWEED .release_package_names ,
552+ # for convenience
553+ "bash-completion" ,
554+ # for scmsync packages
555+ "git" ,
556+ "obs-scm-bridge" ,
557+ # IBS access
558+ "openssh-common" ,
559+ "openssh-clients" ,
560+ # for building
561+ "podman" ,
562+ "runc" ,
563+ ],
564+ cmd = ["/bin/bash" ],
565+ custom_end = """WORKDIR /root/osc-workdir
566+ COPY entrypoint.sh /usr/local/bin/entrypoint.sh
567+ RUN chmod +x /usr/local/bin/entrypoint.sh
568+ ENV OSC_VM_TYPE=podman
569+ """ ,
570+ entrypoint = ["/usr/local/bin/entrypoint.sh" ],
571+ volumes = [
572+ # default location of the package cache
573+ "/var/tmp/osbuild-packagecache" ,
574+ # default buildroot path
575+ "/var/tmp/build-root-root" ,
576+ ],
577+ )
0 commit comments