From 860530727791ea698cc113cb73a6186420198100 Mon Sep 17 00:00:00 2001 From: Philippe Vanhaesendonck Date: Tue, 20 Dec 2022 18:46:13 +0100 Subject: [PATCH] feat(olss): :sparkles: add utm cloud Signed-off-by: Philippe Vanhaesendonck --- oracle-linux-image-tools/README.md | 8 +- .../cloud/utm/Penguin.png | Bin 0 -> 55984 bytes .../cloud/utm/config.plist | 110 ++++++++++++++++++ .../cloud/utm/image-scripts.sh | 38 ++++++ .../cloud/utm/provision.sh | 31 +++++ 5 files changed, 185 insertions(+), 2 deletions(-) create mode 100644 oracle-linux-image-tools/cloud/utm/Penguin.png create mode 100644 oracle-linux-image-tools/cloud/utm/config.plist create mode 100755 oracle-linux-image-tools/cloud/utm/image-scripts.sh create mode 100755 oracle-linux-image-tools/cloud/utm/provision.sh diff --git a/oracle-linux-image-tools/README.md b/oracle-linux-image-tools/README.md index 7f57514..0ef95b4 100755 --- a/oracle-linux-image-tools/README.md +++ b/oracle-linux-image-tools/README.md @@ -12,9 +12,9 @@ The tool currently supports: - Distributions: - Oracle Linux 7 update 9 -- Slim (x86_64) - Oracle Linux 8 update 6 -- Slim (x86_64 and aarch64) - __Note__: for aarch64, only Generic and OCI clouds are supported + __Note__: for aarch64, only Generic, OCI and UTM clouds are supported - Oracle Linux 9 update 0 -- Slim (x86_64 and aarch64) - __Note__: for aarch64, only Generic and OCI clouds are supported + __Note__: for aarch64, only Generic, OCI and UTM clouds are supported - Clouds: - Microsoft Azure cloud Target packages: WALinuxAgent @@ -35,6 +35,10 @@ The tool currently supports: - Vagrant (libvirt provider) Target packages: nfs-utils Image format: box + - UTM ([UTM for macOS](https://mac.getutm.app/)) + Target packages: none + Image format: utm + __Note__: only for aarch64 distributions - Generic (No cloud setup) Target packages: none Image format: VirtualBox OVA or QCOW2 (depending on the builder used) diff --git a/oracle-linux-image-tools/cloud/utm/Penguin.png b/oracle-linux-image-tools/cloud/utm/Penguin.png new file mode 100644 index 0000000000000000000000000000000000000000..36af9b48b8993d9e905173ff23ee0ea94d00aac4 GIT binary patch literal 55984 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 + + + + ConfigurationVersion + 2 + Debug + + DebugLog + + + Display + + ConsoleFont + Menlo + ConsoleFontSize + 12 + ConsoleOnly + + ConsoleTheme + Default + DisplayDownscaler + linear + DisplayFitScreen + + DisplayUpscaler + linear + + Drives + + + ImagePath + image.qcow2 + ImageType + disk + InterfaceType + virtio + + + ImageType + cd + InterfaceType + usb + Removable + + + + Info + + Icon + Penguin.png + IconCustom + + Notes + Default user/initial password: opc/opc +Root password: locked + + Input + + InputLegacy + + + Networking + + NetworkCard + virtio-net-device + NetworkEnabled + + + Printing + + Sharing + + ClipboardSharing + + DirectoryName + + DirectorySharing + + + Sound + + SoundCard + hda + SoundEnabled + + + System + + Architecture + aarch64 + BootDevice + hdd + CPUCount + 0 + ForceMulticore + + JITCacheSize + 0 + MachineProperties + highmem=off + Memory + 2048 + SystemUUID + 00000000-0000-0000-0000-000000000000 + Target + virt + + + diff --git a/oracle-linux-image-tools/cloud/utm/image-scripts.sh b/oracle-linux-image-tools/cloud/utm/image-scripts.sh new file mode 100755 index 0000000..767940f --- /dev/null +++ b/oracle-linux-image-tools/cloud/utm/image-scripts.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env bash +# +# Cleanup and package image for the "None" image +# +# Copyright (c) 2022 Oracle and/or its affiliates. +# Licensed under the Universal Permissive License v 1.0 as shown at +# https://oss.oracle.com/licenses/upl +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. +# + +####################################### +# Image packaging: +# For VistualBox we convert back to VMDK and re-create the OVA file +# For qemu we convert to a qcow2 file +# Globals: +# CLOUD_DIR CLOUD +# VM_NAME +# Arguments: +# None +# Returns: +# None +####################################### +cloud::image_package() { + local utm_dir uuid + utm_dir="${VM_NAME}.utm" + mkdir -p "${utm_dir}/Images" + common::convert_to_qcow2 "${utm_dir}/Images/${VM_NAME}.qcow2" + cp "${CLOUD_DIR}/${CLOUD}/Penguin.png" "${utm_dir}" + uuid=$(python3 -c "import uuid; print(str(uuid.uuid4()).upper())") + sed \ + -e "s/image.qcow2/${VM_NAME}.qcow2/" \ + -e "s!opc/opc!opc/${SSH_PASSWORD}!" \ + -e "s/00000000-0000-0000-0000-000000000000/${uuid}/" \ + "${CLOUD_DIR}/${CLOUD}/config.plist" > "${utm_dir}/config.plist" + zip -r "${utm_dir}.zip" "${utm_dir}" + rm -rf "${utm_dir}" +} diff --git a/oracle-linux-image-tools/cloud/utm/provision.sh b/oracle-linux-image-tools/cloud/utm/provision.sh new file mode 100755 index 0000000..dc720d7 --- /dev/null +++ b/oracle-linux-image-tools/cloud/utm/provision.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash +# +# Packer provisioning script for UTM +# +# Copyright (c) 2022 Oracle and/or its affiliates. +# Licensed under the Universal Permissive License v 1.0 as shown at +# https://oss.oracle.com/licenses/upl +# +# Description: UTM specific provisioning.n +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. +# + +####################################### +# Provisioning module +# Globals: +# None +# Arguments: +# None +# Returns: +# None +####################################### +cloud::provision() +{ + hash=$(/usr/libexec/platform-python -c "import crypt; print(crypt.crypt('${SSH_PASSWORD}', crypt.METHOD_SHA512))") + useradd opc -c "Oracle Public Cloud User" -G wheel -m -p "${hash}" + passwd -e opc + echo "%opc ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/opc + chmod 0440 /etc/sudoers.d/opc + restorecon /etc/sudoers.d/opc +}