5
This commit is contained in:
parent
627166b060
commit
f320be31a5
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
images
|
||||
skip_falvours
|
||||
@ -44,7 +44,7 @@ echo "--- Pre-flight Checks Passed! Starting Installation ---"
|
||||
|
||||
|
||||
# 1. Install System Dependencies
|
||||
dnf install -y git python3-devel libffi-devel gcc openssl-devel python3-libselinux
|
||||
dnf install -y git python3-devel libffi-devel gcc openssl-devel python3-libselinux plocate
|
||||
|
||||
KOLLA_VENV="/opt/ansible-kolla-venv"
|
||||
KOLLA_WORKING="/opt/ansible-kolla"
|
||||
|
||||
492
openstack-flavours-and-images.sh
Executable file
492
openstack-flavours-and-images.sh
Executable file
@ -0,0 +1,492 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -x
|
||||
set -e
|
||||
|
||||
if [ -f "/etc/kolla/admin-openrc.sh" ];then
|
||||
source /etc/kolla/admin-openrc.sh
|
||||
fi
|
||||
|
||||
# We use 'true' as the switch, and execute the test [ -f ... ] inside the cases
|
||||
case true in
|
||||
$([ -f "/opt/deploy/bin/activate" ] && echo true))
|
||||
source /opt/deploy/bin/activate
|
||||
;;
|
||||
$([ -f "/etc/kolla/venv/bin/activate" ] && echo true))
|
||||
source /etc/kolla/venv/bin/activate
|
||||
;;
|
||||
|
||||
$([ -f "/opt/ansible-kolla-venv/bin/activate" ] && echo true))
|
||||
source "/opt/ansible-kolla-venv/bin/activate"
|
||||
;;
|
||||
|
||||
$([ -f "$HOME/venv/bin/activate" ] && echo true))
|
||||
source "$HOME/venv/bin/activate"
|
||||
;;
|
||||
*)
|
||||
echo "Error: No valid kolla venv found."
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
IMAGES_DIR="images"
|
||||
|
||||
mkdir -p "${IMAGES_DIR}"
|
||||
|
||||
if [ -f "skip_falvours" ];then
|
||||
echo "Skipping falvours creation"
|
||||
else
|
||||
|
||||
openstack flavor show 1v1g10g || openstack flavor create --vcpus 1 --ram 1024 --disk 10 1v1g10g
|
||||
openstack flavor show 1v2g10g || openstack flavor create --vcpus 1 --ram 2048 --disk 10 1v2g10g
|
||||
openstack flavor show 2v1g10g || openstack flavor create --vcpus 2 --ram 1024 --disk 10 2v1g10g
|
||||
openstack flavor show 2v2g10g || openstack flavor create --vcpus 2 --ram 2048 --disk 10 2v2g10g
|
||||
openstack flavor show 4v2g10g || openstack flavor create --vcpus 4 --ram 2048 --disk 10 4v2g10g
|
||||
|
||||
openstack flavor show 1v1g20g || openstack flavor create --vcpus 1 --ram 1024 --disk 20 1v1g20g
|
||||
openstack flavor show 1v2g20g || openstack flavor create --vcpus 1 --ram 2048 --disk 20 1v2g20g
|
||||
openstack flavor show 2v1g20g || openstack flavor create --vcpus 2 --ram 1024 --disk 20 2v1g20g
|
||||
openstack flavor show 2v2g20g || openstack flavor create --vcpus 2 --ram 2048 --disk 20 2v2g20g
|
||||
openstack flavor show 2v4g20g || openstack flavor create --vcpus 2 --ram 4096 --disk 20 2v4g20g
|
||||
openstack flavor show 4v2g20g || openstack flavor create --vcpus 4 --ram 2048 --disk 20 4v2g20g
|
||||
|
||||
|
||||
openstack flavor show 1v2g40g || openstack flavor create --vcpus 1 --ram 2048 --disk 40 1v2g40g
|
||||
openstack flavor show 4v2g40g || openstack flavor create --vcpus 4 --ram 2048 --disk 40 4v2g40g
|
||||
openstack flavor show 2v4g40g || openstack flavor create --vcpus 2 --ram 4096 --disk 40 2v4g40g
|
||||
openstack flavor show 4v4g40g || openstack flavor create --vcpus 4 --ram 4096 --disk 40 4v4g40g
|
||||
openstack flavor show 4v8g40g || openstack flavor create --vcpus 4 --ram 8192 --disk 40 4v8g40g
|
||||
|
||||
openstack flavor show 1v2g80g || openstack flavor create --vcpus 1 --ram 2048 --disk 80 1v2g80g
|
||||
openstack flavor show 4v2g80g || openstack flavor create --vcpus 4 --ram 2048 --disk 80 4v2g80g
|
||||
openstack flavor show 2v4g80g || openstack flavor create --vcpus 2 --ram 4096 --disk 80 2v4g80g
|
||||
openstack flavor show 4v4g80g || openstack flavor create --vcpus 4 --ram 4096 --disk 80 4v4g80g
|
||||
openstack flavor show 4v8g80g || openstack flavor create --vcpus 4 --ram 8192 --disk 80 4v8g80g
|
||||
|
||||
|
||||
openstack flavor show t1.micro || openstack flavor create t1.micro --vcpus 1 --ram 1024 --ephemeral 5 --public
|
||||
openstack flavor show t2.2xlarge || openstack flavor create t2.2xlarge --vcpus 8 --ram 8192 --ephemeral 5 --public
|
||||
openstack flavor show t2.large || openstack flavor create t2.large --vcpus 2 --ram 2048 --ephemeral 5 --public
|
||||
openstack flavor show t2.medium || openstack flavor create t2.medium --vcpus 2 --ram 2048 --ephemeral 5 --public
|
||||
openstack flavor show t2.micro || openstack flavor create t2.micro --vcpus 1 --ram 1024 --ephemeral 5 --public
|
||||
openstack flavor show t2.nano || openstack flavor create t2.nano --vcpus 1 --ram 1024 --ephemeral 5 --public
|
||||
openstack flavor show t2.small || openstack flavor create t2.small --vcpus 1 --ram 1024 --ephemeral 5 --public
|
||||
openstack flavor show t2.xlarge ||openstack flavor create t2.xlarge --vcpus 4 --ram 4096 --ephemeral 5 --public
|
||||
|
||||
fi
|
||||
|
||||
CIRROS_IMAGE_URL="http://download.cirros-cloud.net/0.5.2/cirros-0.5.2-x86_64-disk.img"
|
||||
CIRROS_IMAGE_NAME="cirros-0.5.2-x86_64-disk.img"
|
||||
|
||||
CIRROS_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/cirros-0.5.2-x86_64-disk.img"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${CIRROS_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' )&& CIRROS_IMAGE_URL="${CIRROS_LOCAL_IMAGE_URL}"
|
||||
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${CIRROS_IMAGE_NAME}" ];then
|
||||
wget "${CIRROS_IMAGE_URL}" -O "${IMAGES_DIR}/${CIRROS_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "cirros" || \
|
||||
openstack image create "cirros" \
|
||||
--file "${IMAGES_DIR}/${CIRROS_IMAGE_NAME}" \
|
||||
--disk-format qcow2 \
|
||||
--container-format bare \
|
||||
--public
|
||||
|
||||
|
||||
|
||||
ALMA8_IMAGE_URL="https://repo.almalinux.org/almalinux/8/cloud/x86_64/images/AlmaLinux-8-GenericCloud-latest.x86_64.qcow2"
|
||||
ALMA8_IMAGE_NAME="AlmaLinux-8-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
ALMA8_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/AlmaLinux-8-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${ALMA8_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && ALMA8_IMAGE_URL="${ALMA8_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${ALMA8_IMAGE_NAME}" ];then
|
||||
wget "${ALMA8_IMAGE_URL}" -O "${IMAGES_DIR}/${ALMA8_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "almalinux-8" || \
|
||||
openstack image create "almalinux-8" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${ALMA8_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
|
||||
ALMA9_IMAGE_URL="https://repo.almalinux.org/almalinux/9/cloud/x86_64/images/AlmaLinux-9-GenericCloud-latest.x86_64.qcow2"
|
||||
ALMA9_IMAGE_NAME="AlmaLinux-9-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
ALMA9_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/AlmaLinux-9-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${ALMA9_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && ALMA9_IMAGE_URL="${ALMA9_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${ALMA9_IMAGE_NAME}" ];then
|
||||
wget "${ALMA9_IMAGE_URL}" -O "${IMAGES_DIR}/${ALMA9_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "almalinux-9" || \
|
||||
openstack image create "almalinux-9" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${ALMA9_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
ALMA10_IMAGE_URL="https://raw.repo.almalinux.org/almalinux/10/cloud/x86_64/images/AlmaLinux-10-GenericCloud-latest.x86_64.qcow2"
|
||||
ALMA10_IMAGE_NAME="AlmaLinux-10-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
ALMA10_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/AlmaLinux-10-GenericCloud-latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${ALMA10_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && ALMA10_IMAGE_URL="${ALMA10_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${ALMA10_IMAGE_NAME}" ];then
|
||||
wget "${ALMA10_IMAGE_URL}" -O "${IMAGES_DIR}/${ALMA10_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "almalinux-10" || \
|
||||
openstack image create "almalinux-10" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${ALMA10_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
ROCKYLINUX9_IMAGE_URL="https://dl.rockylinux.org/pub/rocky/9/images/x86_64/Rocky-9-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
ROCKYLINUX9_IMAGE_NAME="Rocky-9-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
ROCKYLINUX9_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/Rocky-9-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${ROCKYLINUX9_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && ROCKYLINUX9_IMAGE_URL="${ROCKYLINUX9_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${ROCKYLINUX9_IMAGE_NAME}" ];then
|
||||
wget "${ROCKYLINUX9_IMAGE_URL}" -O "${IMAGES_DIR}/${ROCKYLINUX9_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "rockylinux-9" || \
|
||||
openstack image create "rockylinux-9" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${ROCKYLINUX9_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
ROCKYLINUX10_IMAGE_URL="https://dl.rockylinux.org/pub/rocky/10/images/x86_64/Rocky-10-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
ROCKYLINUX10_IMAGE_NAME="Rocky-10-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
ROCKYLINUX10_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/Rocky-10-GenericCloud-Base.latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${ROCKYLINUX10_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && ROCKYLINUX10_IMAGE_URL="${ROCKYLINUX10_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${ROCKYLINUX10_IMAGE_NAME}" ];then
|
||||
wget "${ROCKYLINUX10_IMAGE_URL}" -O "${IMAGES_DIR}/${ROCKYLINUX10_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "rockylinux-10" || \
|
||||
openstack image create "rockylinux-10" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${ROCKYLINUX10_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
DEBIAN_10_IMAGE_URL="https://cdimage.debian.org/cdimage/openstack/current-10/debian-10-openstack-amd64.qcow2"
|
||||
DEBIAN_10_IMAGE_NAME="debian-10-openstack-amd64.qcow2"
|
||||
|
||||
DEBIAN_10_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/debian-10-openstack-amd64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${DEBIAN_10_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK')&& DEBIAN_10_IMAGE_URL="${DEBIAN_10_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${DEBIAN_10_IMAGE_NAME}" ];then
|
||||
wget "${DEBIAN_10_IMAGE_URL}" -O "${IMAGES_DIR}/${DEBIAN_10_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "debian-10" || \
|
||||
openstack image create "debian-10" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${DEBIAN_10_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
DEBIAN_11_IMAGE_URL="https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-generic-amd64.qcow2"
|
||||
DEBIAN_11_IMAGE_NAME="debian-11-generic-amd64.qcow2"
|
||||
|
||||
DEBIAN_11_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/debian-11-generic-amd64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${DEBIAN_11_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && DEBIAN_11_IMAGE_URL="${DEBIAN_11_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${DEBIAN_11_IMAGE_NAME}" ];then
|
||||
wget "${DEBIAN_11_IMAGE_URL}" -O "${IMAGES_DIR}/${DEBIAN_11_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "debian-11" || \
|
||||
openstack image create "debian-11" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${DEBIAN_11_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
DEBIAN_12_IMAGE_URL="https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-generic-amd64.qcow2"
|
||||
DEBIAN_12_IMAGE_NAME="debian-12-generic-amd64.qcow2"
|
||||
|
||||
DEBIAN_12_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/debian-12-generic-amd64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${DEBIAN_12_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && DEBIAN_12_IMAGE_URL="${DEBIAN_12_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${DEBIAN_12_IMAGE_NAME}" ];then
|
||||
wget "${DEBIAN_12_IMAGE_URL}" -O "${IMAGES_DIR}/${DEBIAN_12_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "debian-12" || \
|
||||
openstack image create "debian-12" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${DEBIAN_12_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
DEBIAN_13_IMAGE_URL="https://cloud.debian.org/images/cloud/trixie/latest/debian-13-generic-amd64.qcow2"
|
||||
DEBIAN_13_IMAGE_NAME="debian-13-generic-amd64.qcow2"
|
||||
|
||||
DEBIAN_13_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/debian-13-generic-amd64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${DEBIAN_13_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && DEBIAN_13_IMAGE_URL="${DEBIAN_13_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${DEBIAN_13_IMAGE_NAME}" ];then
|
||||
wget "${DEBIAN_13_IMAGE_URL}" -O "${IMAGES_DIR}/${DEBIAN_13_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "debian-13" || \
|
||||
openstack image create "debian-13" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${DEBIAN_13_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
UBUNTU_JAMMY_IMAGE_URL="https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img"
|
||||
UBUNTU_JAMMY_IMAGE_NAME="jammy-server-cloudimg-amd64.img"
|
||||
|
||||
UBUNTU_JAMMY_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/jammy-server-cloudimg-amd64.img"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${UBUNTU_JAMMY_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && UBUNTU_JAMMY_IMAGE_URL="${UBUNTU_JAMMY_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${UBUNTU_JAMMY_IMAGE_NAME}" ];then
|
||||
wget "${UBUNTU_JAMMY_IMAGE_URL}" -O "${IMAGES_DIR}/${UBUNTU_JAMMY_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "ubuntu-jammy" || \
|
||||
openstack image create "ubuntu-jammy" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${UBUNTU_JAMMY_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
UBUNTU_FOCAL_IMAGE_URL="https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img"
|
||||
UBUNTU_FOCAL_IMAGE_NAME="focal-server-cloudimg-amd64.img"
|
||||
|
||||
UBUNTU_FOCAL_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/focal-server-cloudimg-amd64.img"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${UBUNTU_FOCAL_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && UBUNTU_FOCAL_IMAGE_URL="${UBUNTU_FOCAL_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${UBUNTU_FOCAL_IMAGE_NAME}" ];then
|
||||
wget "${UBUNTU_FOCAL_IMAGE_URL}" -O "${IMAGES_DIR}/${UBUNTU_FOCAL_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "ubuntu-focal" || \
|
||||
openstack image create "ubuntu-focal" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${UBUNTU_FOCAL_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
UBUNTU_NOBLE_IMAGE_URL="https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img"
|
||||
UBUNTU_NOBLE_IMAGE_NAME="noble-server-cloudimg-amd64.img"
|
||||
|
||||
UBUNTU_NOBLE_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/noble-server-cloudimg-amd64.img"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${UBUNTU_NOBLE_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && UBUNTU_NOBLE_IMAGE_URL="${UBUNTU_NOBLE_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${UBUNTU_NOBLE_IMAGE_NAME}" ];then
|
||||
wget "${UBUNTU_NOBLE_IMAGE_URL}" -O "${IMAGES_DIR}/${UBUNTU_NOBLE_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "ubuntu-noble" || \
|
||||
openstack image create "ubuntu-noble" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${UBUNTU_NOBLE_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
|
||||
CENTOS8_IMAGE_URL="https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-latest.x86_64.qcow2"
|
||||
CENTOS8_IMAGE_NAME="CentOS-Stream-GenericCloud-8-latest.x86_64.qcow2"
|
||||
|
||||
CENTOS8_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/CentOS-Stream-GenericCloud-8-latest.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
(curl -I "${CENTOS8_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && CENTOS8_IMAGE_URL="${CENTOS8_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${CENTOS8_IMAGE_NAME}" ];then
|
||||
wget "${CENTOS8_IMAGE_URL}" -O "${IMAGES_DIR}/${CENTOS8_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "centos-stream-8" || \
|
||||
openstack image create "centos-stream-8" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${CENTOS8_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
CENTOS7_IMAGE_URL="https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-2111.qcow2"
|
||||
CENTOS7_IMAGE_NAME="CentOS-7-x86_64-GenericCloud.qcow2"
|
||||
|
||||
CENTOS7_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/CentOS-7-x86_64-GenericCloud.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${CENTOS7_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && CENTOS7_IMAGE_URL="${CENTOS7_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${CENTOS7_IMAGE_NAME}" ];then
|
||||
wget "${CENTOS7_IMAGE_URL}" -O "${IMAGES_DIR}/${CENTOS7_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "centos-7" || \
|
||||
openstack image create "centos-7" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${CENTOS7_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
OL8_IMAGE_URL="https://yum.oracle.com/templates/OracleLinux/OL8/u6/x86_64/OL8U6_x86_64-kvm-b141.qcow"
|
||||
OL8_IMAGE_NAME="OL8U6_x86_64-kvm.qcow"
|
||||
|
||||
OL8_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/OL8U6_x86_64-kvm.qcow"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${OL8_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && OL8_IMAGE_URL="${OL8_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${OL8_IMAGE_NAME}" ];then
|
||||
wget "${OL8_IMAGE_URL}" -O "${IMAGES_DIR}/${OL8_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "oracle-linux-8" || \
|
||||
openstack image create "oracle-linux-8" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${OL8_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
OL7_IMAGE_URL="https://yum.oracle.com/templates/OracleLinux/OL7/u9/x86_64/OL7U9_x86_64-kvm-b145.qcow"
|
||||
OL7_IMAGE_NAME="OL7U9_x86_64-kvm.qcow"
|
||||
|
||||
OL7_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/OL7U9_x86_64-kvm.qcow"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${OL7_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && OL7_IMAGE_URL="${OL7_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${OL7_IMAGE_NAME}" ];then
|
||||
wget "${OL7_IMAGE_URL}" -O "${IMAGES_DIR}/${OL7_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "oracle-linux-7" || \
|
||||
openstack image create "oracle-linux-7" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${OL7_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
OL9_IMAGE_URL="https://yum.oracle.com/templates/OracleLinux/OL9/u0/x86_64/OL9U0_x86_64-kvm-b142.qcow"
|
||||
OL9_IMAGE_NAME="OL9U0_x86_64-kvm.qcow"
|
||||
|
||||
OL9_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/OL9U0_x86_64-kvm.qcow"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${OL9_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && OL9_IMAGE_URL="${OL9_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${OL9_IMAGE_NAME}" ];then
|
||||
wget "${OL9_IMAGE_URL}" -O "${IMAGES_DIR}/${OL9_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "oracle-linux-9" || \
|
||||
openstack image create "oracle-linux-9" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${OL9_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
OPENENULAR_2403_IMAGE_URL="https://dl-cdn.openeuler.openatom.cn/openEuler-24.03-LTS-SP3/virtual_machine_img/x86_64/openEuler-24.03-LTS-SP3-x86_64.qcow2.xz"
|
||||
OPENENULAR_2403_ARCHIVE="openEuler-24.03-LTS-SP3-x86_64.qcow2.xz"
|
||||
OPENENULAR_2403_NAME="openEuler-24.03-LTS-SP3-x86_64.qcow2"
|
||||
|
||||
OPENENULAR_2403_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/penEuler-24.03-LTS-SP3-x86_64.qcow2.xz"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${OPENENULAR_2403_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && OPENENULAR_2403_IMAGE_URL="${OPENENULAR_2403_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${OPENENULAR_2403_NAME}" ];then
|
||||
wget "${OPENENULAR_2403_IMAGE_URL}" -O "${IMAGES_DIR}/${OPENENULAR_2403_ARCHIVE}"
|
||||
xz -dkc "${IMAGES_DIR}/${OPENENULAR_2403_ARCHIVE}" > "${IMAGES_DIR}/${OPENENULAR_2403_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "openenular-2403" || \
|
||||
openstack image create "openenular-2403" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${OPENENULAR_2403_NAME}" \
|
||||
--public
|
||||
|
||||
openstack keypair show multi || \
|
||||
openstack keypair create --public-key multi.pub multi
|
||||
|
||||
|
||||
|
||||
FEDORA36_IMAGE_URL="https://download.fedoraproject.org/pub/fedora/linux/releases/36/Cloud/x86_64/images/Fedora-Cloud-Base-36-1.5.x86_64.qcow2"
|
||||
FEDORA36_IMAGE_NAME="Fedora-Cloud-Base-36-1.5.x86_64.qcow2"
|
||||
|
||||
FEDORA36_LOCAL_IMAGE_URL="http://www.ngtech.home/static/cloud-images/Fedora-Cloud-Base-36-1.5.x86_64.qcow2"
|
||||
|
||||
if [ -f "try-local-images" ];then
|
||||
( curl -I "${FEDORA36_LOCAL_IMAGE_URL}" | grep 'HTTP/1.1 200 OK' ) && FEDORA36_IMAGE_URL="${FEDORA36_LOCAL_IMAGE_URL}"
|
||||
fi
|
||||
|
||||
if [ ! -f "${IMAGES_DIR}/${FEDORA36_IMAGE_NAME}" ];then
|
||||
wget "${FEDORA36_IMAGE_URL}" -O "${IMAGES_DIR}/${FEDORA36_IMAGE_NAME}"
|
||||
fi
|
||||
|
||||
openstack image show "fedora-36" || \
|
||||
openstack image create "fedora-36" \
|
||||
--container-format bare \
|
||||
--disk-format qcow2 \
|
||||
--file "${IMAGES_DIR}/${FEDORA36_IMAGE_NAME}" \
|
||||
--public
|
||||
|
||||
openstack keypair show multi || \
|
||||
openstack keypair create --public-key multi.pub multi
|
||||
|
||||
set +e
|
||||
set +x
|
||||
Loading…
x
Reference in New Issue
Block a user