From 3d8a6aef130bb01ec078c5e311dee20787c8fb44 Mon Sep 17 00:00:00 2001 From: Major Hayden Date: Wed, 8 May 2024 08:43:15 -0500 Subject: [PATCH 1/8] Initial import rhbz#2278626 --- .gitignore | 1 + amazon-ec2-utils.spec | 79 +++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 81 insertions(+) create mode 100644 .gitignore create mode 100644 amazon-ec2-utils.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d4790b3 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/v2.2.0.tar.gz diff --git a/amazon-ec2-utils.spec b/amazon-ec2-utils.spec new file mode 100644 index 0000000..0856070 --- /dev/null +++ b/amazon-ec2-utils.spec @@ -0,0 +1,79 @@ +Name: amazon-ec2-utils +Version: 2.2.0 +Release: %autorelease +Summary: Utilities and settings for Amazon EC2 +License: MIT AND CC-BY-SA-4.0 +URL: https://github.com/amazonlinux/%{name}/ +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildArch: noarch + +Requires: curl +Requires: python3 + +BuildRequires: python3-devel +BuildRequires: systemd-rpm-macros + +# ec2-metadata was once provided directly from a page on the AWS website, +# but an updated and maintained version is now offered in this package. ✨ +Provides: ec2-metadata = %{version}-%{release} +Obsoletes: ec2-metadata <= 0.1.3 + +%description +Contains a set of utilities and settings for Linux deployments in EC2. + + +%prep +%autosetup -p1 -n %{name}-%{version} + + +%build +# Nothing to build for this package. + + +%install +# Install regular udev rules for EC2 instances. +install -d -m 0755 %{buildroot}%{_udevrulesdir}/ +install -p -m 0644 51-ec2-hvm-devices.rules %{buildroot}%{_udevrulesdir}/ +install -p -m 0644 51-ec2-xen-vbd-devices.rules %{buildroot}%{_udevrulesdir}/ +install -p -m 0644 53-ec2-read-ahead-kb.rules %{buildroot}%{_udevrulesdir}/ +install -p -m 0644 70-ec2-nvme-devices.rules %{buildroot}%{_udevrulesdir}/ + +# The rules for cdrom are meant to override existing systemd udev rules. +install -d -m 0755 %{buildroot}%{_sysconfdir}/udev/rules.d/ +install -p -m 0644 60-cdrom_id.rules %{buildroot}%{_sysconfdir}/udev/rules.d/ + +# Some executables are meant for all users. +install -d -m 0755 %{buildroot}%{_bindir} +install -p -m 0755 ec2-metadata %{buildroot}%{_bindir} + +# Other executables are meant only for root. +install -d -m 0755 %{buildroot}%{_sbindir} +install -p -m 0755 ec2udev-vbd %{buildroot}%{_sbindir} +install -p -m 0755 ebsnvme-id %{buildroot}%{_sbindir} +install -p -m 0755 ec2nvme-nsid %{buildroot}%{_sbindir} + +# 📚 Documentation +install -d -m 0755 %{buildroot}%{_mandir}/man8/ +install -p -m 0644 doc/ebsnvme-id.8 %{buildroot}%{_mandir}/man8/ +install -p -m 0644 doc/ec2-metadata.8 %{buildroot}%{_mandir}/man8/ + + +%files +%license LICENSE +%doc CODE_OF_CONDUCT.md CONTRIBUTING.md NOTICE README.md +%{_bindir}/ec2-metadata +%{_sbindir}/ebsnvme-id +%{_sbindir}/ec2nvme-nsid +%{_sbindir}/ec2udev-vbd +%{_mandir}/man8/ebsnvme-id.8* +%{_mandir}/man8/ec2-metadata.8* +%{_udevrulesdir}/51-ec2-hvm-devices.rules +%{_udevrulesdir}/51-ec2-xen-vbd-devices.rules +%{_udevrulesdir}/53-ec2-read-ahead-kb.rules +%{_udevrulesdir}/70-ec2-nvme-devices.rules +%{_sysconfdir}/udev/rules.d//60-cdrom_id.rules + + +%changelog +%autochangelog diff --git a/sources b/sources new file mode 100644 index 0000000..3021f67 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (v2.2.0.tar.gz) = 57faa20e4066a77cb73fe530159a1b37dc6bd303852c6cf50dcaeeb9043ca529593ca5c6054264694b8f670f5683106827f342adec0f1abdc622ce81323d9900 From 8cb5114f39bee409941c325d94336c012f893ef7 Mon Sep 17 00:00:00 2001 From: Major Hayden Date: Wed, 8 May 2024 08:44:16 -0500 Subject: [PATCH 2/8] Add packit config --- .packit.yaml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .packit.yaml diff --git a/.packit.yaml b/.packit.yaml new file mode 100644 index 0000000..70dc53b --- /dev/null +++ b/.packit.yaml @@ -0,0 +1,28 @@ +upstream_tag_template: v{version} + +jobs: + - job: propose_downstream + trigger: release + dist_git_branches: + - fedora-all + + - job: pull_from_upstream + trigger: release + dist_git_branches: + - fedora-all + + - job: koji_build + trigger: commit + dist_git_branches: + - fedora-all + allowed_pr_authors: + - packit + - mhayden + allowed_committers: + - packit + - mhayden + + - job: bodhi_update + trigger: commit + dist_git_branches: + - fedora-branched From 034d4acc87790732301684d6bd182935a60712e5 Mon Sep 17 00:00:00 2001 From: Major Hayden Date: Wed, 8 May 2024 08:50:10 -0500 Subject: [PATCH 3/8] Ensure packit runs on epel9 --- .packit.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.packit.yaml b/.packit.yaml index 70dc53b..2fa88a7 100644 --- a/.packit.yaml +++ b/.packit.yaml @@ -5,16 +5,19 @@ jobs: trigger: release dist_git_branches: - fedora-all + - epel-9 - job: pull_from_upstream trigger: release dist_git_branches: - fedora-all + - epel-9 - job: koji_build trigger: commit dist_git_branches: - fedora-all + - epel-9 allowed_pr_authors: - packit - mhayden @@ -26,3 +29,4 @@ jobs: trigger: commit dist_git_branches: - fedora-branched + - epel-9 From 13be95eb2fda3f8cf03f9ba5c1a90e425a02a422 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 16:55:21 +0000 Subject: [PATCH 4/8] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 2f07799149210ac39d53f2e369dcadfca217f5ae Mon Sep 17 00:00:00 2001 From: Major Hayden Date: Mon, 23 Sep 2024 10:50:45 -0500 Subject: [PATCH 5/8] Remove EBS udev rules rhbz#2284397 Signed-off-by: Major Hayden --- amazon-ec2-utils.spec | 4 ++++ remove-EBS-udev-rules.patch | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 remove-EBS-udev-rules.patch diff --git a/amazon-ec2-utils.spec b/amazon-ec2-utils.spec index 0856070..1b839ce 100644 --- a/amazon-ec2-utils.spec +++ b/amazon-ec2-utils.spec @@ -6,6 +6,10 @@ License: MIT AND CC-BY-SA-4.0 URL: https://github.com/amazonlinux/%{name}/ Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +# Skip the EBS udev rules as they create invalid symlinks. +# See RHBZ#2284397 for more details. +Patch0: remove-EBS-udev-rules.patch + BuildArch: noarch Requires: curl diff --git a/remove-EBS-udev-rules.patch b/remove-EBS-udev-rules.patch new file mode 100644 index 0000000..43175a2 --- /dev/null +++ b/remove-EBS-udev-rules.patch @@ -0,0 +1,32 @@ +From 87d578a723f270b4a2bba120f3a143bc7c8b1b19 Mon Sep 17 00:00:00 2001 +From: Major Hayden +Date: Mon, 23 Sep 2024 10:47:15 -0500 +Subject: [PATCH] Remove EBS udev rules + +These rules create invalid symlinks. + +See RHBZ 2284397. + +Signed-off-by: Major Hayden +--- + 70-ec2-nvme-devices.rules | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/70-ec2-nvme-devices.rules b/70-ec2-nvme-devices.rules +index 6fae458..8f415a7 100644 +--- a/70-ec2-nvme-devices.rules ++++ b/70-ec2-nvme-devices.rules +@@ -13,10 +13,6 @@ KERNEL=="nvme[0-9]*n[0-9]*", ENV{DEVTYPE}=="disk", ATTRS{serial}=="?*", ATTRS{mo + KERNEL=="nvme[0-9]*n[0-9]*p[0-9]*", ENV{DEVTYPE}=="partition", ATTRS{serial}=="?*", ATTRS{model}=="?*", IMPORT{program}="/usr/sbin/ec2nvme-nsid %k" + KERNEL=="nvme[0-9]*n[0-9]*p[0-9]*", ENV{DEVTYPE}=="partition", ATTRS{serial}=="?*", ATTRS{model}=="?*", ENV{_NS_ID}=="?*", SYMLINK+="disk/by-id/nvme-$attr{model}_$attr{serial}-ns-$env{_NS_ID}-part%n", OPTIONS+="string_escape=replace" + +-# ebs nvme devices +-KERNEL=="nvme[0-9]*n[0-9]*", ENV{DEVTYPE}=="disk", ATTRS{model}=="Amazon Elastic Block Store", PROGRAM="/usr/sbin/ebsnvme-id -u /dev/%k", SYMLINK+="%c" +-KERNEL=="nvme[0-9]*n[0-9]*p[0-9]*", ENV{DEVTYPE}=="partition", ATTRS{model}=="Amazon Elastic Block Store", PROGRAM="/usr/sbin/ebsnvme-id -u /dev/%k", SYMLINK+="%c%n" +- + # Do not timeout I/O operations on EBS volumes. + KERNEL=="nvme[0-9]*n[0-9]*", ENV{DEVTYPE}=="disk", ATTRS{model}=="Amazon Elastic Block Store", ATTR{queue/io_timeout}="4294967295" + +-- +2.46.1 + From ba2a375b0f51303e0af45cf149b2c4ab5f892774 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 10:57:18 +0000 Subject: [PATCH 6/8] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 595385f0771131e1e46c9720e75fe6f11259abc4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 16:56:34 +0000 Subject: [PATCH 7/8] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 3af29334e0593cd8fb7463dfbe370c241ffa50a9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 03:38:05 +0000 Subject: [PATCH 8/8] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild