Drop support for Rackspace

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
This commit is contained in:
James Le Cuirot 2026-04-23 15:18:34 +01:00
parent 7b75de6f91
commit 4892c5c6ab
No known key found for this signature in database
GPG Key ID: 1226415D00DD3137
21 changed files with 2 additions and 285 deletions

View File

@ -107,7 +107,6 @@ IGNORE_SHEBANG = (
"*/python[0-9].[0-9][0-9]/cgi.py",
"*/usr/lib64/modules/*/source/scripts/*",
"*/usr/lib/modules/*/source/scripts/*",
"*/usr/share/nova-agent/*/etc/gentoo/nova-agent",
"*/tmp/*",
"*/Documentation/*",
"*/doc/*",

View File

@ -28,9 +28,6 @@ VALID_IMG_TYPES=(
proxmoxve
pxe
qemu_uefi
rackspace
rackspace_onmetal
rackspace_vhd
scaleway
stackit
vagrant
@ -62,8 +59,6 @@ VALID_OEM_PACKAGES=(
packet
proxmoxve
qemu
rackspace
rackspace-onmetal
scaleway
stackit
vagrant
@ -248,16 +243,6 @@ IMG_gce_CONF_FORMAT=gce
IMG_gce_OEM_PACKAGE=common-oem-files
IMG_gce_OEM_SYSEXT=oem-gce
## rackspace
IMG_rackspace_OEM_PACKAGE=oem-rackspace
IMG_rackspace_vhd_DISK_FORMAT=vhd
IMG_rackspace_vhd_OEM_PACKAGE=oem-rackspace
## rackspace onmetal
IMG_rackspace_onmetal_DISK_FORMAT=qcow2
IMG_rackspace_onmetal_DISK_LAYOUT=onmetal
IMG_rackspace_onmetal_OEM_PACKAGE=oem-rackspace-onmetal
## cloudstack
IMG_cloudstack_OEM_PACKAGE=oem-cloudstack
IMG_cloudstack_vhd_DISK_FORMAT=vhd

View File

@ -0,0 +1 @@
- Dropped support for Rackspace, including OnMetal. Rackspace-specific images are no longer built or published. Flatcar only had community level support for Rackspace, and the Flatcar team is no longer confident that this support actually works. Rackspace themselves have pivoted from being an independent cloud provider to being a management platform for other clouds.

View File

@ -1 +0,0 @@
DIST nova-agent-container-0.0.1.tar.gz 6634988 SHA256 ccaea8ea597111d5b89649e9fb03f6a9fdf8530e69c18c8af6e059d7ac20a029 SHA512 71468307ed8d87fafcaf44d1cb48b5499a42e9902a61d97d6ea191fed3e0e81cc8c3beb61839449f5ec87f54717801d2aa56df848bfa2b6602419360e3196005 WHIRLPOOL 0989323868fcf751c8aa4381130c0607cb19f8271c531018ee7bc12676b89e0f908f3999a7da6462c4654673eed822f427ed24d93da4e46d3ea0ddf7a8cc6eed

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
</pkgmetadata>

View File

@ -1,18 +0,0 @@
# Copyright (c) 2013 CoreOS, Inc.. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="nova agent for rackspace images"
HOMEPAGE="https://github.com/coreos/nova-agent-container"
SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
src_install() {
dodir /oem/nova-agent
rsync -aq "${S}/" "${D}/oem/nova-agent/" || die
}

View File

@ -1 +0,0 @@
DIST nova-agent-watcher-f750d8e5e91a7e7e22e26c9d241d27b1b7563d70.tar.gz 217622 BLAKE2B 73c2975faba141cb5d259adf0f8ae8a9bbe7e89fd94e9a66577ad67798c5a740d2e25b8d826ee1241b3ebfb783df5ea42bf747bc5d6b12fe5f2624950d367e00 SHA512 0e684f95328c253734f9f5feac9340d403f4f50b5e87cc4a5eab95dde2a13a5eef9c967bbede7b315757063a9b2aef557a5370b489e0a781a072eec0c4b2e25c

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<upstream>
<remote-id type="github">coreos/nova-agent-watcher</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,30 +0,0 @@
# Copyright (c) 2014 CoreOS, Inc.. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=8
COREOS_GO_PACKAGE="github.com/coreos/nova-agent-watcher"
COREOS_GO_GO111MODULE="off"
inherit coreos-go
DESCRIPTION="Watches for changes from Nova and reapplies them with coreos-cloudinit"
HOMEPAGE="https://github.com/coreos/nova-agent-watcher"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/coreos/nova-agent-watcher.git"
inherit git-r3
else
EGIT_VERSION="f750d8e5e91a7e7e22e26c9d241d27b1b7563d70"
SRC_URI="https://github.com/coreos/nova-agent-watcher/archive/${EGIT_VERSION}.tar.gz -> ${PN}-${EGIT_VERSION}.tar.gz"
S="${WORKDIR}/${PN}-${EGIT_VERSION}"
KEYWORDS="amd64 arm64"
fi
LICENSE="Apache-2.0"
SLOT="0"
src_install() {
into /oem
dobin scripts/gentoo-to-networkd
dobin "${GOBIN}"/nova-agent-watcher
}

View File

@ -1,42 +0,0 @@
#cloud-config
coreos:
units:
- name: user-configdrive.service.d/netconf.conf
runtime: yes
content: |
[Service]
ExecStart=
ExecStart=/usr/bin/coreos-cloudinit --oem=rackspace-onmetal
- name: ping-out.service
runtime: yes
enable: yes
content: |
[Unit]
After=user-config.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/sh -c "ping -A -c1 $(ip route | awk '/default/ { print $3 }')"
[Install]
WantedBy=user-config.target
- name: media-configdrive.mount
command: start
runtime: yes
content: |
[Unit]
Wants=user-configdrive.service
Before=user-configdrive.service
[Mount]
What=/dev/disk/by-label/config-2
Where=/media/configdrive
Options=ro
oem:
id: onmetal
name: Rackspace OnMetal
version-id: @@OEM_VERSION_ID@@
home-url: http://www.rackspace.com/
bug-report-url: https://issues.flatcar.org

View File

@ -1,13 +0,0 @@
# Flatcar GRUB settings
set oem_id="rackspace-onmetal"
# Rackspace wanted a longer timeout, I forget why. (15 seconds)
set timeout=15
# Switch default console to ttyS4, only applies to Linux since
# GRUB needs exact IO ports for non-standard serial devices.
set linux_console="console=ttyS4,115200n8 8250.nr_uarts=5"
# Blacklist MEI, the firmware is just plain broken.
set linux_append="modprobe.blacklist=mei_me net.ifnames=0"

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
</pkgmetadata>

View File

@ -1,27 +0,0 @@
# Copyright (c) 2013 CoreOS, Inc.. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="OEM suite for Rackspace Teeth images"
HOMEPAGE=""
SRC_URI=""
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
# no source directory
S="${WORKDIR}"
src_prepare() {
default
sed -e "s\\@@OEM_VERSION_ID@@\\${PVR}\\g" \
"${FILESDIR}/cloud-config.yml" > "${T}/cloud-config.yml" || die
}
src_install() {
insinto "/oem"
doins "${T}/cloud-config.yml"
doins "${FILESDIR}/grub.cfg"
}

View File

@ -1,37 +0,0 @@
#cloud-config
coreos:
units:
- name: nova-agent-auto.service
command: restart
runtime: yes
content: |
[Unit]
After=dbus.service
[Service]
Environment=HOME=/root
ExecStartPre=/bin/mount -t proc none /oem/nova-agent/proc
ExecStartPre=/bin/mount -t xenfs none /oem/nova-agent/proc/xen
ExecStartPre=/bin/mount --bind /dev /oem/nova-agent/dev
ExecStartPre=/bin/mount --bind /sys /oem/nova-agent/sys
ExecStart=/usr/bin/chroot /oem/nova-agent/ /usr/share/nova-agent/0.0.1.38/sbin/nova-agent -o - -n -l info /usr/share/nova-agent/nova-agent.py
ExecStopPost=/bin/umount -f /oem/nova-agent/sys
ExecStopPost=/bin/umount -f /oem/nova-agent/dev
ExecStopPost=/bin/umount -f /oem/nova-agent/proc/xen
ExecStopPost=/bin/umount -f /oem/nova-agent/proc
- name: nova-agent-watcher.service
command: restart
runtime: yes
content: |
[Unit]
After=dbus.service
[Service]
ExecStart=/oem/bin/nova-agent-watcher -watch-dir=/oem/nova-agent -scripts-dir=/oem/bin/
oem:
id: rackspace
name: Rackspace Cloud Servers
version-id: @@OEM_VERSION_ID@@
home-url: https://www.rackspace.com/cloud/servers/
bug-report-url: https://issues.flatcar.org

View File

@ -1,35 +0,0 @@
#!/bin/bash -e
ENV=$1
if [ -z "$ENV" ]; then
echo usage: $0 /etc/environment
exit 1
fi
# test for rw
touch $ENV
if [ $? -ne 0 ]; then
echo exiting, unable to modify: $ENV
exit 1
fi
sed -i -e '/^COREOS_PUBLIC_IPV4=/d' \
-e '/^COREOS_PRIVATE_IPV4=/d' \
"${ENV}"
# We spin loop until the nova-agent sets up the ip addresses
function get_ip () {
IF=$1
IP=
while [ 1 ]; do
IP=$(ifconfig $IF | awk '/inet /{print $2}')
if [ "$IP" != "" ]; then
break
fi
sleep .1
done
echo $IP
}
echo COREOS_PUBLIC_IPV4=$(get_ip eth0) >> $ENV
echo COREOS_PRIVATE_IPV4=$(get_ip eth1) >> $ENV

View File

@ -1,3 +0,0 @@
# Flatcar GRUB settings
set oem_id="rackspace"

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
</pkgmetadata>

View File

@ -1,39 +0,0 @@
#
# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
# Copyright (c) 2013 CoreOS, Inc.. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
# $Header:$
#
EAPI=7
DESCRIPTION="oem suite for rackspace images"
HOMEPAGE=""
SRC_URI=""
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE=""
RDEPEND="
coreos-base/nova-agent-container
coreos-base/nova-agent-watcher
"
S="${WORKDIR}"
src_prepare() {
default
sed -e "s\\@@OEM_VERSION_ID@@\\${PVR}\\g" \
"${FILESDIR}/cloud-config.yml" > "${T}/cloud-config.yml" || die
}
src_install() {
insinto "/oem"
doins "${T}/cloud-config.yml"
doins "${FILESDIR}/grub.cfg"
into "/oem"
dobin "${FILESDIR}/flatcar-setup-environment"
}

View File

@ -21,12 +21,10 @@ index 897eeabd..2a861637 100644
* [DigitalOcean] (`digitalocean`) - Ignition will read its configuration from the droplet userdata. Cloud SSH keys and network configuration are handled separately.
* [Exoscale] (`exoscale`) - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
* [Google Cloud] (`gcp`) - Ignition will read its configuration from the instance metadata entry named "user-data". Cloud SSH keys are handled separately.
@@ -31,6 +32,9 @@ Ignition is currently supported for the following platforms:
@@ -31,6 +32,7 @@ Ignition is currently supported for the following platforms:
* [Equinix Metal] (`packet`) - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
* [IBM Power Systems Virtual Server] (`powervs`) - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
* [QEMU] (`qemu`) - Ignition will read its configuration from the 'opt/com.coreos/config' key on the QEMU Firmware Configuration Device (available in QEMU 2.4.0 and higher).
+* `rackspace` - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
+* `rackspace-onmetal` - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
+* `vagrant` - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
* [Scaleway] (`scaleway`) - Ignition will read its configuration from the instance userdata. Cloud SSH keys are handled separately.
* [UpCloud] (`upcloud`) - Ignition will read its configuration from the instance userdata fetched from the metadata service (which is NOT enabled by default, make sure you enable it if you use custom images). Cloud SSH keys are handled separately.