Commit Graph

37 Commits

Author SHA1 Message Date
Francesco Giudici 97db17d73b
make linter happy - update copyright dates (#899)
Signed-off-by: Francesco Giudici <francesco.giudici@suse.com>
2025-01-31 15:33:47 +01:00
Andrea Mazzotti ab193eca6f
Add support for agent-tls-mode Rancher setting (#863)
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-10-07 13:11:26 +02:00
Andrea Mazzotti 08f6cda748
Build e2e chart locally (#852)
* Build e2e chart locally

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Add mockgen to build tools

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Add missing GINKGO tool

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Reduce e2e tests concurrency

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Make test more verbose

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Bump system-upgrade-controller version

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Raise timeout

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Print error

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Add plan crd

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Adjust timeout

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Do not deploy operator twice

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Restore vendored helper

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Do not attempt to delete pods multiple times

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Remove debug println

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Disable e2e workflow

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Update ele-testhelpers library

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

---------

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-10-01 12:54:40 +00:00
Andrea Mazzotti 3de0fc7a47
Use after-install && after-reset stages to initialize system (#822)
* Use after-install && after-reset stages to initialize system

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Use dynamic CLOUD_INIT_PATHS

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Use IPAM driven network config on Recovery

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

---------

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-08-20 13:39:45 +02:00
Andrea Mazzotti 342bba265c
IPAM to nmstate network config (#793)
* operator: introduce support to IPAM assigned IP address

Signed-off-by: Francesco Giudici <francesco.giudici@suse.com>

* Add nmstate support

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

---------

Signed-off-by: Francesco Giudici <francesco.giudici@suse.com>
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
Co-authored-by: Francesco Giudici <francesco.giudici@suse.com>
2024-08-09 10:32:19 +02:00
Francesco Giudici 36468aba42
register: always register when called (#813)
Remove the static check to re-register only after 24 hours.
The re-registration will then happen every time the elemental-register
client is called.
This static timer was introduced to limit as much as possible the
communication form the host to Rancher and save communication bandwidth
for remote clients.
Anyway, this makes not much sense as long as the elemental-system-agent
is running, which will in any case keep connecting to Rancher.
The call to the elemental-register binary is performed on official
Elemental SLE Micro images every 30 minutes and at each boot.

Fixes https://github.com/rancher/elemental-operator/issues/811

Signed-off-by: Francesco Giudici <francesco.giudici@suse.com>
2024-08-08 10:10:25 +02:00
Andrea Mazzotti c90990371c
Use YAML content for Elemental Agent config (#765)
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-06-19 15:49:19 +02:00
Andrea Mazzotti 0839780db8
Sanitize elemental-operator dependencies (#690)
* Update system-upgrade-controller API

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Update Fleet API

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

* Sanitize dependencies

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>

---------

Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
2024-03-20 15:46:51 +01:00
Fredrik Lönnegren 7878dd43af Use rancher/yip v1.4.10
Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>
2024-02-15 11:43:14 +01:00
Fredrik Lönnegren da0776b710 Update copyright year (2024)
Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>
2024-01-05 13:14:27 +01:00
Fredrik Lönnegren 4b5e46cfd7 Add warning if both device and device-selector set
Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>
2023-11-27 14:47:53 +01:00
Fredrik Lönnegren 20ce1e02a0
Fix device-selector logic (#571)
disk.Name only contains name, not path (eg sda not /dev/sda).

This commit fixes the logic so users can specify either the name or path
and elemental will install to the correct device.

Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>
2023-11-24 13:29:44 +01:00
Fredrik Lönnegren 8cf8b03e29
Implement picking dynamic installation device (#561)
* Add DeviceSelector types

Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>

* Implement device-selector

This commit adds the implementation for picking the installation device
during registration based on a deviceSelector in the
MachineRegistration.

Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>

---------

Signed-off-by: Fredrik Lönnegren <fredrik.lonnegren@suse.com>
2023-11-21 08:44:42 +01:00
Loic Devulder 961b0c502f Disable local plan for elemental-system-agent
As local plan is not used, only remote.

Signed-off-by: Loic Devulder <ldevulder@suse.com>
2023-10-09 09:14:45 +02:00
Steven fa8c90ce47 register: add no-toolkit option
Currently the sytem-agent-config is only generated as part of the cloudInitConfigs
when installing, but when registering a pre-installed host it is useful to have
the option to generate the system-agent-config without any OS install.

After discussion it has been suggested to enable this via a --no-toolkit flag
which can optionally be specified for pre-installed hosts, in this mode we will
only write out the system-agent config files.
2023-09-20 10:35:22 +02:00
Andrea Mazzotti ffb9c010c4
Implement remote machines reset (#489) 2023-08-04 09:34:26 +02:00
Andrea Mazzotti 25abcdc57b
Improve re-registration (#479)
- Added full registration config and statefile path parameters on elemental-register
- Remove support for multiple configuration files
- Added (hardcoded) timer to skip registration updates for 24 hours
- Store emulated TPM seed for future registration updates
- Exit with error code in case of failures (systemd will manage restarts)
- Use virtual filesystem where possible
2023-07-18 15:09:21 +02:00
David Cassany Viladomat bd811be876
Remove obsolete logic from former ros-installer (#45)
* Remove obsolete logic from former ros-installer

Signed-off-by: David Cassany <dcassany@suse.com>
2022-07-15 10:48:41 +02:00
Francesco Giudici 62bac1d84e
elemental-operator register: add elemental cli call (#38)
The elemental-operator register command, after retrieving the config
registration will directly call the elemental cli to start the actual
installation process.

Co-authored-by: David Cassany <dcassany@suse.com>
Co-authored-by: Francesco Giudici <francesco.giudici@suse.com>

Signed-off-by: Francesco Giudici <francesco.giudici@suse.com>

Co-authored-by: Itxaka <igarcia@suse.com>
2022-07-13 17:30:12 +02:00
David Cassany Viladomat 14d4d957cf
Share installation configuration structures (#24)
This commit makes sure elemental-operator and elemental-installer are
using the same structures to describe and define the elemental-cli
installation.

Signed-off-by: David Cassany <dcassany@suse.com>
2022-07-12 12:36:53 +02:00
David Cassany Viladomat 33ed0f198f
Rename RancherOS to Elemental in installer logic (#22)
Signed-off-by: David Cassany <dcassany@suse.com>
2022-07-11 10:07:27 +02:00
David Cassany Viladomat 1d97f14de7
Merge elemental installer (#20)
* Move main into a cmd/operator package
* Add elemental-installer
* Adding installer unit tests
* Update Makefile
* Update .github/workflows/unit-tests.yaml
* Adapat Dockerfile and golreleaser to keep releasing and building elemental-operator as they used to

Signed-off-by: David Cassany <dcassany@suse.com>
Co-authored-by: Itxaka <igarcia@suse.com>
2022-07-07 14:47:32 +02:00
Itxaka 26684d1888 Drop everything not needed for ros-operator
- Drops everything not needed for ros-operator
 - New simple Dockerfile
 - New jobs based on ros-operator only
 - Remove uneeded tests
 - Remove dependency on os2 images for integration tests
 - Use gorelease to release ros-operator binaries
 - Use docker to push ci images to ros-operator-ci registry on PR
 - Use docker to push master/tag images to ros-operator registry
 - Build chart indepently
 - Have a null test CI job for future integration tests

Signed-off-by: Itxaka <igarcia@suse.com>
2022-03-24 09:47:18 +01:00
Ettore Di Giacinto 5bb91d21f7
Disable verify (#50)
* Disable mtree

Fixes: https://github.com/rancher-sandbox/os2/issues/49
Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>

* Add installation test suite

Move the installation setup for tests to leverage ros-installer and
reworks it to be run as a suite.

At the moment only covers installation with container images, but is a
setup that would work as well for other scenarios.

Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>

* Bump cOS

Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>

* Disable mirror override

Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>

* fix: Set 0 size for max autogrow

Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>
2022-03-14 14:11:51 +01:00
Itxaka 63eb85435a
Add reboot flag (#46) 2022-03-10 13:30:01 +01:00
Itxaka 74bb3c5722
Do not nullify the extra data from the config (#36)
For some reason the installer was assuming that if you dont do an
automatic installation, your "extra data" from the config file should be
gone.

I do not understand why as automatic is not the same as providing a
config file with values which may have nothing to do with the
installation.

This patch removes the nulling of the extra data

Signed-off-by: Itxaka <igarcia@suse.com>
2022-03-04 15:30:01 +01:00
Itxaka 9fed2edefc
Rework golangci-lint config and github CI (#34) 2022-03-03 09:16:03 +01:00
Ettore Di Giacinto d99fca748a
Handle ENV var prefix rename, add tests for read config
Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>
2022-01-31 16:53:16 +01:00
Ettore Di Giacinto 97d58074ee
Refactor import paths
See: https://github.com/rancher-sandbox/cOS-toolkit/issues/1105

Signed-off-by: Ettore Di Giacinto <edigiacinto@suse.com>
2022-01-28 14:00:29 +01:00
Darren Shepherd f35b3697c3 Fix installation and trim packages 2021-11-03 22:06:28 -07:00
Darren Shepherd 901973e5f6 Add TPM and MachineRegister support 2021-10-29 23:08:26 -07:00
Darren Shepherd db84312450 Fix installer 2021-10-24 17:07:48 -07:00
Darren Shepherd b00581c2d7 Various fixes 2021-10-22 23:22:09 -07:00
Darren Shepherd 4085b2977b Rename to rancher/os2 2021-10-20 12:19:44 -07:00
Darren Shepherd 0e46d19194 Add ipxe support 2021-10-13 16:01:08 -07:00
Darren Shepherd 5e4cfa19ab Include Harvester changes 2021-10-02 22:27:31 -07:00
Darren Shepherd 3040e886dc Refactor build 2021-10-02 16:08:48 -07:00