From ea43e0352ea5347954e92c94dd930e9ef85dda549ed00e4516919dde42d7684d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 12:18:06 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main elemental revision 5772f8d547b8090955295ddf5da37309 --- .gitattributes | 23 ++++++ LICENSE | 178 ++++++++++++++++++++++++++++++++++++++++++++ README.md | 59 +++++++++++++++ _service | 17 +++++ _servicedata | 4 + elemental-2.1.0.tar | Bin 0 -> 51200 bytes elemental-rpmlintrc | 5 ++ elemental.changes | 96 ++++++++++++++++++++++++ elemental.spec | 173 ++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 555 insertions(+) create mode 100644 .gitattributes create mode 100644 LICENSE create mode 100644 README.md create mode 100644 _service create mode 100644 _servicedata create mode 100644 elemental-2.1.0.tar create mode 100644 elemental-rpmlintrc create mode 100644 elemental.changes create mode 100644 elemental.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..8eaf48d --- /dev/null +++ b/LICENSE @@ -0,0 +1,178 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + diff --git a/README.md b/README.md new file mode 100644 index 0000000..87478a3 --- /dev/null +++ b/README.md @@ -0,0 +1,59 @@ +# Elemental + +[![Lint](https://github.com/rancher/elemental/actions/workflows/lint.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/lint.yaml) + +## Regular tests + +| Rancher stable (night) | Rancher head 2.7 (8am) | Rancher head 2.8 (9am) | Rancher head 2.9 (10am) | +| - | - | - | - | +| [![CLI-K3s](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_stable.yaml) | [![CLI-K3s](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.7.yaml) | [![CLI-K3s](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.8.yaml) | [![CLI-K3s](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-rm_head_2.9.yaml) +| [![CLI-RKE2](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_stable.yaml)| [![CLI-RKE2](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.7.yaml) | [![CLI-RKE2](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.8.yaml) | [![CLI-RKE2](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-rm_head_2.9.yaml) +| [![CLI-K3s-Reset](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_stable.yaml) | [![CLI-K3s-Reset](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.7.yaml) | [![CLI-K3s-Reset](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.8.yaml) | [![CLI-K3s-Reset](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-reset-rm_head_2.9.yaml) +| [![CLI-RKE2-Reset](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_stable.yaml) | [![CLI-RKE2-Reset](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.7.yaml) | [![CLI-RKE2-Reset](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.8.yaml) |[![CLI-RKE2-Reset](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-reset-rm_head_2.9.yaml) +| [![CLI-K3s-Sequential](https://github.com/rancher/elemental/actions/workflows/cli-k3s-sequential-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-sequential-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-RKE2-Sequential](https://github.com/rancher/elemental/actions/workflows/cli-rke2-sequential-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-sequential-rm_stable.yaml) | N/A | N/A |N/A +| [![CLI-K3s-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/cli-k3s-os-upgrade-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-os-upgrade-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-RKE2-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/cli-rke2-os-upgrade-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-os-upgrade-rm_stable.yaml) | N/A | N/A |N/A +| [![CLI-K3s-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_stable.yaml) | [![CLI-K3s-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.7.yaml) | [![CLI-K3s-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.8.yaml) | [![CLI-K3s-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-rm_head_2.9.yaml) +| [![CLI-RKE2-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_stable.yaml) | [![CLI-RKE2-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.7.yaml) | [![CLI-RKE2-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.8.yaml) | [![CLI-RKE2-Hardened](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-rm_head_2.9.yaml) +| [![CLI-K3s-Hardened-Upgrade-Reset](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-upgrade-reset-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-hardened-upgrade-reset-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-RKE2-Hardened-Upgrade-Reset](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-upgrade-reset-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-hardened-upgrade-reset-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-K3s-MultiCluster](https://github.com/rancher/elemental/actions/workflows/cli-k3s-multi_cluster-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-multi_cluster-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-RKE2-MultiCluster](https://github.com/rancher/elemental/actions/workflows/cli-rke2-multi_cluster-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-rke2-multi_cluster-rm_stable.yaml) | N/A | N/A | N/A +| [![CLI-K3s-Scalability](https://github.com/rancher/elemental/actions/workflows/cli-k3s-scalability-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-scalability-rm_stable.yaml) | N/A | N/A | N/A +| [![UI-K3s](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_stable.yaml) | [![UI-K3s](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.7.yaml) | [![UI-K3s](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.8.yaml) | [![UI-K3s](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-rm_head_2.9.yaml) +| [![UI-RKE2](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_stable.yaml) | [![UI-RKE2](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.7.yaml) | [![UI-RKE2](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.8.yaml) | [![UI-RKE2](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-rm_head_2.9.yaml) +| [![UI-K3s-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_stable.yaml) | [![UI-K3s-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.7.yaml) | [![UI-K3s-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.8.yaml) | [![UI-K3s-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-k3s-os-upgrade-rm_head_2.9.yaml) +| [![UI-RKE2-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_stable.yaml) | [![UI-RKE2-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.7.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.7.yaml) | [![UI-RKE2-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.8.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.8.yaml) | [![UI-RKE2-OS-Upgrade](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.9.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/ui-rke2-os-upgrade-rm_head_2.9.yaml) + +## Airgap tests + +[![CLI-K3s-Airgap-RM_stable](https://github.com/rancher/elemental/actions/workflows/cli-k3s-airgap_rm_stable.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-airgap_rm_stable.yaml) (Tested ith Rancher stable) + +[![CLI-K3s-Airgap-RM_latest_devel](https://github.com/rancher/elemental/actions/workflows/cli-k3s-airgap_rm_latest_dev.yaml/badge.svg?branch=main)](https://github.com/rancher/elemental/actions/workflows/cli-k3s-airgap_rm_latest_dev.yaml) (Tested with Rancher latest RC) + +## Goal + +Elemental is a software stack enabling a centralized, full cloud-native OS management solution with Kubernetes. + +Cluster Node OSes are built and maintained via container images through the [Elemental Toolkit](https://rancher.github.io/elemental-toolkit/) and installed on new hosts using the [Elemental CLI](https://github.com/rancher/elemental-cli). + +The [Elemental Operator](https://github.com/rancher/elemental-operator) and the [Rancher System Agent](https://github.com/rancher/system-agent) enable Rancher Manager to fully control Elemental clusters, from the installation and management of the OS on the Nodes to the provisioning of new K3s or RKE2 clusters in a centralized way. + +Follow our [Quickstart](https://rancher.github.io/elemental/quickstart/) or see the [full docs](https://rancher.github.io/elemental/) for more info. + +## License + +Copyright (c) 2020-2024 [SUSE, LLC](http://suse.com) + +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](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. diff --git a/_service b/_service new file mode 100644 index 0000000..50e2e64 --- /dev/null +++ b/_service @@ -0,0 +1,17 @@ + + + https://github.com/rancher/elemental + git + framework + LICENSE + README.md + .obs/specfile/elemental.spec + .obs/specfile/elemental-rpmlintrc + v2.1.x + @PARENT_TAG@ + v(.*) + + + elemental + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..ec4ca80 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://github.com/rancher/elemental + 14a106c8c2450b2b77f6af324f137b432fa8bf01 \ No newline at end of file diff --git a/elemental-2.1.0.tar b/elemental-2.1.0.tar new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..66c0026fd73af5cee0e4bb4c7379975dd8f2cc52095571e7f9d6991663a91c03 GIT binary patch literal 51200 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 Co + +- Bump to v2.1.0 + * Micro rename + * Only apply upgrade config on OS upgrades (#1283) + * Require elemental-toolkit v2 + * Adding the btrfs default at elemental-operator level + * Enable recovery upgrades (#1226) + * Set transient recovery hostname + * Update all Golang dependencies + * Adapt bootargs file to support btrfs snapshotter (#1213) + * Adapt upgrade script to the new elemental-toolkit + * Don't set the hostname (#1171) + * Make use of the update elemental kernel arguments + * Make initrd generation consistent across flavors + * Update rootfs settings + * Make sure no variables in /etc/os-release are duplicated + * Build RT flavour only for x86_64 + * Use Elemental systemd branding package + * Update kernel cmdline for elemental-sysroot (#1165) + * Use the elemental-rootfs feature (#1163) + * Run services after time-sync.target + * Mkdir /host/run/elemental in suc-upgrade + * Migrate to /run/elemental from /run/cos + * Add default network configuration for eth0 + * Remove default serial console kernel parameter + +------------------------------------------------------------------- +Tue Nov 28 17:26:41 UTC 2023 - dcassany@suse.com + +- Update to version 2.0.0: + * For some reason OBS complains of invalid format on SOURCEURL substitution + * Update workflow so that it branches the appropriate OBS packages + * Adding missing manifest for the base-iso image + * Align and update labels and tags with all images + * Remove obsolete images, sle micro variants are already in place + * Rename build-iso-next + * Remove longhorn overlay mount + * Drop the 'for Rancher' suffix + * Revert to 'old' RPi firmware + * Set entrypoint of elemental-iso-add-registration + * Fix SLEM4R OS build + * Update elemental-iso-add-registration + * Remove some old teal references + * Remove Teal images + * Bump ele-testhelpers deps + * Include system agent unit file in specfile + * Require elemental-toolkit instead of elemental-cli (#984) + +------------------------------------------------------------------- +Tue Nov 28 17:26:14 UTC 2023 - dcassany@suse.com + +- Update to version 1.3+git20230830.d301e1b: + * Add elemental-register-reset.service + * Use the new init command (#874) + * Disable service triggers on staging + * Fix elemental-iso-add-registration script + * rancher/ -> suse/ + * Use elemental-register --install argument (#934) + * Allow installation on non-SUSE distributions + * Add CONTRIBUTING.md + * Enable cloud-config from removable devices + * Ensure names are unique for all stages + * Do not compare versions from different repositories on upgrades + * Feat: add CODEOWNERS + * Load proxy setup from sysconfig and allow elemental specific env variables + * Include cryptsetup in elemental-teal + * Do not expand COS_PERSISTENT by default + * Add environment variable files in elemental-system-agent.service + * Run elemental-register in systemd service (#723) + * Include rke2-killall on shutdown process + * Update shutdown-k3s.service + * Prevent upgrade loops when FORCE is in use + * Do not allow downgrades without force flag + * Remove reboots on cloud-config addition + * Do not allow concurrent suc-upgrade executions + * Update docker/login-action to v2.1.0 (#666) + * Add shutdown-k3s.service to OBS spec + * Add service to kill k3s before umount + +------------------------------------------------------------------- +Tue Nov 28 17:19:29 UTC 2023 - dcassany@suse.com + +- Update to version 1.1.0+git20230125.14a106c: + * Add debug flag on upgrade command and update bootargs.cfg file (#625) + +------------------------------------------------------------------- +Tue Oct 25 09:59:01 UTC 2022 - Klaus Kämpf + +- add /etc/NetworkManager/conf.d/rke2-canal.conf (#446) + +------------------------------------------------------------------- +Wed Oct 5 11:25:44 UTC 2022 - David Cassany + +- Initial commit diff --git a/elemental.spec b/elemental.spec new file mode 100644 index 0000000..59ac557 --- /dev/null +++ b/elemental.spec @@ -0,0 +1,173 @@ +# +# spec file for package elemental +# +# Copyright (c) 2022 - 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + +%define systemdir /system +%define oemdir %{systemdir}/oem + +Name: elemental +Version: 2.1.0 +Release: 0 +Summary: A Rancher and Kubernetes optimized immutable Linux distribution +License: Apache-2.0 +Group: System/Management +URL: https://github.com/rancher/%{name} +Source: %{name}-%{version}.tar +Source1: LICENSE +Source2: README.md +Source3: %{name}-rpmlintrc + +Requires: elemental-toolkit >= 2.0.0 +Requires: elemental-toolkit < 2.1.0 +Requires: elemental-register +Requires: elemental-system-agent +Requires: elemental-support +Requires: NetworkManager +Requires: systemd-presets-branding-Elemental +Requires: elemental-updater = %{version}-%{release} +%{?systemd_requires} + +BuildArch: noarch +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +Elemental is a new set of tools to manage operating systems as container images within Rancher Manager + +%package -n elemental-updater +Summary: Rancher elemental node updater +Group: System/Management + +%description -n elemental-updater +Rancher elemental node updater. To be installed on the node. + +%prep +%setup -q -n %{name}-%{version} +cp %{S:1} . +cp %{S:2} . + +%build + + +%install + +cp -a framework/files/* %{buildroot} + +rm -rf %{buildroot}/var/log/journal + +# remove placeholders +rm -rf %{buildroot}/usr/libexec/.placeholder + +%pre +%if 0%{?suse_version} +%service_add_pre elemental-populate-node-labels.service +%service_add_pre shutdown-containerd.service +%service_add_pre elemental-register.service +%service_add_pre elemental-register-install.service +%service_add_pre elemental-register-reset.service +%service_add_pre elemental-register.timer +%service_add_pre elemental-system-agent.service +%endif + +%post +%if 0%{?suse_version} +%service_add_post elemental-populate-node-labels.service +%service_add_post shutdown-containerd.service +%service_add_post elemental-register.service +%service_add_post elemental-register-install.service +%service_add_post elemental-register-reset.service +%service_add_post elemental-register.timer +%service_add_post elemental-system-agent.service +%else +%systemd_post elemental-populate-node-labels.service +%systemd_post shutdown-containerd.service +%systemd_post elemental-register.service +%systemd_post elemental-register-install.service +%systemd_post elemental-register-reset.service +%systemd_post elemental-register.timer +%systemd_post elemental-system-agent.service +%endif + +%preun +%if 0%{?suse_version} +%service_del_preun elemental-populate-node-labels.service +%service_del_preun shutdown-containerd.service +%service_del_preun elemental-register.service +%service_del_preun elemental-register-install.service +%service_del_preun elemental-register-reset.service +%service_del_preun elemental-register.timer +%service_del_preun elemental-system-agent.service +%else +%systemd_preun elemental-populate-node-labels.service +%systemd_preun shutdown-containerd.service +%systemd_preun elemental-register.service +%systemd_preun elemental-register-install.service +%systemd_preun elemental-register-reset.service +%systemd_preun elemental-register.timer +%systemd_preun elemental-system-agent.service +%endif + +%postun +%if 0%{?suse_version} +%service_del_postun elemental-populate-node-labels.service +%service_del_postun shutdown-containerd.service +%service_del_postun elemental-register.service +%service_del_postun elemental-register-install.service +%service_del_postun elemental-register-reset.service +%service_del_postun elemental-register.timer +%service_del_postun elemental-system-agent.service +%else +%systemd_postun elemental-populate-node-labels.service +%systemd_postun shutdown-containerd.service +%systemd_postun elemental-register.service +%systemd_postun elemental-register-install.service +%systemd_postun elemental-register-reset.service +%systemd_postun elemental-register.timer +%systemd_postun elemental-system-agent.service +%endif + +%files +%defattr(-,root,root,-) +%doc README.md +%license LICENSE +%dir %{_sysconfdir}/cos +%config %{_sysconfdir}/cos/bootargs.cfg +%dir %{_sysconfdir}/dracut.conf.d +%config %{_sysconfdir}/dracut.conf.d/51-certificates-initrd.conf +%config %{_sysconfdir}/dracut.conf.d/99-elemental-systemd.conf +%dir %{_sysconfdir}/NetworkManager +%dir %{_sysconfdir}/NetworkManager/conf.d +%config %{_sysconfdir}/NetworkManager/conf.d/rke2-canal.conf +%dir %{_unitdir} +%{_unitdir}/shutdown-containerd.service +%{_unitdir}/elemental-register.service +%{_unitdir}/elemental-register-install.service +%{_unitdir}/elemental-register-reset.service +%{_unitdir}/elemental-register.timer +%{_unitdir}/elemental-populate-node-labels.service +%{_unitdir}/elemental-system-agent.service +%{_sbindir}/elemental-populate-node-labels +%dir /usr/libexec +%dir %{systemdir} +%dir %{oemdir} +%{oemdir}/* + +%files -n elemental-updater +%defattr(-,root,root,-) +%license LICENSE +%{_sbindir}/self-upgrade +%{_sbindir}/suc-upgrade + +%changelog