Commit Graph

62 Commits

Author SHA1 Message Date
Itxaka
d323073dbb Add --now flags to disable and remove
That will make it try to remove it if it currently running and refresh
the current running sysext merged

Signed-off-by: Itxaka <itxaka@kairos.io>
2025-04-09 11:50:32 +02:00
Itxaka
052fd9140d Only run sysext commands if binary is on path
Signed-off-by: Itxaka <itxaka@kairos.io>
2025-04-04 15:58:36 +02:00
Itxaka
16def87152 Introduce the --now flag for sysext enable
That will make a symlink of the enabled extension into /run/extensions
and call systemd-sysext refresh to merge it

Signed-off-by: Itxaka <itxaka@kairos.io>
2025-04-04 15:16:01 +02:00
Itxaka
71f7589bbb Update main.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-04 12:32:54 +02:00
Itxaka
bcb6c40f5d Drop dir source and do http and docker source
Signed-off-by: Itxaka <itxaka@kairos.io>
2025-04-03 16:46:59 +02:00
Itxaka
adb6aa2450 First iteration of the sysext command
Currently working:
 - list installed sysexts
 - list enabled sysext per active or passive
 - enable a installed sysext into active or passive
 - disable a installed sysext into active or passive
 - remove a installed sysext (disables it from active, passive as well)
 - install a sysext

Installing has a few shortocmings currently:
 - Only http and file supported
 - Placeholders for a container and dir source but not done yet

The whole thing has no idea about versions or anything as that would
require heavy inspection of the underlying image

Only raw image is currently support, hasnt been tested via dir

Signed-off-by: Itxaka <itxaka@kairos.io>
2025-04-03 16:28:29 +02:00
Ettore Di Giacinto
a91fb13e39 feat: allow to override standard cloud init paths (#679)
* feat: allow to override standard cloud init paths

Signed-off-by: mudler <mudler@localai.io>

* Address feedback from review

Signed-off-by: mudler <mudler@localai.io>

* Address feedback from review

Signed-off-by: mudler <mudler@localai.io>

---------

Signed-off-by: mudler <mudler@localai.io>
2025-02-07 09:58:28 +01:00
Dimitris Karakasilis
347a30b261 Fix https://github.com/kairos-io/kairos-agent/security/code-scanning/57 (#658)
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2025-01-10 16:14:29 +02:00
Dimitris Karakasilis
d618ff72f3 Split yip config dirs from user config dirs
as per the comment here:

https://github.com/kairos-io/kairos-agent/pull/550#discussion_r1776759001

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-09-26 14:32:36 +03:00
Dimitris Karakasilis
b0b4618f8f Show sources in config string
and remove directory which is only meant to be used by yip configs (not
user configs read by the kairos-agent).

This needs to be explained in the release notes.

Needs this: https://github.com/kairos-io/kairos-sdk/pull/501

Part of: https://github.com/kairos-io/kairos/issues/2737

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-09-26 12:07:59 +03:00
Itxaka
bd4dce015f Expose the Analize method of yip (#548)
This only shows for a given stage what steps would be run and in which
order

Signed-off-by: Itxaka <itxaka@kairos.io>
2024-09-20 10:36:09 +02:00
Dimitris Karakasilis
257d0a1c38 Unify --recover and --boot-entry upgrade options in code
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-08-26 16:33:44 +03:00
Dimitris Karakasilis
7e82580539 Add flag
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-08-26 16:32:43 +03:00
Dimitris Karakasilis
c589ae1ce3 [WIP] Properly handle single entries in bootentry command
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-08-26 16:32:43 +03:00
Dimitris Karakasilis
e3d7d3a057 Show message when list-releases is called from within a UKI OS
Consume https://github.com/kairos-io/kairos-sdk/pull/262/files

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-07-26 13:32:12 +03:00
Itxaka
1cca516738 Enable debug mode from different places (#287) 2024-04-11 10:51:08 +02:00
Akvanvig
6fe65c4c97 added null-logger to render-template command (#282)
Co-authored-by: Anders Kvanvig <anders.kvanvig@basefarm-orange.com>
2024-04-09 08:55:24 +00:00
Mauro Morales
d4e73caa28 Remove config show in favor of parent command (#281)
* Remove config show in favor of parent command

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* add deprecation warning

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-04-09 10:08:28 +02:00
Itxaka
4e264a13b7 Add a scanner for config with nulllogger (#262)
To create a new config but discards the logs

Signed-off-by: Itxaka <itxaka@kairos.io>
2024-03-20 09:18:08 +01:00
Itxaka
009c7a6677 Also refuse to do it on unkown media
Signed-off-by: Itxaka <itxaka@kairos.io>
2024-03-07 12:46:33 +01:00
Itxaka
40da5fa451 Add a check for livemedia when running upgrade
Signed-off-by: Itxaka <itxaka@kairos.io>
2024-03-07 12:10:16 +01:00
Itxaka
2e0af77fbc Use new logger facilities (#236) 2024-03-01 12:27:26 +01:00
Itxaka
2e9c85e63a Add shim to choose next entry to boot from (#230) 2024-02-21 10:44:32 +01:00
Mauro Morales
175b163159 Read /system/oem config (#224)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-02-08 16:05:34 +01:00
Mauro Morales
3dbc7c0ce7 Add default system config dir (#223)
* Add default system config dir

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* Add elemental dir too

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-02-08 12:55:48 +01:00
Itxaka
33c8e8f29c Add reset for uki (#221) 2024-02-02 13:20:06 +01:00
Dimitris Karakasilis
9a8c404cfa Add "--all" flag to list-releases to print older releases too
This will allow us to fix the broken test in master and also allow
people to downgrade to older releases.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-01-11 10:43:45 +02:00
Itxaka
174d69c3ea Merge uki upgrade into the normal upgrade command (#197) 2024-01-09 16:42:49 +01:00
Itxaka
775756f4b6 Run install off the same command (#196) 2024-01-09 15:10:04 +01:00
Itxaka
3254b8a36e Uki upgrade (#182) 2023-12-18 11:38:26 +01:00
Dimitris Karakasilis
2412d69e32 Re-enable call-out to provider for releases
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-12-08 10:50:01 +02:00
Dimitris Karakasilis
00ce75b285 Deprecate positional argument and cleanup unused code
because empty source caused an error, because of Sanitize() failing.
handleEmptySource was never called.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-12-07 18:20:16 +02:00
Dimitris Karakasilis
691224a053 Deprecate positional version in kairos-agent upgrade command
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-12-07 15:47:21 +02:00
Dimitris Karakasilis
823343546a Fix "upgrade list-releases" command by consuming kairos-sdk versioneer
Also add TODOs for remaining work

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-12-07 15:00:45 +02:00
Dimitris Karakasilis
faedd0fbae Embed verioneer cli commands and fix duplicate command aliases
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-12-05 15:53:04 +02:00
Denis Luchkin-Zhou
234bb4b36e Add command to render a Go template with config and state as data context
Signed-off-by: Denis Luchkin-Zhou <wyvernzora@gmail.com>
2023-10-18 08:37:45 -07:00
Itxaka
1b967cccd8 [uki] Lyfecycle (#148) 2023-10-03 11:15:17 +02:00
Dimitris Karakasilis
a10390e0a8 DRY the definition of "--source" flag
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-09-29 17:11:51 +03:00
Dimitris Karakasilis
7d18e6504a [WIP] Add --source to various commands
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-09-29 11:45:58 +03:00
Dimitris Karakasilis
bf40c48812 Move checkRoot to main
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-09-14 16:06:41 +03:00
Dimitris Karakasilis
fddbf3f657 Check root permissions in commands that need it
Otherwise the error shown is not helpful (it fails too late with
confusing errors).

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-09-14 16:06:38 +03:00
Itxaka
3e9befa230 Add recovery upgrade flag to upgrade command + msg (#123) 2023-08-07 16:11:13 +02:00
Itxaka
f5c01f73a4 Make unattended reset work (#110)
Our current example for cloud images on the docs on how to use the reset
with a cloud-config and a stage does not actually work as the tty
adquisition and such seems to be failing due tto not being properly run
in a tty.

This pathc introduces 2 new flags to the reset command.

reboot: Enable reboot after reset, overriding any config in the system.
This is only a enable switch, so if the flag is disabled but the config
says reset it will NOT override it.

unattended: Disables printing stuff into the screen, locking the
terminal and falling back to a new tty on run. Also enables fast mode
automatically.

Signed-off-by: Itxaka <itxaka@kairos.io>
2023-08-04 20:39:22 +02:00
Itxaka
f7bdba2dda Merge elemental config into agent config (#102) 2023-07-25 15:21:34 +02:00
Itxaka
5b945303c9 Drop runconfig in favour of config (#101) 2023-07-25 11:08:27 +02:00
Itxaka
bca3277b7d Rework install a bit more (#100)
Co-authored-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-07-25 09:12:39 +02:00
Itxaka
9bff3742c1 Load elemental config/spec from cloud config (#82) 2023-07-20 15:53:48 +02:00
Itxaka
9c5731baa2 Rename go module kairos-agent (#81) 2023-07-10 14:39:48 +02:00
Itxaka
629a0b2eee Set debug flag in the main app (#64) 2023-06-21 09:42:11 +02:00
Itxaka
b126f7ab00 Drop --local flag for image sources (#63) 2023-06-21 09:39:59 +02:00