From 2b4ea1051edc23e95f1dc6874efafeacef05ffe1 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:01:59 +0200 Subject: [PATCH 1/8] metadata: add outscale support Signed-off-by: Mathieu Tortuyaux --- .../{afterburn-5.10.0-r2.ebuild => afterburn-5.10.0-r3.ebuild} | 0 .../coreos-base/afterburn/files/coreos-metadata.service | 2 ++ 2 files changed, 2 insertions(+) rename sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/{afterburn-5.10.0-r2.ebuild => afterburn-5.10.0-r3.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r2.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r3.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r2.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r3.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/files/coreos-metadata.service b/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/files/coreos-metadata.service index 8278d4ab43f..b34b4b7c53b 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/files/coreos-metadata.service +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/files/coreos-metadata.service @@ -16,6 +16,8 @@ ConditionKernelCommandLine=|coreos.oem.id=openstack ConditionKernelCommandLine=|flatcar.oem.id=oraclecloud +ConditionKernelCommandLine=|flatcar.oem.id=outscale + ConditionKernelCommandLine=|flatcar.oem.id=scaleway ConditionKernelCommandLine=|flatcar.oem.id=hetzner From 4c5f96ab3829f900fea6bdf3580c93b5370c4d5a Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:02:57 +0200 Subject: [PATCH 2/8] oem: add Outscale support Signed-off-by: Mathieu Tortuyaux --- build_library/oem/outscale/grub.cfg | 3 +++ build_library/vm_image_util.sh | 7 +++++++ .../coreos-base/oem-outscale/oem-outscale-0.ebuild | 13 +++++++++++++ 3 files changed, 23 insertions(+) create mode 100644 build_library/oem/outscale/grub.cfg create mode 100644 sdk_container/src/third_party/coreos-overlay/coreos-base/oem-outscale/oem-outscale-0.ebuild diff --git a/build_library/oem/outscale/grub.cfg b/build_library/oem/outscale/grub.cfg new file mode 100644 index 00000000000..151bf08f019 --- /dev/null +++ b/build_library/oem/outscale/grub.cfg @@ -0,0 +1,3 @@ +# Flatcar GRUB settings + +set oem_id="outscale" diff --git a/build_library/vm_image_util.sh b/build_library/vm_image_util.sh index 7f9f1764a4e..60be16e7935 100644 --- a/build_library/vm_image_util.sh +++ b/build_library/vm_image_util.sh @@ -24,6 +24,7 @@ VALID_IMG_TYPES=( openstack openstack_mini oraclecloud + outscale parallels proxmoxve pxe @@ -161,6 +162,12 @@ IMG_oraclecloud_DISK_FORMAT=qcow2 IMG_oraclecloud_DISK_LAYOUT=vm IMG_oraclecloud_OEM_SYSEXT=oraclecloud +## Outscale +IMG_outscale_DISK_FORMAT=qcow2 +IMG_outscale_DISK_LAYOUT=vm +IMG_outscale_OEM_SYSEXT=outscale +IMG_outscale_DISK_EXTENSION=qcow2 + ## pxe, which is an cpio image IMG_pxe_DISK_FORMAT=cpio IMG_pxe_PARTITIONED_IMG=0 diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-outscale/oem-outscale-0.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-outscale/oem-outscale-0.ebuild new file mode 100644 index 00000000000..862d3004744 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/oem-outscale/oem-outscale-0.ebuild @@ -0,0 +1,13 @@ +# Copyright (c) 2026 Flatcar Maintainers. All rights reserved. +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="OEM suite for Outscale" +HOMEPAGE="https://en.outscale.com/cloud-experience/cloud-services/" + +LICENSE="metapackage" +SLOT="0" +KEYWORDS="amd64" + +SYSEXT_NAME="Outscale" From a49d15c10dbb6032c88ebd6f56ebbbb3bf656183 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:06:43 +0200 Subject: [PATCH 3/8] coreos-base/coreos-init: pull Outscale SSH keys Signed-off-by: Mathieu Tortuyaux --- .../third_party/coreos-overlay/coreos-base/coreos-init/Manifest | 2 +- ...eos-init-0.0.1-r209.ebuild => coreos-init-0.0.1-r210.ebuild} | 0 .../coreos-base/coreos-init/coreos-init-9999.ebuild | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/{coreos-init-0.0.1-r209.ebuild => coreos-init-0.0.1-r210.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/Manifest b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/Manifest index c870be29ee8..317e4cf6f28 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/Manifest @@ -1 +1 @@ -DIST coreos-init-0765e955aca24034d66b9389e0d538e4c3ee543c.tar.gz 60363 BLAKE2B b6f9ab0d79a381883b73fc899eb6085a722bd3d3cde1cf1485c3d314bc9688a055ebcbe81170408c946eba0334b6b5e3a83e0e4078df951f964d0991b9cfa916 SHA512 209ad4392cccfa356c9980baa7b458e2f13d3a782539a207c9f6d3e5dc8ae2019c9dac15039175bf5269ac30498d0e512541fd4120e587fad2536b82860765e4 +DIST coreos-init-2097ffe088eafed281484abdcc88b24f4c31acf5.tar.gz 60395 BLAKE2B 32805b6f3bb53f610bddec8cd707b9b34bc46e67cb4a0f3030f41f53d67b53c78b934ce6698ecd838120952e721f86f0ad49c3004a702b66eaf54c02717f20e3 SHA512 9faf56dbf51fb6e2eb9905f2039311b7fc1a52f5383c80758fb8ee0e8a9fa05860f17b1f6aac95ef29c4deb925db3056a70e55ae1fdd3bf6922c8fda444abbbf diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r209.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r210.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r209.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-0.0.1-r210.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-9999.ebuild index badc1648612..6787fafe2b2 100644 --- a/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-9999.ebuild @@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://github.com/flatcar/init.git" inherit git-r3 else - EGIT_VERSION="0765e955aca24034d66b9389e0d538e4c3ee543c" # flatcar-master + EGIT_VERSION="2097ffe088eafed281484abdcc88b24f4c31acf5" # flatcar-master SRC_URI="https://github.com/flatcar/init/archive/${EGIT_VERSION}.tar.gz -> ${PN}-${EGIT_VERSION}.tar.gz" S="${WORKDIR}/init-${EGIT_VERSION}" KEYWORDS="amd64 arm arm64 x86" From a0b87431754d2c156de4e984b62c295d82194ec4 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:09:20 +0200 Subject: [PATCH 4/8] sys-kernel/bootengine: set hostname from Outscale metadata Signed-off-by: Mathieu Tortuyaux --- .../third_party/coreos-overlay/sys-kernel/bootengine/Manifest | 2 +- ...ootengine-0.0.38-r49.ebuild => bootengine-0.0.38-r51.ebuild} | 0 .../coreos-overlay/sys-kernel/bootengine/bootengine-9999.ebuild | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/{bootengine-0.0.38-r49.ebuild => bootengine-0.0.38-r51.ebuild} (100%) diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/Manifest index 49d6f2a1ed9..6070c37222d 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/Manifest @@ -1 +1 @@ -DIST bootengine-7727ec78da72e700e8fa1ce2144cb2476448d186.tar.gz 31237 BLAKE2B bb98ec8dc8ae569c34b9bedc9196d7befa54df26177632e447804325a3ce3461d20573303872636c8c93ed9a731dca67faa8e25cfafb432fab82793c6932c8e2 SHA512 dfe5e741d2ed96397068c59619ae63b72180d18c29b280dd33b9f152c5e83d3b10a07217e67a95b671546aa1e3903fcdf9f65aa57b7baf6d6036a9e76db1479b +DIST bootengine-d22a111e9c703c94f4e92466c37d2665a937c702.tar.gz 31246 BLAKE2B 70b20586e024c23554cbddf7d48418d854a532d8d5935f161a4414777d65d1e410d0185176a1d845eb3afcc5526cf51e9b5396b28fce72060d4df434b057f22b SHA512 fa681decdeb2adfdd9c2c0c0fa9773d1d26fee14066ddae154e0f3003db0beac6147968fc16c9782d51c413df74bad323c4ea30dba78a06d3587449a7cd9c63f diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-0.0.38-r49.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-0.0.38-r51.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-0.0.38-r49.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-0.0.38-r51.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-9999.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-9999.ebuild index e85982f0dd1..df46b920279 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-9999.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-kernel/bootengine/bootengine-9999.ebuild @@ -10,7 +10,7 @@ if [[ ${PV} == 9999 ]]; then EGIT_REPO_URI="https://github.com/flatcar/bootengine.git" inherit git-r3 else - EGIT_VERSION="7727ec78da72e700e8fa1ce2144cb2476448d186" # flatcar-master + EGIT_VERSION="d22a111e9c703c94f4e92466c37d2665a937c702" # flatcar-master SRC_URI="https://github.com/flatcar/bootengine/archive/${EGIT_VERSION}.tar.gz -> ${PN}-${EGIT_VERSION}.tar.gz" S="${WORKDIR}/${PN}-${EGIT_VERSION}" KEYWORDS="amd64 arm arm64 x86" From 98b120cb01fccec5b622da697a70c692b3f0d557 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:12:56 +0200 Subject: [PATCH 5/8] coreos-base/afterburn: pull outscale patch Signed-off-by: Mathieu Tortuyaux --- ...0-r3.ebuild => afterburn-5.10.0-r4.ebuild} | 0 ...405322dc35ab709c6d9478fb594336b92b93.patch | 293 ++++++++++++++++++ 2 files changed, 293 insertions(+) rename sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/{afterburn-5.10.0-r3.ebuild => afterburn-5.10.0-r4.ebuild} (100%) create mode 100644 sdk_container/src/third_party/coreos-overlay/coreos/user-patches/coreos-base/afterburn/399b405322dc35ab709c6d9478fb594336b92b93.patch diff --git a/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r3.ebuild b/sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r4.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r3.ebuild rename to sdk_container/src/third_party/coreos-overlay/coreos-base/afterburn/afterburn-5.10.0-r4.ebuild diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/coreos-base/afterburn/399b405322dc35ab709c6d9478fb594336b92b93.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/coreos-base/afterburn/399b405322dc35ab709c6d9478fb594336b92b93.patch new file mode 100644 index 00000000000..1a1bf8c964b --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/coreos-base/afterburn/399b405322dc35ab709c6d9478fb594336b92b93.patch @@ -0,0 +1,293 @@ +From 399b405322dc35ab709c6d9478fb594336b92b93 Mon Sep 17 00:00:00 2001 +From: Mohammad AMLA +Date: Wed, 12 Aug 2026 17:11:31 +0200 +Subject: [PATCH] providers: Add Outscale support + +Signed-off-by: Mathieu Tortuyaux +--- + docs/platforms.md | 4 + + docs/release-notes.md | 2 + + docs/usage/attributes.md | 8 ++ + dracut/30afterburn/afterburn-hostname.service | 1 + + src/metadata.rs | 2 + + src/providers/mod.rs | 1 + + src/providers/outscale/mock_tests.rs | 132 ++++++++++++++++++ + src/providers/outscale/mod.rs | 97 +++++++++++++ + systemd/afterburn-sshkeys@.service.in | 1 + + 9 files changed, 248 insertions(+) + create mode 100644 src/providers/outscale/mock_tests.rs + create mode 100644 src/providers/outscale/mod.rs + +diff --git a/src/metadata.rs b/src/metadata.rs +index f43f94210..34fca8216 100644 +--- a/src/metadata.rs ++++ b/src/metadata.rs +@@ -32,6 +32,7 @@ use crate::providers::microsoft::azurestack::AzureStack; + use crate::providers::openstack; + use crate::providers::openstack::network::OpenstackProviderNetwork; + use crate::providers::oraclecloud::OracleCloudProvider; ++use crate::providers::outscale::OutscaleProvider; + use crate::providers::packet::PacketProvider; + use crate::providers::powervs::PowerVSProvider; + use crate::providers::proxmoxve; +@@ -71,6 +72,7 @@ pub fn fetch_metadata(provider: &str) -> Result kubevirt::try_new_provider_else_noop(), + "openstack" => openstack::try_config_drive_else_network(), + "openstack-metadata" => box_result!(OpenstackProviderNetwork::try_new()?), ++ "outscale" => box_result!(OutscaleProvider::try_new()?), + "oraclecloud" => box_result!(OracleCloudProvider::try_new()?), + "packet" => box_result!(PacketProvider::try_new()?), + "powervs" => box_result!(PowerVSProvider::try_new()?), +diff --git a/src/providers/mod.rs b/src/providers/mod.rs +index e7757ba63..dedfe8206 100644 +--- a/src/providers/mod.rs ++++ b/src/providers/mod.rs +@@ -38,6 +38,7 @@ pub mod microsoft; + pub mod noop; + pub mod openstack; + pub mod oraclecloud; ++pub mod outscale; + pub mod packet; + pub mod powervs; + pub mod proxmoxve; +diff --git a/src/providers/outscale/mock_tests.rs b/src/providers/outscale/mock_tests.rs +new file mode 100644 +index 000000000..827e6622e +--- /dev/null ++++ b/src/providers/outscale/mock_tests.rs +@@ -0,0 +1,132 @@ ++use std::collections::HashMap; ++ ++use crate::providers::outscale::OutscaleProvider; ++use crate::providers::MetadataProvider; ++use mockito; ++ ++#[test] ++fn test_hostname() { ++ let ep = "/latest/meta-data/hostname"; ++ let hostname = "test-hostname"; ++ ++ let mut server = mockito::Server::new(); ++ let mut provider = OutscaleProvider::try_new().unwrap(); ++ provider.client = provider.client.max_retries(0).mock_base_url(server.url()); ++ ++ server.mock("GET", ep).with_status(503).create(); ++ provider.hostname().unwrap_err(); ++ ++ server ++ .mock("GET", ep) ++ .with_status(200) ++ .with_body(hostname) ++ .create(); ++ let v = provider.hostname().unwrap(); ++ assert_eq!(v, Some(hostname.to_string())); ++ ++ server.mock("GET", ep).with_status(404).create(); ++ let v = provider.hostname().unwrap(); ++ assert_eq!(v, None); ++ ++ server ++ .mock("GET", ep) ++ .with_status(200) ++ .with_body("") ++ .create(); ++ let v = provider.hostname().unwrap(); ++ assert_eq!(v, None); ++ ++ server.reset(); ++ provider.hostname().unwrap_err(); ++} ++ ++#[test] ++fn test_pubkeys() { ++ let mut server = mockito::Server::new(); ++ let mut provider = OutscaleProvider::try_new().unwrap(); ++ provider.client = provider.client.max_retries(0).mock_base_url(server.url()); ++ ++ server.mock("GET", "/latest/meta-data/public-keys/0/openssh-key") ++ .with_status(200) ++ .with_body("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCsXe6CfHl45kCIzMF92VhDf2NpBWUyS1+IiTtxm5a83mT9730Hb8xim7GYeJu47kiESw2DAN8vNJ/Irg0apZ217ah2rXXjPQuWYSXuEuap8yLBSjqw8exgqVj/kzW+YqmnHASxI13eoFDxTQQGzyqbqowvxu/5gQmDwBmNAa9bT809ziB/qmpS1mD6qyyFDpR23kUwu3TkgAbwMXBDoqK+pdwfaF9uo9XaLHNEH8lD5BZuG2BeDafm2o76DhNSo83MvcCPNXKLxu3BbX/FCMFO6O8RRqony4i91fEV1b8TbXrbJz1bwEYEnJRvmjnqI/389tQFeYvplXR2WdT9PCKyEAG+j8y6XgecIcdTqV/7gFfak1mp2S7mYHZDnXixsn3MjCP/cIxxJVDitKusnj1TdFqtSXl4tqGccbg/5Sqnt/EVSK4bGwwBxv/YmE0P9cbXLxuEVI0JYzgrQvC8TtUgd8kUu2jqi1/Yj9IWm3aFsl/hhh8YwYrv/gm8PV0TxkM= root@example1\n ++ ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDj6FBVgkTt7/DB93VVLk6304Nx7WUjLBJDSCh38zjCimHUpeo9uYDxflfu2N1CLtrSImIKBVP/JRy9g7K4zmRAH/wXw2UxYziX+hZoFIpbW3GmYQqhjx2lDvIRXJI7blhHhTUNWX5f10lFAYOLqA9J859AB1w7ND09+MS3jQgSazCx17h+QZ0qQ6kLSfnXw9PMUOE1Xba9hD1nYj14ryTVj9jrFPMFuUfXdb/G9lsDJ+cGvdE2/RMuPfDmEdo04zvZ5fQJJKvS7OyAuYev4Y+JC8MhEr756ITDZ17yq4BEMo/8rNPxZ5Von/8xnvry+8/2C3ep9rZyHtCwpRb6WT6TndV2ddXKhEIneyd1XiOcWPJguHj5vSoMN3mo8k2PvznGauvxBstvpjUSFLQu869/ZQwyMnbQi3wnkJk5CpLXePXn1J9njocJjt8+SKGijmmIAsmYosx8gmmu3H1mvq9Wi0qqWDITMm+J24AZBEPBhwVrjhLZb5MKxylF6JFJJBs= root@example2") ++ .create(); ++ ++ let keys = provider.ssh_keys().unwrap(); ++ assert_ne!(keys, vec![]); ++ assert_eq!(keys.len(), 2); ++ ++ assert_eq!(keys[0].options, None); ++ assert_eq!(keys[0].comment, Some("root@example1".to_string())); ++ ++ assert_eq!(keys[1].options, None); ++ assert_eq!(keys[1].comment, Some("root@example2".to_string())); ++ ++ server.reset(); ++ provider.ssh_keys().unwrap_err(); ++} ++ ++#[test] ++fn test_attributes() { ++ let instance_id = "i-be1dcf1a"; ++ let ami_id = "ami-12345678"; ++ let instance_type = "c4.large"; ++ let availability_zone = "eu-west-2a"; ++ let local_ipv4 = "10.0.0.1"; ++ let reservation_id = "r-12345678"; ++ let hostname = "ip-10-0-0-1.eu-west-2.compute.outscale.com"; ++ ++ let endpoints = HashMap::from([ ++ ("/latest/meta-data/instance-id", instance_id), ++ ("/latest/meta-data/ami-id", ami_id), ++ ("/latest/meta-data/instance-type", instance_type), ++ ( ++ "/latest/meta-data/placement/availability-zone", ++ availability_zone, ++ ), ++ ("/latest/meta-data/local-ipv4", local_ipv4), ++ ("/latest/meta-data/reservation-id", reservation_id), ++ ("/latest/meta-data/hostname", hostname), ++ ]); ++ ++ let mut server = mockito::Server::new(); ++ for (endpoint, body) in endpoints { ++ server ++ .mock("GET", endpoint) ++ .with_status(200) ++ .with_body(body) ++ .create(); ++ } ++ ++ let attributes = HashMap::from([ ++ ("OUTSCALE_INSTANCE_ID".to_string(), instance_id.to_string()), ++ ("OUTSCALE_AMI_ID".to_string(), ami_id.to_string()), ++ ( ++ "OUTSCALE_INSTANCE_TYPE".to_string(), ++ instance_type.to_string(), ++ ), ++ ( ++ "OUTSCALE_AVAILABILITY_ZONE".to_string(), ++ availability_zone.to_string(), ++ ), ++ ("OUTSCALE_LOCAL_IPV4".to_string(), local_ipv4.to_string()), ++ ( ++ "OUTSCALE_RESERVATION_ID".to_string(), ++ reservation_id.to_string(), ++ ), ++ ("OUTSCALE_HOSTNAME".to_string(), hostname.to_string()), ++ ]); ++ ++ let client = crate::retry::Client::try_new() ++ .unwrap() ++ .max_retries(0) ++ .return_on_404(true) ++ .mock_base_url(server.url()); ++ let provider = OutscaleProvider { client }; ++ ++ let v = provider.attributes().unwrap(); ++ assert_eq!(v, attributes); ++ ++ server.reset(); ++ provider.attributes().unwrap_err(); ++} +diff --git a/src/providers/outscale/mod.rs b/src/providers/outscale/mod.rs +new file mode 100644 +index 000000000..64f299bdb +--- /dev/null ++++ b/src/providers/outscale/mod.rs +@@ -0,0 +1,97 @@ ++// Copyright 2026 CoreOS, Inc. ++// ++// Licensed under the Apache License, Version 2.0 (the "License"); ++// you may not use this file except in compliance with the License. ++// You may obtain a copy of the License at ++// ++// http://www.apache.org/licenses/LICENSE-2.0 ++// ++// Unless required by applicable law or agreed to in writing, software ++// distributed under the License is distributed on an "AS IS" BASIS, ++// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ++// See the License for the specific language governing permissions and ++// limitations under the License. ++ ++//! Outscale provider metadata fetcher ++//! This provider is selected via the platform ID `outscale`. ++//! The metadata endpoint is documented at https://docs.outscale.com/en/userguide/Accessing-the-Metadata-and-User-Data-of-a-VM.html. ++ ++use anyhow::Result; ++use openssh_keys::PublicKey; ++use std::collections::HashMap; ++ ++use crate::providers::MetadataProvider; ++use crate::retry; ++ ++#[cfg(test)] ++mod mock_tests; ++ ++#[derive(Clone, Debug)] ++pub struct OutscaleProvider { ++ client: retry::Client, ++} ++ ++impl OutscaleProvider { ++ pub fn try_new() -> Result { ++ let client = retry::Client::try_new()?.return_on_404(true); ++ ++ Ok(OutscaleProvider { client }) ++ } ++ ++ fn endpoint_for(name: &str) -> String { ++ format!("http://169.254.169.254/latest/meta-data/{name}") ++ } ++ ++ fn fetch_attribute(&self, endpoint: &str) -> Result> { ++ let content: Option = self ++ .client ++ .get(retry::Raw, Self::endpoint_for(endpoint)) ++ .send()?; ++ ++ Ok(content) ++ } ++} ++ ++impl MetadataProvider for OutscaleProvider { ++ fn attributes(&self) -> Result> { ++ let attributes = [ ++ ("OUTSCALE_INSTANCE_ID", "instance-id"), ++ ("OUTSCALE_AMI_ID", "ami-id"), ++ ("OUTSCALE_INSTANCE_TYPE", "instance-type"), ++ ("OUTSCALE_AVAILABILITY_ZONE", "placement/availability-zone"), ++ ("OUTSCALE_LOCAL_IPV4", "local-ipv4"), ++ ("OUTSCALE_RESERVATION_ID", "reservation-id"), ++ ("OUTSCALE_HOSTNAME", "hostname"), ++ ]; ++ let mut out = HashMap::with_capacity(attributes.len()); ++ ++ for (key, endpoint) in attributes { ++ if let Some(value) = self.fetch_attribute(endpoint)? { ++ out.insert(key.to_string(), value); ++ } ++ } ++ ++ Ok(out) ++ } ++ ++ fn hostname(&self) -> Result> { ++ Ok(self ++ .fetch_attribute("hostname")? ++ .filter(|value| !value.is_empty())) ++ } ++ ++ fn ssh_keys(&self) -> Result> { ++ let Some(keys) = self.fetch_attribute("public-keys/0/openssh-key")? else { ++ return Ok(Vec::new()); ++ }; ++ ++ let keys = keys ++ .lines() ++ .map(str::trim) ++ .filter(|line| !line.is_empty()) ++ .map(PublicKey::parse) ++ .collect::, _>>()?; ++ ++ Ok(keys) ++ } ++} From 8749603bc9cbd38669cf79a47e4ab937b41971d7 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 21 Sep 2026 16:49:28 +0200 Subject: [PATCH 6/8] vms: use gzip compression for outscale Signed-off-by: Mathieu Tortuyaux --- ci-automation/vms.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci-automation/vms.sh b/ci-automation/vms.sh index 98167099f99..f01f9cf6889 100644 --- a/ci-automation/vms.sh +++ b/ci-automation/vms.sh @@ -139,7 +139,7 @@ function _vm_build_impl() { COMPRESSION_FORMAT="zip" elif [[ "${format}" =~ ^(scaleway|kubevirt|proxmoxve|stackit|exoscale|oraclecloud)$ ]];then COMPRESSION_FORMAT="none" - elif [[ "${format}" =~ ^(akamai)$ ]];then + elif [[ "${format}" =~ ^(akamai|outscale)$ ]];then COMPRESSION_FORMAT="gz" fi ./run_sdk_container -n "${vms_container}" -C "${packages_image}" \ From 7c01bec26258573bd30b9e8b31bf86d6baceaab1 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 9 Nov 2026 17:18:49 +0100 Subject: [PATCH 7/8] sys-apps/ignition: pull 2.28.0 All patches applied correctly - thanks to regular updates. Signed-off-by: Mathieu Tortuyaux --- changelog/updates/2026-11-06-ignition.md | 1 + .../src/third_party/coreos-overlay/sys-apps/ignition/Manifest | 2 +- .../ignition/files/0001-config-add-ignition-translation.patch | 2 +- .../ignition/files/0002-mod-add-flatcar-ignition-0.36.2.patch | 2 +- .../files/0003-config-v3_7-convert-ignition-2.x-to-3.x.patch | 2 +- .../0004-internal-prv-cmdline-backport-flatcar-patch.patch | 2 +- .../ignition/files/0005-provider-qemu-apply-fw_cfg-patch.patch | 2 +- ...6-internal-disk-fs-ignore-fs-format-mismatches-for-the.patch | 2 +- ...7-VMware-Fix-guestinfo.-.config.data-and-.config.url-v.patch | 2 +- .../0008-config-version-handle-configuration-version-1.patch | 2 +- ...9-config-util-add-cloud-init-detection-to-initial-pars.patch | 2 +- .../ignition/files/0010-translation-support-OEM-and-oem.patch | 2 +- .../files/0011-internal-exec-stages-mount-Mount-oem.patch | 2 +- .../sys-apps/ignition/files/0012-go-mod-vendor.patch | 2 +- .../files/0013-Partially-revert-drop-OEM-URI-support.patch | 2 +- ...4-config-Support-oem-schema-in-newer-config-spec-versi.patch | 2 +- .../sys-apps/ignition/files/0015-usr-share-oem-oem.patch | 2 +- .../ignition/{ignition-2.27.0.ebuild => ignition-2.28.0.ebuild} | 0 18 files changed, 17 insertions(+), 16 deletions(-) create mode 100644 changelog/updates/2026-11-06-ignition.md rename sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/{ignition-2.27.0.ebuild => ignition-2.28.0.ebuild} (100%) diff --git a/changelog/updates/2026-11-06-ignition.md b/changelog/updates/2026-11-06-ignition.md new file mode 100644 index 00000000000..c0e684fc498 --- /dev/null +++ b/changelog/updates/2026-11-06-ignition.md @@ -0,0 +1 @@ +- Ignition ([2.28.0](https://github.com/coreos/ignition/releases/tag/v2.28.0)) diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/Manifest index 45a6864585f..a62910d0760 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/Manifest @@ -1 +1 @@ -DIST ignition-2.27.0.tar.gz 4333458 BLAKE2B d8c76132621fce6053972ba45a3a70acfdfd9a212ca305a971e93741e9c37c09d67d07e9cbe6361a4c3cda1debe88587b47af4dc1557f65b3dc905b913c6245a SHA512 7f1ad2da57a196ba0d01b7f2f886f1484edb1f48b8f295f1ad9a4ef9ba2801f0d9d3e9701ec266b4a2446bbf182c50c6733b5ca069ac0c749d77ed342d6a6a9e +DIST ignition-2.28.0.tar.gz 4363366 BLAKE2B 76bdf13ff61bc58e2e128c0527cc1fe6bead2919747e691c31a3a5b61ab1997dfa34ef440c571c077a4d259b1523cdc3048ff1e1fe44bdb078611791794bdf49 SHA512 8d54ba69ef5ded2b49ff386c778a87bc64e813924a94540f1b3acf8fb835e22c345c369ce68affe710ae1bc951857cb39798d3b55d321a085dfb4d4fcfdf7a07 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0001-config-add-ignition-translation.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0001-config-add-ignition-translation.patch index 926e54c8ce4..8c2935f627d 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0001-config-add-ignition-translation.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0001-config-add-ignition-translation.patch @@ -1,4 +1,4 @@ -From 70dd79997dd9766d49a9e847d6b293b10e90198c Mon Sep 17 00:00:00 2001 +From dc83e464546696a123f952db7ee330f6627136d0 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 26 Sep 2022 12:12:04 +0200 Subject: [PATCH 01/15] config: add ignition translation diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0002-mod-add-flatcar-ignition-0.36.2.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0002-mod-add-flatcar-ignition-0.36.2.patch index 2519a1b2cca..250e4b939fd 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0002-mod-add-flatcar-ignition-0.36.2.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0002-mod-add-flatcar-ignition-0.36.2.patch @@ -1,4 +1,4 @@ -From 0680a8bf7e00fcd64b0e75de31978d322e3a27ee Mon Sep 17 00:00:00 2001 +From 247c19c3aeb9c5bdacab51399c150d3ad31eec6e Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Thu, 20 Aug 2026 14:22:56 +0200 Subject: [PATCH 02/15] mod: add flatcar/ignition@0.36.2 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0003-config-v3_7-convert-ignition-2.x-to-3.x.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0003-config-v3_7-convert-ignition-2.x-to-3.x.patch index f919ca4093e..c95b9fbe4be 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0003-config-v3_7-convert-ignition-2.x-to-3.x.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0003-config-v3_7-convert-ignition-2.x-to-3.x.patch @@ -1,4 +1,4 @@ -From 051aad96d87cbbce464990584663cc5a0a867ec1 Mon Sep 17 00:00:00 2001 +From 3b1fae641e4a34523fadca700242bb25dc107246 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Thu, 20 Aug 2026 14:23:22 +0200 Subject: [PATCH 03/15] config/v3_7: convert ignition 2.x to 3.x diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0004-internal-prv-cmdline-backport-flatcar-patch.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0004-internal-prv-cmdline-backport-flatcar-patch.patch index bcc6c029979..48a333eb853 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0004-internal-prv-cmdline-backport-flatcar-patch.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0004-internal-prv-cmdline-backport-flatcar-patch.patch @@ -1,4 +1,4 @@ -From b243d181ee03c845db23b41eadcc9955aff44212 Mon Sep 17 00:00:00 2001 +From 4425f57c20657b980b2b6feebb8952596fdfa5a7 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 19 Feb 2024 18:12:22 +0100 Subject: [PATCH 04/15] internal/prv/cmdline: backport flatcar patch diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0005-provider-qemu-apply-fw_cfg-patch.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0005-provider-qemu-apply-fw_cfg-patch.patch index 452192f6ec0..d7e5c56fc08 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0005-provider-qemu-apply-fw_cfg-patch.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0005-provider-qemu-apply-fw_cfg-patch.patch @@ -1,4 +1,4 @@ -From 7678ef605609f94b5e6e41aca95efbae8424d2d5 Mon Sep 17 00:00:00 2001 +From 13fdf59a4e564aed696bf4781d813fd99667c40f Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Thu, 20 Aug 2026 15:11:57 +0200 Subject: [PATCH 05/15] provider/qemu: apply fw_cfg patch diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0006-internal-disk-fs-ignore-fs-format-mismatches-for-the.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0006-internal-disk-fs-ignore-fs-format-mismatches-for-the.patch index efc1b9c4330..8053b1917d2 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0006-internal-disk-fs-ignore-fs-format-mismatches-for-the.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0006-internal-disk-fs-ignore-fs-format-mismatches-for-the.patch @@ -1,4 +1,4 @@ -From 7ea9a5080f23361ee6ddd469ad3e16e59f010aca Mon Sep 17 00:00:00 2001 +From df524012c1d651f37b4b2e2c7877747e5c5fca4e Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Wed, 22 Sep 2021 14:53:49 +0200 Subject: [PATCH 06/15] internal/disk/fs: ignore fs format mismatches for the diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0007-VMware-Fix-guestinfo.-.config.data-and-.config.url-v.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0007-VMware-Fix-guestinfo.-.config.data-and-.config.url-v.patch index 58173b9b431..3e415604b4b 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0007-VMware-Fix-guestinfo.-.config.data-and-.config.url-v.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0007-VMware-Fix-guestinfo.-.config.data-and-.config.url-v.patch @@ -1,4 +1,4 @@ -From 98d31c4c7fb9a47955e0128eb42e0ac131392058 Mon Sep 17 00:00:00 2001 +From 6cc22321902bccd092cb6566a79a8eff6cd5c7d5 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Tue, 20 Feb 2024 10:12:02 +0100 Subject: [PATCH 07/15] VMware: Fix guestinfo.*.config.data and *.config.url diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0008-config-version-handle-configuration-version-1.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0008-config-version-handle-configuration-version-1.patch index c68bc11e85d..738ce40820b 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0008-config-version-handle-configuration-version-1.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0008-config-version-handle-configuration-version-1.patch @@ -1,4 +1,4 @@ -From 53ef77a20decae34e311708cb49c31d4a1cfd03e Mon Sep 17 00:00:00 2001 +From b503727c295a50f7bc52f59c8aee43b82369e3f0 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Wed, 2 Feb 2022 13:27:18 +0100 Subject: [PATCH 08/15] config/version: handle configuration version 1 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0009-config-util-add-cloud-init-detection-to-initial-pars.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0009-config-util-add-cloud-init-detection-to-initial-pars.patch index 71d81222fcd..846af6d2994 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0009-config-util-add-cloud-init-detection-to-initial-pars.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0009-config-util-add-cloud-init-detection-to-initial-pars.patch @@ -1,4 +1,4 @@ -From 098a5be89077eeb510f3b1a64e74a5f9ba8a9081 Mon Sep 17 00:00:00 2001 +From 0888c7ba8e70bf4811f58defac5a5b4636803b2a Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Tue, 22 Feb 2022 15:41:13 +0100 Subject: [PATCH 09/15] config/util: add cloud init detection to initial diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0010-translation-support-OEM-and-oem.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0010-translation-support-OEM-and-oem.patch index 9cd6e8d5e67..6990a792629 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0010-translation-support-OEM-and-oem.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0010-translation-support-OEM-and-oem.patch @@ -1,4 +1,4 @@ -From 53af65c1f108785d61aff862ff8978220d41d3a4 Mon Sep 17 00:00:00 2001 +From e9839418517f1d2fe51789ca7916b6a433e4dbe1 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Thu, 10 Nov 2022 11:58:49 +0100 Subject: [PATCH 10/15] translation: support OEM and oem diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0011-internal-exec-stages-mount-Mount-oem.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0011-internal-exec-stages-mount-Mount-oem.patch index 0ba3a7b80e0..cdcc34e289f 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0011-internal-exec-stages-mount-Mount-oem.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0011-internal-exec-stages-mount-Mount-oem.patch @@ -1,4 +1,4 @@ -From f680d14d8d0174ae2f1967acd04098445501a46e Mon Sep 17 00:00:00 2001 +From e1324281b5736e8cd5eb66fab6f6371e6e7b8de2 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Tue, 16 May 2023 17:43:43 +0200 Subject: [PATCH 11/15] internal/exec/stages/mount: Mount /oem diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0012-go-mod-vendor.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0012-go-mod-vendor.patch index 054f7fa1c1d..f3056546cbf 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0012-go-mod-vendor.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0012-go-mod-vendor.patch @@ -1,4 +1,4 @@ -From d9a2c83900a0d66021dfe69bbf00c625287a6437 Mon Sep 17 00:00:00 2001 +From f6e31fd76f344601246d3ffe160e5d15c50e6375 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Thu, 3 Sep 2026 15:00:47 +0100 Subject: [PATCH 12/15] go mod vendor diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0013-Partially-revert-drop-OEM-URI-support.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0013-Partially-revert-drop-OEM-URI-support.patch index e3c1fe8eba1..1ae165dfc91 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0013-Partially-revert-drop-OEM-URI-support.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0013-Partially-revert-drop-OEM-URI-support.patch @@ -1,4 +1,4 @@ -From 1c4a140b210d2a6480f43cf1a65d7ff58bf51f69 Mon Sep 17 00:00:00 2001 +From b2374ec09b9fc82072f2d1c6dcddb9a6a587ee67 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Wed, 1 Apr 2026 16:11:52 +0100 Subject: [PATCH 13/15] Partially revert "*: drop OEM URI support" diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0014-config-Support-oem-schema-in-newer-config-spec-versi.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0014-config-Support-oem-schema-in-newer-config-spec-versi.patch index d0cddf82f56..c60aaa4a3c0 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0014-config-Support-oem-schema-in-newer-config-spec-versi.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0014-config-Support-oem-schema-in-newer-config-spec-versi.patch @@ -1,4 +1,4 @@ -From 691dfae5bebac72a36b99e6cbfca5a5f43741d64 Mon Sep 17 00:00:00 2001 +From a9b8c78fe8dbe8a62fb8e6d6c54b7c50a5323344 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Mon, 6 Apr 2026 13:13:58 +0100 Subject: [PATCH 14/15] config: Support oem:// schema in newer config spec diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0015-usr-share-oem-oem.patch b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0015-usr-share-oem-oem.patch index 5a279c8eb44..a942c11cd79 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0015-usr-share-oem-oem.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/files/0015-usr-share-oem-oem.patch @@ -1,4 +1,4 @@ -From 62e22b4b62eadddeda74a8bdc5df30d753345aea Mon Sep 17 00:00:00 2001 +From 391376c7683c07b9e3685297a84d43b220acdf30 Mon Sep 17 00:00:00 2001 From: James Le Cuirot Date: Wed, 25 Mar 2026 10:55:24 +0000 Subject: [PATCH 15/15] /usr/share/oem -> /oem diff --git a/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/ignition-2.27.0.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/ignition-2.28.0.ebuild similarity index 100% rename from sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/ignition-2.27.0.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/ignition-2.28.0.ebuild From 0fbc433fe48b7f28b41faa26c1511d7784d07969 Mon Sep 17 00:00:00 2001 From: Mathieu Tortuyaux Date: Mon, 9 Nov 2026 23:10:46 +0100 Subject: [PATCH 8/8] changelog: add entry Signed-off-by: Mathieu Tortuyaux --- changelog/changes/2026-11-09-outscale.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog/changes/2026-11-09-outscale.md diff --git a/changelog/changes/2026-11-09-outscale.md b/changelog/changes/2026-11-09-outscale.md new file mode 100644 index 00000000000..efa3c7c190f --- /dev/null +++ b/changelog/changes/2026-11-09-outscale.md @@ -0,0 +1 @@ +- Added Outscale images ([Flatcar#2334](https://github.com/flatcar/Flatcar/issues/2334))