Compare commits

..

No commits in common. "c9-beta" and "c10s" have entirely different histories.

8 changed files with 159 additions and 86 deletions

34
.gitignore vendored
View File

@ -1,2 +1,32 @@
SOURCES/afterburn-5.6.0-vendor.tar.gz /afterburn-4.1.0.crate
SOURCES/afterburn-5.6.0.crate /afterburn-4.1.1.crate
/afterburn-4.1.2.crate
/afterburn-4.1.3.crate
/afterburn-4.2.0.crate
/afterburn-4.3.1.crate
/afterburn-4.3.2.crate
/afterburn-4.3.3.crate
/afterburn-4.4.0.crate
/afterburn-4.4.2.crate
/afterburn-4.5.0.crate
/afterburn-4.5.1.crate
/afterburn-4.5.3.crate
/afterburn-4.6.0.crate
/afterburn-5.0.0.crate
/afterburn-5.1.0.crate
/afterburn-5.2.0.crate
/afterburn-5.2.0-vendor.tar.gz
/afterburn-5.3.0.crate
/afterburn-5.3.0-vendor.tar.gz
/afterburn-5.4.0.crate
/afterburn-5.4.0-vendor.tar.gz
/afterburn-5.4.2.crate
/afterburn-5.4.2-vendor.tar.gz
/afterburn-5.4.3.crate
/afterburn-5.4.3-vendor.tar.gz
/afterburn-5.5.0.crate
/afterburn-5.5.0-vendor.tar.gz
/afterburn-5.5.1.crate
/afterburn-5.5.1-vendor.tar.gz
/afterburn-5.7.0.crate
/afterburn-5.7.0-vendor.tar.gz

View File

@ -1,2 +0,0 @@
5676e290f3d19e25a2007ae2825251cb027ea0c1 SOURCES/afterburn-5.6.0-vendor.tar.gz
ad9a72bd56faac2fa98ba40224463aec110246d8 SOURCES/afterburn-5.6.0.crate

3
README.md Normal file
View File

@ -0,0 +1,3 @@
# rust-afterburn
The rust-afterburn package

View File

@ -1,32 +0,0 @@
From c3fda955572ae6f6e9101fb15f62dee8d323e508 Mon Sep 17 00:00:00 2001
From: Steven Presti <spresti@redhat.com>
Date: Tue, 25 Jun 2024 10:16:14 -0400
Subject: [PATCH] metadata: add legacy-providers
---
src/metadata.rs | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/metadata.rs b/src/metadata.rs
index b89bf5b..e5021f7 100644
--- a/src/metadata.rs
+++ b/src/metadata.rs
@@ -53,6 +53,7 @@ pub fn fetch_metadata(provider: &str) -> Result<Box<dyn providers::MetadataProvi
"akamai" => box_result!(AkamaiProvider::try_new()?),
"aliyun" => box_result!(AliyunProvider::try_new()?),
"aws" => box_result!(AwsProvider::try_new()?),
+ "ec2" => box_result!(AwsProvider::try_new()?),
"azure" => box_result!(Azure::try_new()?),
"azurestack" => box_result!(AzureStack::try_new()?),
"cloudstack-metadata" => box_result!(CloudstackNetwork::try_new()?),
@@ -60,6 +61,7 @@ pub fn fetch_metadata(provider: &str) -> Result<Box<dyn providers::MetadataProvi
"digitalocean" => box_result!(DigitalOceanProvider::try_new()?),
"exoscale" => box_result!(ExoscaleProvider::try_new()?),
"gcp" => box_result!(GcpProvider::try_new()?),
+ "gce" => box_result!(GcpProvider::try_new()?),
"hetzner" => box_result!(HetznerProvider::try_new()?),
// IBM Cloud - VPC Generation 2.
"ibmcloud" => box_result!(IBMGen2Provider::try_new()?),
--
2.43.2

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} # this is the testcase identifier, which OSCI pipeline uses

View File

@ -1,27 +1,22 @@
# Generated by rust2rpm 15 # Generated by rust2rpm 24
%bcond_without check %bcond_without check
%global __cargo_skip_build 0
%global dracutmodulesdir %(pkg-config --variable=dracutmodulesdir dracut || echo '/usr/lib/dracut/modules.d') %global dracutmodulesdir %(pkg-config --variable=dracutmodulesdir dracut || echo '/usr/lib/dracut/modules.d')
%global crate afterburn %global crate afterburn
Name: rust-%{crate} Name: rust-afterburn
Version: 5.6.0 Version: 5.7.0
Release: 1%{?dist} Release: 2%{?dist}
Summary: Simple cloud provider agent (RHEL CoreOS only) Summary: Simple cloud provider agent
# Upstream license specification: Apache-2.0 License: Apache-2.0
License: ASL 2.0
URL: https://crates.io/crates/afterburn URL: https://crates.io/crates/afterburn
Source0: %{crates_source} Source0: %{crates_source}
# not used on Fedora
Source1: https://github.com/coreos/%{crate}/releases/download/v%{version}/%{crate}-%{version}-vendor.tar.gz Source1: https://github.com/coreos/%{crate}/releases/download/v%{version}/%{crate}-%{version}-vendor.tar.gz
# Re-add support for "ec2" and "gce" providers, since RHCOS nodes installed
# from OCP 4.1 and 4.2 bootimages still call them by those names
Patch0: legacy-providers.patch
ExclusiveArch: %{rust_arches} %if 0%{?rhel}
%if 0%{?rhel} && !0%{?eln}
BuildRequires: rust-toolset BuildRequires: rust-toolset
BuildRequires: openssl-devel BuildRequires: openssl-devel
# This is needed because the cc crate, which is # This is needed because the cc crate, which is
@ -29,38 +24,49 @@ BuildRequires: openssl-devel
# does not work without it. # does not work without it.
BuildRequires: glibc-devel BuildRequires: glibc-devel
%else %else
BuildRequires: rust-packaging BuildRequires: rust-packaging >= 23
%endif %endif
BuildRequires: systemd BuildRequires: systemd
%global _description %{expand: %global _description %{expand:
This software is currently only supported on RHEL CoreOS. A simple cloud provider agent.}
Afterburn is a one-shot agent for cloud-like platforms which interacts with
provider-specific metadata endpoints. It is typically used in conjunction
with Ignition.
}
%description %{_description} %description %{_description}
%package -n %{crate} %package -n %{crate}
Summary: %{summary} Summary: %{summary}
# ASL 2.0
# ASL 2.0 or Boost # (Apache-2.0 OR MIT) AND BSD-3-Clause
# BSD # 0BSD
# Apache-2.0
# Apache-2.0 OR BSL-1.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-3-Clause
# MIT # MIT
# MIT or ASL 2.0 # MIT OR Apache-2.0
# MPLv2.0 or MIT or ASL 2.0 # MIT OR Apache-2.0 OR Zlib
# Unlicense or MIT # MPL-2.0 OR MIT OR Apache-2.0
# zlib # Unlicense OR MIT
License: ASL 2.0 and MIT and BSD and zlib # Zlib
# Zlib OR Apache-2.0 OR MIT
License: Apache-2.0 AND 0BSD AND BSD-3-Clause AND MIT AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (MPL-2.0 OR MIT OR Apache-2.0) AND (Unlicense OR MIT) AND Zlib
# LICENSE.dependencies contains a full license breakdown
%{?systemd_requires} %{?systemd_requires}
%description -n %{crate} %{_description} %description -n %{crate} %{_description}
%files -n %{crate} %files -n %{crate}
%license COPYRIGHT
%license LICENSE %license LICENSE
%license NOTICE
%license LICENSE.dependencies
%if 0%{?rhel}
%license cargo-vendor.txt
%endif
%doc README.md %doc README.md
%doc code-of-conduct.md
%{_bindir}/afterburn %{_bindir}/afterburn
%{_unitdir}/afterburn.service %{_unitdir}/afterburn.service
%{_unitdir}/afterburn-checkin.service %{_unitdir}/afterburn-checkin.service
@ -101,10 +107,11 @@ to run in the initramfs on boot.
%{dracutmodulesdir}/30afterburn/ %{dracutmodulesdir}/30afterburn/
%prep %prep
%autosetup -n %{crate}-%{version_no_tilde} -p1 %autosetup -n %{crate}-%{version_no_tilde} -p1 %{?rhel:-a1}
%if 0%{?rhel} && !0%{?eln} %if 0%{?rhel}
tar xvf %{SOURCE1}
%cargo_prep -v vendor %cargo_prep -v vendor
# avoid brp-mangle-shebangs error from sources with executable bit
chmod -x vendor/ipnet/src/*.rs
%else %else
%cargo_prep %cargo_prep
%endif %endif
@ -115,16 +122,21 @@ sed -e 's,@DEFAULT_INSTANCE@,core,' < \
systemd/afterburn-sshkeys@.service.in > \ systemd/afterburn-sshkeys@.service.in > \
systemd/afterburn-sshkeys@.service systemd/afterburn-sshkeys@.service
%if !0%{?rhel} || 0%{?eln} %if !0%{?rhel}
%generate_buildrequires %generate_buildrequires
%cargo_generate_buildrequires %cargo_generate_buildrequires
%endif %endif
%build %build
%cargo_build %cargo_build
%{?cargo_license_summary}
%{?cargo_license} > LICENSE.dependencies
%if 0%{?rhel}
%cargo_vendor_manifest
%endif
%install %install
%if 0%{?rhel} && !0%{?eln} %if 0%{?rhel}
%make_install INSTALL="install -p -c" %make_install INSTALL="install -p -c"
%else %else
%cargo_install %cargo_install
@ -140,32 +152,76 @@ cp -a dracut/* %{buildroot}%{dracutmodulesdir}
%endif %endif
%changelog %changelog
* Tue Jun 25 2024 Steven Presti <spresti@redhat.com> - 5.6.0-1 * Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 5.7.0-2
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon Sep 30 2024 Yasmin Valim <ydesouza@redhat.com> - 5.7.0-1
- New release - New release
* Thu Feb 1 2024 Michael Nguyen <mnguyen@redhat.com> - 5.5.1-2 * Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 5.5.1-4
- Add gcp-hostname.patch - Bump release for June 2024 mass rebuild
* Tue Jan 23 2024 Michael Nguyen <mnguyen@redhat.com> - 5.5.1-1 * Fri Feb 02 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 5.5.1-3
- New release - Update Rust macro usage
- Update legacy-providers patch to work with new release source
* Thu Jun 08 2023 Steven Presti <spresti@redhat.com> - 5.4.3-1 * Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.5.1-2
- New release - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Feb 06 2023 Benjamin Gilbert <bgilbert@redhat.com> - 5.4.1-1 * Tue Jan 16 2024 Michael Nguyen <mnguyen@redhat.com> 5.5.1-1
- New release - Update to 5.5.1
- Re-add support for "ec2" and "gce" providers (removed in 5.0.0)
* Mon Jan 9 2023 Steven Presti <spresti@redhat.com> - 5.3.0-2 * Tue Jan 09 2024 Michael Nguyen <mnguyen@redhat.com> 5.5.0-1
- Update description and summary to indicate this package is - Update to 5.5.0
only supported on RHEL CoreOS.
* Mon May 2 2022 Sohan Kunkerkar <skunkerk@redhat.com> - 5.3.0-1 * Fri Dec 01 2023 Fabio Valentini <decathorpe@gmail.com> - 5.4.3-2
- Rebuild for openssl crate >= v0.10.60 (RUSTSEC-2023-0044, RUSTSEC-2023-0072)
* Wed Oct 04 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 5.4.3-1
- Update to 5.4.3
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Mon May 22 2023 Steven Presti <spresti@redhat.com> - 5.4.2-1
- Update to 5.4.2
* Fri May 19 2023 Fabio Valentini <decathorpe@gmail.com> - 5.4.0-4
- Refresh for latest Rust package template; update license tag for SPDX
* Wed May 03 2023 Fabio Valentini <decathorpe@gmail.com> - 5.4.0-3
- Rebuild for tokio, h2, and openssl crate security updates
* Mon Mar 20 2023 Benjamin Gilbert <bgilbert@redhat.com> - 5.4.0-2
- Update for Mockito 1.0 API
* Fri Feb 03 2023 Benjamin Gilbert <bgilbert@redhat.com> - 5.4.0-1
- Update to 5.4.0
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.3.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Sohan Kunkerkar <skunkerk@redhat.com> - 5.3.0-2
- Backport patch to expose instance availability-zone-id
https://github.com/coreos/afterburn/pull/748
* Fri Apr 29 2022 Sohan Kunkerkar <skunkerk@redhat.com> - 5.3.0-1
- Update to 5.3.0 - Update to 5.3.0
* Wed Mar 09 2022 Timothée Ravier <tim@siosm.fr> - 5.2.0-2 * Tue Feb 15 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 5.2.0-5
- Remove Windows binaries from vendor tarball - Rebuild with package notes
* Mon Jan 31 2022 Benjamin Gilbert <bgilbert@redhat.com> - 5.2.0-4
- Rebuild to fix out-of-order push
* Tue Jan 25 2022 Fabio Valentini <decathorpe@gmail.com> - 5.2.0-3
- Rebuild with thread_local 1.1.4 for RUSTSEC-2022-0006.
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jan 14 2022 Benjamin Gilbert <bgilbert@redhat.com> - 5.2.0-1 * Fri Jan 14 2022 Benjamin Gilbert <bgilbert@redhat.com> - 5.2.0-1
- Update to 5.2.0 - Update to 5.2.0

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (afterburn-5.7.0.crate) = 120d6a4be3b3711d720b05f355d02b223e7b0ab5f5485878a408d86d5e233443fe158f22100a3641a7b5640b36c25a57eb8d1e0d27c3d344c5c4a6ac3b7e493c
SHA512 (afterburn-5.7.0-vendor.tar.gz) = 8053ea7370904bd2a85d29288e24f56245c3bb5da9b3b1c6ce962022f01c4394327e49d124f5ea0bf3662b6e89520d6aeaf51a2970d6d8b34d8b5c60676ec64a

9
tests/tests.yml Normal file
View File

@ -0,0 +1,9 @@
- hosts: localhost
roles:
- role: standard-test-basic
tags:
- classic
tests:
- simple:
dir: .
run: "afterburn --help"