|
18 | 18 | from bci_build.package import SupportLevel |
19 | 19 | from bci_build.package import _build_tag_prefix |
20 | 20 | from bci_build.package import generate_disk_size_constraints |
| 21 | +from bci_build.package.basecontainers import _get_os_container_package_names |
21 | 22 |
|
22 | 23 | _PCP_FILES = {} |
23 | 24 | for filename in ( |
@@ -808,3 +809,70 @@ def _get_nginx_kwargs(os_version: OsVersion): |
808 | 809 | ) |
809 | 810 | for tomcat_major, os_version in product(_TOMCAT_VERSIONS, ALL_BASE_OS_VERSIONS) |
810 | 811 | ] |
| 812 | + |
| 813 | +# FIXME: what's the correct name of the label? |
| 814 | +_BASE_PODMAN_CMD = "podman run run --rm -it -v ~/.config/osc/oscrc:/root/.config/osc/oscrc:ro,z -v ~/.local/state/osc/cookiejar:/root/.local/state/osc/cookiejar:z" |
| 815 | +OSC_CONTAINER = ApplicationStackContainer( |
| 816 | + name="osc", |
| 817 | + pretty_name="Packaging", |
| 818 | + package_name="packaging-image", |
| 819 | + os_version=OsVersion.TUMBLEWEED, |
| 820 | + is_latest=True, |
| 821 | + version_in_uid=False, |
| 822 | + version="%%osc_version%%", |
| 823 | + replacements_via_service=[ |
| 824 | + Replacement(regex_in_build_description="%%osc_version%%", package_name="osc") |
| 825 | + ], |
| 826 | + extra_files={ |
| 827 | + "entrypoint.sh": (Path(__file__).parent / "osc" / "entrypoint.sh").read_bytes() |
| 828 | + }, |
| 829 | + extra_labels={ |
| 830 | + "run": f"{_BASE_PODMAN_CMD} $IMAGE", |
| 831 | + "runcwd": f"{_BASE_PODMAN_CMD} -v $PWD:/root/osc-workdir:z $IMAGE", |
| 832 | + }, |
| 833 | + package_list=[ |
| 834 | + "osc", |
| 835 | + "obs-service-appimage", |
| 836 | + "obs-service-cargo", |
| 837 | + "obs-service-cdi_containers_meta", |
| 838 | + "obs-service-compose_kiwi_description", |
| 839 | + "obs-service-docker_label_helper", |
| 840 | + "obs-service-download_assets", |
| 841 | + "obs-service-download_files", |
| 842 | + "obs-service-download_url", |
| 843 | + "obs-service-extract_file", |
| 844 | + "obs-service-format_spec_file", |
| 845 | + "obs-service-go_modules", |
| 846 | + "obs-service-kiwi_label_helper", |
| 847 | + "obs-service-kiwi_metainfo_helper", |
| 848 | + "obs-service-kubevirt_containers_meta", |
| 849 | + "obs-service-node_modules", |
| 850 | + "obs-service-obs_scm", |
| 851 | + "cpio", |
| 852 | + "obs-service-product_converter", |
| 853 | + "obs-service-recompress", |
| 854 | + "obs-service-refresh_patches", |
| 855 | + "obs-service-replace_using_env", |
| 856 | + "obs-service-replace_using_package_version", |
| 857 | + "obs-service-set_version", |
| 858 | + "obs-service-snapcraft", |
| 859 | + "obs-service-source_validator", |
| 860 | + "obs-service-tar", |
| 861 | + "obs-service-tar_scm", |
| 862 | + "obs-service-verify_file", |
| 863 | + *_get_os_container_package_names(OsVersion.TUMBLEWEED), |
| 864 | + "git", |
| 865 | + "openssh-common", |
| 866 | + "openssh-clients", |
| 867 | + ], |
| 868 | + cmd=["/bin/bash"], |
| 869 | + custom_end="""WORKDIR /root/osc-workdir |
| 870 | +COPY entrypoint.sh /usr/local/bin/entrypoint.sh |
| 871 | +RUN chmod +x /usr/local/bin/entrypoint.sh |
| 872 | +""", |
| 873 | + entrypoint=["/usr/local/bin/entrypoint.sh"], |
| 874 | + volumes=[ |
| 875 | + # default location of the build root & package cache |
| 876 | + "/var/tmp" |
| 877 | + ], |
| 878 | +) |
0 commit comments