| #!/usr/bin/env python3 |
| |
| import sys |
| |
| PROFILES = { |
| "cinder": "ceph qemu", |
| "nova": "ceph openvswitch configdrive qemu migration", |
| "neutron": "openvswitch vpn", |
| "keystone": "apache ldap openidc", |
| "horizon": "apache", |
| "monasca-api": "apache influxdb", |
| "ironic": "ipxe ipmi qemu tftp", |
| "glance": "ceph", |
| "monasca-persister": "influxdb", |
| "placement": "apache", |
| } |
| DIST_PACKAGES = { |
| "heat": "curl", |
| "designate": "bind9utils", |
| "nova": "ovmf qemu-efi-aarch64", |
| "neutron": "jq ethtool lshw", |
| "monasca-agent": "iproute2 libvirt-clients lshw", |
| "ironic": "ethtool lshw iproute2", |
| } |
| PIP_PACKAGES = { |
| "neutron": "neutron-vpnaas", |
| "monasca-agent": "libvirt-python python-glanceclient python-neutronclient python-novaclient py3nvml", |
| "horizon": "designate-dashboard heat-dashboard ironic-ui magnum-ui neutron-vpnaas-dashboard octavia-dashboard senlin-dashboard monasca-ui", |
| "ironic": "python-dracclient sushy", |
| "placement": "httplib2", |
| } |
| PLATFORMS = { |
| "nova": "linux/amd64,linux/arm64", |
| "neutron": "linux/amd64,linux/arm64", |
| } |
| |
| project = sys.argv[1] |
| release = sys.argv[2] |
| |
| ref = open(f"images/openstack/projects/{project}/{release}/ref", "r").read().strip() |
| profiles = PROFILES.get(project, "") |
| dist_packages = DIST_PACKAGES.get(project, "") |
| pip_packages = PIP_PACKAGES.get(project, "") |
| platforms = PLATFORMS.get(project, "") |
| |
| print(f"PROJECT_REF={ref}") |
| print(f"PROFILES={profiles}") |
| print(f"DIST_PACKAGES={dist_packages}") |
| print(f"PIP_PACKAGES={pip_packages}") |
| print(f"PLATFORMS={platforms}") |