Commit Graph

422 Commits

Author SHA1 Message Date
Mauro Morales
77902dab0f
bump framework to 2.4.6 to use its cache (#2187)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-26 09:49:17 +01:00
Ettore Di Giacinto
c6bc1e521c
bump enki (#2185)
Co-authored-by: Itxaka <itxaka@kairos.io>
2024-01-25 20:39:02 +01:00
Dimitris Karakasilis
f9bdec7357
Bump kairos framework (#2184)
to get this change:

https://github.com/kairos-io/kcrypt-challenger/pull/45

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-01-25 19:38:47 +01:00
Mauro Morales
37d0b01563
Update enki to v0.0.9 (#2181)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-25 15:50:02 +01:00
Itxaka
c6929b484c
[uki] Provide proper artifacts for auto-key-enrollment (#2172) 2024-01-25 14:31:15 +01:00
Mauro Morales
5944a15d64
Add target to transform kairos image into UKI (#2169)
* Add target to transform kairos image into UKI

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

* oops that looks messy

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

* rename targets

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

* Adapt pipelines

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

* lint

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

* Use a variable for the enki version

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-25 14:02:36 +01:00
renovate[bot]
1d1c26e964 Update aquasec/trivy Docker tag to v0.48.3 2024-01-17 16:09:37 +00:00
Itxaka
dd5ea87dd1
Enable secureboot for all flavors (minus alpine) (#2140) 2024-01-16 14:27:01 +01:00
Dimitris Karakasilis
643ad4313f
Make sure test doesn't break when master matches the latest release (#2141)
* Make sure test doesn't break when master matches the latest release

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Point to existing artifacts for 2.5.0 release

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump download-artifact action

to hopefully fix the error:

```
 Preparing to download the following artifacts:
- kairos-alpine-3.19.iso.zip (ID: 1164540479, Size: 1053840217)
Redirecting to blob download url: https://productionresultssa4.blob.core.windows.net/actions-results/e30c4747-a895-4fc2-a9ad-5c3c721fbe5c/workflow-job-run-54b5a70f-2f08-532f-96ed-a371e24f143d/artifacts/kairos-alpine-3.19.iso.zip.zip
Starting download of artifact to: /runner/_work/kairos/kairos
(node:1192) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Error: Unable to download artifact(s): Unable to download and extract artifact: Artifact download failed after 5 retries.
```

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-01-12 12:12:21 +02:00
Mauro Morales
129674f116
Bump kairos framework to 2.5.7
This fixes the issue when starting the k3s service as well as enabling it

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-10 19:07:04 +01:00
Dimitris Karakasilis
f3e5ae480d
Bump kairos-framework (#2121)
to consume newer kairos-agent that has this fix:

f665d930e2

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-01-09 09:29:23 +01:00
renovate[bot]
daf6f8dd76 Update aquasec/trivy Docker tag to v0.48.2 2024-01-08 19:13:55 +00:00
Mauro Morales
b334bb013c
Update framework to 2.5.5 with provider 2.6.2
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-05 09:41:42 +01:00
Mauro Morales
fa98d4c94b
Upgrade framework & re-enable alpine upgrade test
Fixes #2108

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-04 17:32:48 +01:00
renovate[bot]
9822c7a338
Update aquasec/trivy Docker tag to v0.48.1 (#2054)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-01-04 16:20:53 +01:00
Mauro Morales
142d878dfb
No need to evaluate sizes for nvidia img build (#2109)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2024-01-02 14:51:55 +01:00
Mauro Morales
3a56a1d1ff
Remove alpine upgrade k8s test temporarily 2023-12-29 18:15:24 +01:00
Mauro Morales
68e9471cf8
add missing from on iso target
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-29 09:44:52 +01:00
Mauro Morales
15c336fed4
Use same process for all artifact names
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-29 09:27:47 +01:00
Mauro Morales
0fb7c0d237
Bump kairos frameowrk
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-28 15:25:00 +01:00
Mauro Morales
4128389a33
Naming issues for arm img
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-27 09:38:12 +01:00
Mauro Morales
d469ec1018
cannot use source/echo on some distros
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-22 17:37:21 +01:00
Mauro Morales
7994620269
Remove unnecessary arg from all-arm-generic target
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-22 12:25:13 +01:00
Dimitris Karakasilis
ec6a6f26be
1999 - Update repositories and adapt /etc/os-release to versioneer (#2081)
* Use kairos-agent instead of naming.sh everywhere

For this commit, kairos-agent has to be built from at least 4409a4e

Also:

- Remove some relics from when we had docs in this repo and when we
used to pass a VERSION to the bundle for systemd-sysext (now we use
"_ANY")
- Simplify earthly targets. They don't need all that input just to construct
  the artifact name because it's running on the "base-image".
  The artifact name is already written in the /etc/os-release file.
- Remove +version target and convert GIT_VERSION to a normal target because when you call
  `DO +foo` in a target and "foo" has "FROM myimage" in it, after the call, your
  target now runs on "myimage".

- Remove "VERSION" instances from most places, except in reusable-build-flavor
  which is using it to replace it with "latest" thus the current value
  (just the kairos version) should work. That workflow is disabled currently
  but I tried not to break it in case someone re-enables it.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix rebase mistake

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix issues building arm

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

* Oops

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

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-21 22:12:44 +01:00
Itxaka
d62455d5b0
[UKI] Measure (#2028) 2023-12-20 11:20:10 +01:00
Mauro Morales
64a6b9a0d8
Use base (cached) images on master (#2094)
* Use base (cached) images on master

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

* Fix ubuntu 23.10 arm generic

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-18 17:48:35 +01:00
Mauro Morales
2365d6e000
Remove framework profile (#2086)
* Remove framework profile

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

* Fetch profile from framework image

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-15 13:33:42 +01:00
Mauro Morales
9eeb4e6c9b
Framework images reverted to having a v prefix
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-15 12:01:33 +01:00
Mauro Morales
04c0900d5e
Upgrade framework image to 2.4.5
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-13 19:34:16 +01:00
Mauro Morales
3ee95d793e
Use framework images built on new repo (#2074)
* Use framework images built on new repo

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

* Luet is not in the framework anymore

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

* Use latest release by default

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

* remove concept of security profile

Generic images don't reflect it anymore so this can be considered part of the version

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-13 15:45:44 +01:00
Mauro Morales
fed6b8156c
Fix missing hardcoded k3s build (#2066) 2023-12-07 20:34:21 +01:00
Mauro Morales
74cdcc200c
Trigger base images
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-07 16:47:56 +01:00
Mauro Morales
2a6813e36c
Fix release of framework image (#2063)
* Fix release of framework image

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

* have a git option

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-12-07 11:27:12 +01:00
renovate[bot]
032ff02ad8
Update aquasec/trivy Docker tag to v0.47.0 (#1918)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 14:16:15 +01:00
Itxaka
e5def714a1
⬆️ Bump osbuilder tools (#2044) 2023-12-03 14:18:29 +01:00
Mauro Morales
84f1eaa6a4
Move Earthly logic into Dockerfiles (#2008)
* Add framework files

and generate os-release

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

* Install provider and k3s

Plus clean at the end

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

* Fix os-release names

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

* Use no-base-image on Earthly as a first step

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

* Fix KAIROS_VERSION calculation

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

* Move logic for alpine

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

* Move logic for opensuse

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

* Lint

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

* Add debian & rhel

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

* Fix ubuntu arm generic

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

* Framework changes and luet versions

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

* hadolint

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

* yamllint

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

* test building nvidia on pr

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

* fix push

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

* fix path

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

* use quay

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

* login quay

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

* 🤦

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

* define the nvidia jetson strategy in the ubuntu file

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

* Only run build of nvidia if dockerfile changed

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

* same for all other steps

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

* No need to push latest

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

* process nvidia on master and release

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

* remove no-base-image

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

* extract kairos common & remove non-hwe

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

* Remove Dockerfile.kairos-*

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

* hadolint

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

* forgot to remove this section on debian

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

* move non-hwe to examples

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

* feedback

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

* add name generation for base-images

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

* shoot

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

* lint

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

* oops

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-11-30 10:23:01 +01:00
Mauro Morales
88b9d62c50
typo 🤦 2023-11-24 20:41:07 +01:00
Mauro Morales
e4918ba54c
Build and release multi arch framework images (#2024)
* Build and release multi arch framework images

* remove reuqired security profile arg

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

* typo

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-11-24 20:07:50 +01:00
Dimitris Karakasilis
c8abdb1bde
Catch agent issue 174 (#2017)
* Check for failures faster and make sure bundles don't break

It should fail now because of this fix needed:

https://github.com/kairos-io/kairos-agent/pull/174

After bumping to the fixed kairos-agent version, the test should be
green again.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* ⬆️ Update repositories

Signed-off-by: GitHub <noreply@github.com>

* Bump osbuilder to produce a livecd with tty1 as default console

Grub configuration for livecd (iso) is installed here:
89b014b2b2/tools-image/Dockerfile (L25)

and it repositories were bumped in osbuilder to use the latest and
updates grub configuration where `console=tty1` is set **after**
`console=ttyS0` thus making it the default console for systemd services.

Also:

- remove not used bootargs.cfg file (has been moved to the "packages"
  repo)
- Change to the DATASOURCE check which is what we need in reality (not
  CLOUD_INIT which was indirectly checking that DATASOURCE would be set
  by Earthly)

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Double the waiting time until installation is finished

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Triple the timeout (it passses locally, just needs time)

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump luet repository to get kairos-agent 2.4.2

which has this fix: https://github.com/kairos-io/kairos-agent/pull/174

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Revert to the old test logic

which, in case of errors, will fail with a timeout but kairos service
doesn't allow us to know when the installer is done. That's because
the service has `RemainAfterExit=yes` and even if that was removed, the
kairos process waits for user input to finish:

```
Installation completed, press enter to go back to the shell. [Yes/no/all/cancel]
```

so there is not sure way to tell whether the kairos installer failed
with or without errors.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Signed-off-by: GitHub <noreply@github.com>
Co-authored-by: jimmykarily <jimmykarily@users.noreply.github.com>
2023-11-23 14:36:25 +02:00
Mauro Morales
cb38c88991
🐛 Fix arch name in arm artifacts (#2011)
* Fix arch name in arm artifacts

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

* Update test to use new artifact names

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

* Fix name of security results

Fix test when calling without ISO

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-11-18 13:18:00 +01:00
Dimitris Karakasilis
0f9499de70
Pass ARTIFACT down to os-release template (#1992) 2023-11-08 15:23:53 +01:00
Dimitris Karakasilis
ea6af922a1
Fix version in netboot test path
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-11-07 10:54:56 +02:00
Mauro Morales
f7d82d4082
Add required args to all-arm
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-11-06 15:27:51 +01:00
Mauro Morales
6c4f7b1f1c
Fix download path for ipxe (#1986)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-11-06 14:30:00 +01:00
Dimitris Karakasilis
43dabf55f3
Make sure the image is saved locally when calling earthly +iso
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-11-06 12:51:07 +02:00
Dimitris Karakasilis
b4821a3e9b
Make sure build/IMAGE is there after running +all-arm-generic
otherwise this will fail:
1cb7f08c32/.github/workflows/reusable-image-and-iso-arm-generic.yaml (L63)

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-11-03 18:10:34 +02:00
Mauro Morales
f3b1abe2b7
Fix release pipelines
Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
2023-10-31 16:20:58 +02:00
Itxaka
da376b3a06
🤖 Run bundles test on tumbleweed (#1961) 2023-10-26 15:16:11 +02:00
Mauro Morales
bd83ec92e5
Introduce RHEL family (#1953)
* Introduce RHEL family

- merges the files for rockylinux and almalinux into a rhel dockerfile
- decided not to add fedora into this since, it requires to add the epel packages, which might make fedora too close to rhel for our community users. But wonder what you think, is it a good/bad idea to try to also merge that one?

Clean up fedora dockerfile

- remove packages which are already installed by default "coreutils" and "curl"
- make it similar to the other dockerfiles for easier maintenance

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

* Add fedora to rhel family

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

* Introduce inbetween stage for readability

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-10-26 09:25:05 +02:00
Itxaka
83eaef1dff
🤖 Drop uki test as its no longer valid (#1949) 2023-10-24 20:53:17 +02:00
Dimitris Karakasilis
664c96fc11
1898 byoi (#1912)
* Refactor flavors and dockerfiles

Fixes #1898

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Use FRAMEWORK_FLAVOR variable to avoid confusion with FLAVOR

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix pipeline by adding mandatory value

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix ubuntu Dockerfile

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Apply suggestions from code review

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove TODO (already implemented) and non-used ARG "IMAGE"

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove TODOs

moved here: https://github.com/kairos-io/kairos/issues/1897#issue-1932574939

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove unecessary env variables and fix VARIANT_RELEASE missing

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* PR comments

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove naming.sh script from base image

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Make sure we use the "fixed" kairos version with the remove "+" symbols

when creating a tag for container images.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Setup qemu and docker buildx in reusable-build-flavor workflow

because otherwise it fails to build rpi images

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove not needed env variables

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove temporary change

Signed-off-by: Dimitris Karakasilis <jimmykarily@gmail.com>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Signed-off-by: Dimitris Karakasilis <jimmykarily@gmail.com>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-10-24 18:11:13 +03:00
Itxaka
84c3cadcc2
🎨 Use a single framework image (#1929) 2023-10-20 21:50:50 +02:00
Itxaka
60b59dadee
🎨 Build alpine initrd during image building (#1924) 2023-10-19 16:10:23 +02:00
Itxaka
541dea6114
⚠️ Add pure alpine flavor (#1465)
* Add pure alpine flavor

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
Signed-off-by: Itxaka <itxaka@kairos.io>
2023-10-18 20:34:15 +02:00
Itxaka
18d8286416
🎨 Provide bootargs via package (#1901) 2023-10-10 10:04:38 +02:00
Itxaka
7eeeb55ff1
🤖 Add target to save local uki artifacts (#1880) 2023-10-09 16:17:03 +02:00
Itxaka
05ed54115f
Improve uki iso stuff (#1854) 2023-10-03 22:00:55 +02:00
renovate[bot]
97669b427b
Update renovate/renovate Docker tag to v37 (#1861)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-28 18:10:18 +02:00
Mauro Morales
a54c680a5c
Do not remove cache dir (#1855)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-09-26 10:46:36 +00:00
Itxaka
87d205c41c
🤖 Fix systemd-fips framework trying to copy non-existing file (#1844) 2023-09-22 11:46:30 +02:00
Itxaka
9a3f30504f
Single magical bootargs (#1824)
Signed-off-by: Itxaka <itxaka@kairos.io>
2023-09-22 09:24:50 +03:00
Itxaka
62928d829b
Build uki iso artifacts (#1832) 2023-09-19 09:52:40 +02:00
renovate[bot]
73ac81f6dc
Update aquasec/trivy Docker tag to v0.45.1 (#1826)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-18 11:13:02 +02:00
Itxaka
13720665c3
🐛 Provide a generic bootargs in the framework for fips (#1818) 2023-09-15 09:31:21 +02:00
Itxaka
328b87720a
🐛 Fix bootargs matcher for rpi (#1810) 2023-09-12 15:03:22 +02:00
Dimitris Karakasilis
536b26d987
Install the right k3s package based on the init system (#1802)
* Install the right k3s package based on the init system

Fixes: #1797

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump luet repository to use the new packages

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add FLAVOR ARG for consistency

although it's a global and it should work anyway. But we pass it in
other places so let's at least be consistent.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-09-08 15:24:01 +03:00
Itxaka
aca4ee07b3
🎨 Bundle bootargs with framework images (#1796)
* 🎨 Bundle bootargs with framework images

Currently bootargs is not provided with the framework images so its
missing a very important piece to boot which results into BYOI being
broken.

This patch adds the bootargs.cfg to the framework image. Also the
config.txt to the rpi images.

Also drops the kernel/initramfs vars from the bootargs as they are set
to the default now in the package.

Also moves the luet clean under the package list generation as it
requires the database of luet to list the packages.

Signed-off-by: Itxaka <itxaka@kairos.io>

* Bump repos

Signed-off-by: Itxaka <itxaka@kairos.io>

* 🤖 Do not download the generated iso for upgrade-latest

Its not needed, we boot from latest release and upgrade to pushed
container, the iso is not touched

Signed-off-by: Itxaka <itxaka@kairos.io>

* 🎨 Restore kernel/initramfs values

Needed for upgrade as we dont upgrade COS_GRUB partition with anything
new during upgrade so we are stuck with existing config in there during
upgrades

Signed-off-by: Itxaka <itxaka@kairos.io>

---------

Signed-off-by: Itxaka <itxaka@kairos.io>
2023-09-07 18:38:53 +02:00
Itxaka
5fa35ab29a
Zfs reuse iso (#1795)
* 🤖 Use prebuilt iso on zfs test

Due to a mixup in the dirs, the zfs test was not finding the prebuilt
iso and was constructiing a new one on each run

Signed-off-by: Itxaka <itxaka@kairos.io>

* Do not run reset test twice

Just to check a simple grubenv file, just run it once as running it
twice means that we would drop the machine adn start from scratch again,
which makes no sense for a simple test.

Signed-off-by: Itxaka <itxaka@kairos.io>

---------

Signed-off-by: Itxaka <itxaka@kairos.io>
2023-09-06 20:15:44 +02:00
Itxaka
a302225688
🐛 Fix rpi partition sizes for upgrade (#1786)
As we use the state/recovery partition for storing the transition image
during upgrades, on ubuntu the partition sizes did not allow to store
the image properly as they were too small.

This fixes the current sizes for ubuntu based rpi64 images

Signed-off-by: Itxaka <itxaka@kairos.io>
2023-09-05 14:01:43 +02:00
renovate[bot]
8b5fffb3bb
Update aquasec/trivy Docker tag to v0.45.0 (#1713)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-04 16:44:27 +02:00
Mauro Morales
6772a6ef11
Easy option to build non-hwe kernels (#1781)
* wip

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

* Add non-hwe kernles for ubuntu LTS

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

* Add comments

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-31 09:24:36 +02:00
Mauro Morales
eb44ba5c82
Cache testing image and simplify scripts (#1776)
Cache golang-testing image

And reduce external call to generate datasource-iso

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-29 13:47:51 +02:00
Mauro Morales
a36abd6a08
Use single brackets on commands
This is because in Ubuntu, sh breaks when trying to interpret `[[`

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-23 13:07:49 +02:00
Mauro Morales
7133a7a635
Use single brackets on commands
This is because in Ubuntu, sh breaks when trying to interpret `[[`

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-23 11:54:21 +02:00
Dimitris Karakasilis
72207568cb
Bring back the bootargs.cfg files to the base image (#1756)
* Bring back the bootargs.cfg files to the base image

because we need them before any stages are run (grub needs them)

Related PR that removes them from the luet package:
https://github.com/kairos-io/packages/pull/391

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Change the dockerfile build context

to make COPY commands work without knowledge of the kairos repository
directory structure.

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump luet repo

to get this:

https://github.com/kairos-io/packages/pull/391

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* COPY, don't RUN files

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump luet repo

to get this:
https://github.com/kairos-io/packages/pull/392

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-22 16:37:51 +03:00
Dimitris Karakasilis
ce41ee3f71
Don't run command on scratch images (#1754)
because there is no shell there

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-22 10:47:40 +03:00
Itxaka
281e96126b
Bundle luet versions in the framework (#1748) 2023-08-21 16:44:42 +02:00
Dimitris Karakasilis
fd68f65f59
1726 move logic to overlays (#1738)
* Replace bootargs.cfg file with a stage that generates it

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Move nvidia specific files to cloud-init

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Move alpine files to cloud-init

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add TODO to fix nvidia partitioning config

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove not used overlay file for opensuse

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Install overlay files as a package

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Simplify framework target

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove `overlay/` directory from yamlling

because it doesn't exist anymore

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Bump luet repo

to get this fix:

https://github.com/kairos-io/packages/pull/386

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Don't try to lint non-existent dir

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add pipefail to default shell

because when apt fails to fetch information (with errors) the whole job
should fail

https://github.com/actions/runner/issues/353#issuecomment-1067227665
https://github.com/actions/runner/issues/353

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-21 14:29:29 +03:00
Itxaka
dc39a19f10
🎨 Drop scripts and rework ipxe (#1735) 2023-08-18 12:24:24 +02:00
Mauro Morales
f1936b829f
Fix k3s installation when a version is passed (#1740)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-18 12:14:32 +02:00
Itxaka
948f4b7227
🎨 Drop files-iso folder from iso building (#1727) 2023-08-17 16:18:32 +02:00
Dimitris Karakasilis
ee3477c74d
Add k3s version when it is set (#1731)
* Add k3s version when it is set

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Make K3S_VERSION a global

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove luet rebuild numbers from k3s version

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-17 11:51:46 +03:00
Dimitris Karakasilis
557f792fc6
Remove Earthly target that was never used (#1722)
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-14 15:57:33 +03:00
Itxaka
562de38ae3
:wrenchIcon: Fully remove machine-id and systemd-firstboot (#1702) 2023-08-10 20:25:43 +02:00
Itxaka
4a19be856d
🐧 Separate rpi3 from rpi4 (#1705)
* 🐧 Separate rpi3 from rpi4

Signed-off-by: Itxaka <itxaka@kairos.io>

* 🤖 Change the rpi64 to rpi4 for ci

Signed-off-by: Itxaka <itxaka@kairos.io>

* Rework dockerfiles for rpi3/4 separation

Signed-off-by: Itxaka <itxaka@kairos.io>

* Run arm PR in kvm runners

Signed-off-by: Itxaka <itxaka@kairos.io>

* Bump osbuilder and run under fast runner

Signed-off-by: Itxaka <itxaka@kairos.io>

---------

Signed-off-by: Itxaka <itxaka@kairos.io>
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-08-10 20:24:17 +02:00
Mauro Morales
45cfd5eead
Add SIMPLE_FLAVOR
to distinguish between distro and flavor without making reference to model and arch within the flavor

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-10 16:30:58 +02:00
Mauro Morales
90ddbc482f
Fix master builds with new Dockerfiles
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-10 16:10:15 +02:00
Mauro Morales
b9a21a6a0e
Refactor Dockerfiles (#1703)
* ARM generic

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

* add no install recommends

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

* fix rpi

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

* remove rpi Dockerfiles

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

* refactor debian Dockerfiles

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

* Opensuse

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

* Alpine

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

* All except for nvidia jtson

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-10 15:29:03 +02:00
Dimitris Karakasilis
5dbedd2556
Simplify the framework target
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-08 17:57:27 +03:00
Dimitris Karakasilis
8205bb06e7
Fix framework-image
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-08-08 17:54:23 +03:00
Dimitris Karakasilis
817f4ee669
1609 release standard images (#1689)
* Use dev version for provider kairos in Earthly

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* [WIP] Build a matrix for standard (provider) images

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Build provider-kairos image with the right flags

E.g. Invoke it as:

earthly +iso -PROVIDER_KAIROS=true -PROVIDER_KAIROS_VERSION=2.3.0 -K3S_VERSION=1.24.2

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Use latest package for provider-kairos and k3s

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove PROVIDER_KAIROS_VERSION setting

because when we install with luet, the version is defined by the
repository in framework-profile.yaml

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove implemented TODO

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Construct the k8s versions by quering the luet repo for available ones

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* No need to change version strings

They are already in the required format for luet

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* WIP

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove default MODEL that doesn't work

because the top level default always wins (Earthly...)

and downgrade osbuilder because it breaks arm builds. This should fix it:

https://github.com/kairos-io/osbuilder/pull/80

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Don't build standard images for nvidia jetson

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* WIP

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Drop PROVIDER_KAIROS and use VARIANT=standard instead

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* WIP

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* WIP

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* WIp

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove not used ARGs and simplify targets

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Try out on our branch

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

* Configure luet before searching it

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Try to fix luet

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix luet

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix signing path

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

* Bump CI

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add debug job

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove dummy job and try to remove permissions

to see if they are actually needed anywhere

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Debug, debug, debug

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Switch back to old naming

we will deal with it on another PR

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Simplify jq syntax

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Fix arm image release pipeline (no generic yet)

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

* Fix luet installation in job

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Fix the release-arm pipeline

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

* Unshallow the checkout in the pipeline to build a proper VERSION

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Use the action fetch-depth instead of unshallow

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

* Fix earthly things

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* WIP

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

* Remove our test branch from the workflow

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Remove done TODOs and make sure we install tools in all k3s versions

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>

* Rename Earthly command and remove unnecessary copying

because the framework-profile should already be in place

(Fixes based on PR comments)

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add nohang in base images (wherever it's available)

and remove the Earthly target for that.

Question: We only enable this on systemd:
  https://github.com/kairos-io/kairos/blob/master/overlay/files/system/oem/09_services.yaml#L21-L22
  What about systemd flavors that don't have it? (fedora, rockylinux,
  almalinux)

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Add repository for nohang in jetson dockerfile

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Filter which flavors to build standard image for

and stop running the release pipeline our current branch

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

* Fix name of matrix

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
Co-authored-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
2023-08-08 17:12:07 +03:00
Mauro Morales
1835bd67a2
Bump osbuilder to 0.8.3 (#1692)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-08 09:12:45 +02:00
Itxaka
7b7863db35
🤖 Add raw image target to earthly (#1675) 2023-08-03 19:48:45 +02:00
renovate[bot]
c47436236b
Update aquasec/trivy Docker tag to v0.44.0 (#1494)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-01 15:26:11 +02:00
Mauro Morales
07ac51edf6
🤖 Add missing targetarch argument (#1670)
Add missing targetarch argument

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-08-01 13:36:09 +02:00
renovate[bot]
7c31364bb0
Update quay.io/kairos/osbuilder-tools Docker tag to v0.8.2 (#1669)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-01 12:02:54 +02:00
Mauro Morales
adbba85e77
Refactor Dockerfiles for Ubuntu based flavors (#1656)
* POC with ubuntu dockerfiles

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

* oops

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

* Remove comment

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-07-31 11:15:41 +02:00
Mauro Morales
6c7fca7186
Keep distro calculation in sync with provider repo (#1655)
This is not really needed for this repo but for consistency purposes

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-07-27 16:45:30 +02:00
Mauro Morales
94696aa6f1
Introduce new naming convention for artifacts (#1625)
* Introduce new naming convention

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

* arm target

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

* tests

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

* arch for arm

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

* arch for arm

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

* tests

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

* tests

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

* tests

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

* fix naming of image

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

* sed in two steps

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

* pass arch to arm-image

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

* 🤦

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

* use targetarch

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-07-26 09:06:03 +02:00
renovate[bot]
bca3f22994
Update quay.io/kairos/osbuilder-tools Docker tag to v0.8.0 (#1613)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-20 15:50:41 +02:00
Itxaka
3daccfcf2c
Update osbuilder (#1604) 2023-07-13 17:43:26 +02:00
renovate[bot]
5e33a140a3
Update quay.io/kairos/osbuilder-tools Docker tag to v0.7.8 (#1603)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-13 09:16:46 +02:00
Itxaka
1b98143b4a
Build provider in kairos and bring provider-kairos tests (#1592)
Co-authored-by: Mauro Morales <contact@mauromorales.com>
2023-07-12 22:43:11 +02:00
renovate[bot]
446f8d3b7f
Update renovate/renovate Docker tag to v36 (#1581)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-10 09:39:40 +02:00
Ettore Di Giacinto
32465fad43
🐛 Orin fixups (#1562)
* 🐧 Increase image size for Orin images

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* 🐧 Add cublas/opencv to Jetson Orin images

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* 🐛 workaround /usr/local shadowed files

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* 🐧 Increment default image size in the agent

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* 🐛 use `initramfs.before`

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* 🐧 Add vim to orin images

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>

* Address feedback from review and clean up package list

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

---------

Signed-off-by: Ettore Di Giacinto <mudler@kairos.io>
Signed-off-by: mudler <mudler@kairos.io>
2023-06-29 12:07:26 +02:00
Mauro Morales
0294acdde9
🤖 Increase test images livespan to 24h (#1558)
Increase test images livespan to 24h

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-06-27 11:35:09 +02:00
Mauro Morales
dbacc56fbd
🐧 Add AlmaLinux flavor (#1532)
* Add alma linux flavor

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

* add dockerfile

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

* Cleanup packages

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

* Add alma to the list of CI flavors

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-06-21 18:34:13 +02:00
Itxaka
b7e030a7ab
🤖 Fix golang image not having qemu packages anymore (#1524) 2023-06-16 11:56:00 +02:00
Itxaka
bb40b6d168
🤖 Use zstd compression on PR building (#1507) 2023-06-14 10:49:28 +02:00
Itxaka
b8c7f6dee4
⬆️ Bump osbuilder (#1502)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-06-12 18:50:16 +02:00
renovate[bot]
1922fbba67
Update aquasec/trivy Docker tag to v0.42.0 (#1474)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-08 14:25:48 +02:00
renovate[bot]
be38f0871d
Update quay.io/kairos/osbuilder-tools Docker tag to v0.7.3 (#1478)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-06-06 12:01:36 +02:00
renovate[bot]
9ae3cc67eb
Update quay.io/kairos/osbuilder-tools Docker tag to v0.7.1 (#1467)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-02 09:06:14 +02:00
Itxaka
8b1b1e0064
Revert " Directly blacklist the vc4 module everywhere" (#1471)
Revert " Directly blacklist the vc4 module everywhere (#1443)"

This reverts commit ffd9f67353.
2023-06-01 16:14:13 +00:00
Itxaka
46ace19342
🤖 Fix building security scans on master (#1469) 2023-06-01 14:01:42 +02:00
Itxaka
5f0450f254
🤖 Improve CI PR building (#1466)
- Only build iso+image
 - Only upload sarif and sboms on master merge
 - Do not upload anything but ISO on PRs
 - Only upload iso+image+sarif+sbom on master merge

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-05-31 15:04:01 +00:00
renovate[bot]
eb90fea7c4
Update quay.io/kairos/osbuilder-tools Docker tag to v0.7.0 (#1464)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-31 14:42:56 +02:00
Itxaka
62c67e3e61
Yaml cleanup (#1453) 2023-05-31 08:25:57 +02:00
Itxaka
cfef66a766
Build and publish UKI images in our pipeline (#800) 2023-05-30 11:23:41 +02:00
Ettore Di Giacinto
156c79d257
🐧 Fixes to the orin image (#1455)
* 🐧 add grub2 symlink to the orin image

Signed-off-by: mudler <mudler@mocaccino.org>

* 🐛 Copy ubuntu arm artifacts into orin images

Signed-off-by: mudler <mudler@mocaccino.org>

* Update Earthfile

Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
Signed-off-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
Signed-off-by: mudler <mudler@mocaccino.org>

* 🌱 move framework preparation to a script

Signed-off-by: mudler <mudler@mocaccino.org>

* 🌱 run dracut only when its present in the image

Signed-off-by: mudler <mudler@mocaccino.org>

* Revert "🌱 move framework preparation to a script"

This reverts commit 025ffa248434bc49baf1f91c7105e04c6d3ee0b4.

Signed-off-by: mudler <mudler@mocaccino.org>

* try to keep things on earthly

Signed-off-by: mudler <mudler@mocaccino.org>

---------

Signed-off-by: mudler <mudler@mocaccino.org>
Signed-off-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
Co-authored-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-05-26 22:06:46 +02:00
Itxaka
22d7a418b5
Fully drop elemental from kairos (#1441) 2023-05-25 15:25:47 +02:00
Ettore Di Giacinto
e485cd451b
🐧 Add Jetson agx orin image (#1440)
* WIP image

Signed-off-by: mudler <mudler@mocaccino.org>

* Add nvidia overlay files

Signed-off-by: mudler <mudler@mocaccino.org>

* fixups, add to pipelines

Signed-off-by: mudler <mudler@mocaccino.org>

* lint fixes

Signed-off-by: mudler <mudler@mocaccino.org>

* ci: workaround Earthly parallelism

Signed-off-by: mudler <mudler@mocaccino.org>

* ci: nuke more space from public workers

Signed-off-by: mudler <mudler@mocaccino.org>

* ci: try to run on self-hosted

Signed-off-by: mudler <mudler@mocaccino.org>

* ci: add comment

Signed-off-by: mudler <mudler@mocaccino.org>

* ci: use mirror in ARM jobs

Signed-off-by: mudler <mudler@mocaccino.org>

* Run with docker

Signed-off-by: mudler <mudler@mocaccino.org>

* run some jobs on self-hosted

Signed-off-by: mudler <mudler@mocaccino.org>

* cleanup if on public runners

Signed-off-by: mudler <mudler@mocaccino.org>

---------

Signed-off-by: mudler <mudler@mocaccino.org>
2023-05-25 13:31:50 +02:00
Itxaka
ffd9f67353
Directly blacklist the vc4 module everywhere (#1443) 2023-05-25 08:05:30 +00:00
renovate[bot]
25533c4ac9
Update quay.io/kairos/osbuilder-tools Docker tag to v0.6.7 (#1412)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-24 00:47:28 +02:00
Mauro Morales
38da073118
🤖 Fix CI broken by lack of space for the Ubuntu arm rpi image (#1417)
* Expand size for ubuntu arm images

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

* Expand size of active partition for ubuntu arm rpi

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-05-16 16:27:22 +02:00
Mauro Morales
3b1fc191ec
🐧 Add Ubuntu flavors for RPi (#1170)
* added initial Dockerfile for ubuntu-arm-rpi flavor

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* added Dockerfiles for the other ubuntu arm rpi flavors

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* added overlay files for ubuntu-arm-rpi

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* propagate new flavor ubuntu-arm-rpi through repo

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* propagate ubuntu-20-lts-arm-rpi and ubuntu-22-lts-arm-rpi through the repo

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* ubuntu-20-lts-arm-rpi: use the correct firmware package

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* use dracut-network-legacy-compat for all ubuntu lts flavors

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* one package per line for rpi ubuntu dockerfiles

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* some cosmetic changes on the rpi dockefiles

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* removed unnecessary network interface files from dockerfile

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* hadolint: ignore apt pinned version and missing no-install-recommend for now

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* added explicit systemd-timesyncd to rpi dockerfiles

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* removed more unneeded apt-get clean from dockerfiles

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* minor name corrections and removing commented out stuff

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

* Change sizes for rpi ubuntu images

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

* Lint

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

* This was fixed on #821

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

* Keep use of cos instead of kairos in bootargs.cfg

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

* Add ports to RPi Docker images

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

* Force platform arm64 on all-arm target

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

* Use model to generate the generic ubuntu arm image

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

* lint and apply changes to other ubuntu versions

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

* force platform and model for all-arm

fix issues with ubuntu 20 lts arm rpi

remove unnecessary dockerfile

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

* Add missing reference in dockerfiles

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

* Increment trivy timeout

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

* Update packages for 20.04

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

* Remove dl3015

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

* Fix issue with ubuntu arm rpi overlay files

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

* Refactor overlay files for rpi

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

* Part of last commit

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

* Pass model to framework

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

* No need to have a different persistency config for the rpi

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

* Disable rpi-eeprom-update

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

* review feedback

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

---------

Signed-off-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
Co-authored-by: Martin Schuessler <1407812+c0ffee@users.noreply.github.com>
2023-05-12 14:39:34 +02:00
Mauro Morales
ad5948289a
🐛 Remove duplication of kairos vars in os-release (#1406)
* Remove duplication of kairos vars in os-release

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

* Use temp file

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

* Use sed to avoid using a temp file

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-05-12 11:38:39 +00:00
Itxaka
d28d4d9a2b
🤖 Add encryption tests (#1394)
:rotbot: Add encryption tests

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-05-11 10:47:55 +02:00
Dimitris Karakasilis
5f901665cc
Consume reusable linting workflow (#1371)
Consume reusable linting workflow and fix linting errors

part of: https://github.com/kairos-io/kairos/issues/1234

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-05-09 15:37:48 +03:00
Itxaka
56fd084b6d
🤖 Allow testing kcrypt from branches (#1372) 2023-05-03 21:29:45 +02:00
Itxaka
3cc53c8a27
🤖 Allow building agent from branches (#1369)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-05-02 20:22:33 +02:00
renovate[bot]
eda0ff24eb
Update aquasec/trivy Docker tag to v0.41.0 (#1364)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-28 19:29:32 +02:00
Itxaka
0bfdfbd446
Set rpi images with lvm by default (#1353)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-04-27 22:31:38 +02:00
Itxaka
aa228ef58b
Compress firmware and kernel modules on ubuntu (#1359)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-04-27 10:43:22 +02:00
Itxaka
5147429a0b
Use kairos-agent from packages (#1354)
*  Use kairos-agent from packages

Also drops all uneeded targets, code and so on for the agent
Moves profile-build into its own dir
Moves go.mod files into theyr own, one for testing and one for the
profile build
Adjusts earthly targets to the new stuff

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Bump repos and rework earthfile for kairos-agent package

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Restore missing earthly scripts

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Run apt update before apt install

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Copy go.{mod,sum} to local dir before tests

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Fix install tests

Is the only one not run in earthly, strange.

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

---------

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-04-26 16:12:58 +02:00
Mauro Morales
2e1ff888c3
🌱 Prefix variable names with distro name in os-release (#1263)
* Use site variables to update image flavor and name

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

* Typo

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

* Prefix variable names with distro name in os-release

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

* Adapt tests to read os-release with prefix

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

* Adapt docs to show how to read os-release with prefix

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

* Update SDK to be aware of attr prefixes

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

* Adapt test with new variable names

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

* Temporarily print the os-release

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

* Check KAIROS_VERSION on tests and fallback to VERSION

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

* Match kubo ID and VERSION_ID

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

* Make kubo extension match any ID

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

* Test still fails, trying with surrounding quotes

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

* Reduce tests wait time

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

* Use tumbleweed for bundles tests

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

* Update docs about systemd-sysext

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

* reduce wait time in reset tests

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-04-19 22:37:00 +02:00
renovate[bot]
0ad9893d71
Update quay.io/kairos/osbuilder-tools Docker tag to v0.6.1 (#1318)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-18 23:43:04 +02:00
Itxaka
ee465e654e
🤖 Add cypress tests for web UI (#1269) 2023-04-18 16:09:48 +00:00
Itxaka
434edb576d
🤖 Release arm generic artifacts on release (#1315)
* 🤖 Release arm generic artifacts on release

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Update release-arm.yaml

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

---------

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-04-18 13:55:59 +02:00
renovate[bot]
47b63540df
Update aquasec/trivy Docker tag to v0.40.0 (#1307)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-18 11:43:04 +02:00
Itxaka
b1e66b593b
🐛 Fix rpi initrd not being linked (#1309) 2023-04-17 11:11:15 +00:00
Itxaka
dac81b40ac
🌱 Generic arm64 isos (#1291)
🌱 Generate arm64 generic isos

 - Use latest osbuilder tools image as it contains fixes for arm64 isos
 - Add a small job to build an iso as part of the image arm workflow
 - Rework /boot/vmlinuz linking so it works on x86 and arm64

This also adds an iso-remote target for earthfile that allows to build
an iso from a remote rootfs in the shape of a docker artifact. This
allows for easy reproduce of isos based on existing artifacts instead of
having to rebuild the whole thing. You point to the artifact and it
spits an iso really fast. Also works with arm64 artifacts so we can
easily build a local arm64 iso for testing for pushed artifacts.

This PR makes it so generation of isos for arm64 works.

Signed-off-by: Itxaka <itxakaserrano@gmail.com>
2023-04-15 17:06:22 +02:00
renovate[bot]
ec6ece52d7
Update quay.io/kairos/osbuilder-tools Docker tag to v0.6.0 (#1293)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-14 10:07:42 +02:00
Mauro Morales
39c7824dbc
Pass VERSION flag including v2 in path (#1290)
* Pass VERSION flag including v2 in path

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

* Pass VERSION flag including v2 in path for goreleaser

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-04-13 19:44:19 +02:00
renovate[bot]
3019d26da1
Update aquasec/trivy Docker tag to v0.39.1 (#1268)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-10 08:49:09 +02:00
Mauro Morales
2b60fe851b
🤖 Add version to goreleaser (#1252)
* Add version to goreleaser

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

* do not remove github token

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

* include version in dist target

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

* Add missing flag to pass the version

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-04-05 12:24:19 +02:00
renovate[bot]
c4333226d8
Update aquasec/trivy Docker tag to v0.39.0 (#1236)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-03 11:08:35 +02:00
Mauro Morales
db441f924e
⬆️ Bump go in Earthly and workflows to ^1.20 (#1213)
* Bump go in Earthly and workflows to ^1.20

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

* Update go.mod version

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

* Lint

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

* Remove pin of go version to get the latest

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

* Remove minor version

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-03-30 16:42:25 +02:00
Mauro Morales
f4e4015109
🐛 Pass version to build of kairos agent (#1205)
Pass version to build of kairos agent

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-03-28 20:09:57 +02:00
Itxaka
dfa93054e7
🐛 Fix validator on long strings (#1194)
* 🐛 Fix validator on long strings

Validator was mistakenly identifying a long yaml as a file and trying to
open it, which failed with an error of filename too long.

This was not catched in order to identify that the source is not a file
but a yaml, so it was directly returning the error.

This patch adds that error to the list in order ot identify the source
to validate as yaml. Also adds a couple of tests for this functionality.

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* 🐛 Merge initramfs generation between distros

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

---------

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-28 18:20:56 +02:00
Itxaka
4911a7502f
🤖 Move repo bump to earthly (#1183)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-23 15:28:56 +01:00
Itxaka
fbd59e79c8
🤖 Improve golang CI runs (#1165) 2023-03-17 16:45:43 +01:00
Itxaka
b06072ad38
Use kairos-sdk module (#1140) 2023-03-15 15:45:00 +01:00
renovate[bot]
72124436fb
Update aquasec/trivy Docker tag to v0.38.3 (#1096)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-03-14 13:19:17 +01:00
renovate[bot]
89bba3e7c8
Update quay.io/kairos/osbuilder-tools Docker tag to v0.5.3 (#1095)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-03-14 10:40:10 +01:00
renovate[bot]
e5a2bcf7f9
Update renovate/renovate Docker tag to v35 (#1105)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-03-14 10:39:28 +01:00
Ettore Di Giacinto
87bb1826bd
🤖 Various enhancement to security scans (#1100)
* 🤖 Add --add-cpes-if-none to grype

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

* 🤖 Remove dup

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

* 🤖 Scan from base-image

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

* 🤖 Move ARGs where are needed

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

---------

Signed-off-by: mudler <mudler@c3os.io>
2023-03-10 18:11:48 +01:00
Ettore Di Giacinto
cc90b6664a
🤖 Fixup trivy scans (#1093)
* 🐧 Delete any files dangling in /tmp

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

* 🤖 Skip /tmp scan in trivy

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

---------

Signed-off-by: mudler <mudler@c3os.io>
2023-03-10 14:28:14 +01:00
Ettore Di Giacinto
071b890131
🤖 Pin trivy version (#1090)
Fixes: #1087

Signed-off-by: mudler <mudler@c3os.io>
2023-03-10 10:21:32 +01:00
Itxaka
836d81eb00
🤖 Update immucore dev testing (#1059)
There is now less files to copy over

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-09 18:57:00 +01:00
Jacob Payne
23b8c2c027 added zfs tests
Signed-off-by: Jacob Payne <jacob@spectrocloud.com>
2023-03-08 07:18:41 -07:00
Jacob Payne
8b5d877e96 added zfs packages to all images
Signed-off-by: Jacob Payne <jacob@spectrocloud.com>
2023-03-08 07:18:41 -07:00
Ettore Di Giacinto
3cd7dbeca4
🤖 Add grype scan reports (#1057)
Signed-off-by: mudler <mudler@c3os.io>
2023-03-08 09:13:08 +01:00
Ettore Di Giacinto
7bb9af95ab
🤖 Fixup test targets (#1034)
We were listing on a dir that now doesn't exist necessarly anymore, and
when picking up the iso from latest release, we are selectively
pickingone flavor for the upgrade test.

Signed-off-by: mudler <mudler@c3os.io>
2023-03-03 23:27:41 +01:00
Dimitris Karakasilis
dffb493ece Point ginkgo to the absolute path of the iso
Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2023-03-03 20:42:49 +02:00
Dimitris Karakasilis
aca32e41c4
Stop deleting the .earthlyignore and use PREBUILT_ISO ARG instead
Signed-off-by: Ettore Di Giacinto <ettore@spectrocloud.com>
2023-03-03 17:48:20 +02:00
Ettore Di Giacinto
6f0fdbcdbe
Fix bundle tests
The `rm` we did, made the repo "dirty" thus changing the kubo extention
version. This result in a kubo version that doesn't match the one in
/etc/os-release, so systemd-sysext doesn't show the extension.

https://www.freedesktop.org/software/systemd/man/systemd-sysext.html#Options

Fixes: https://github.com/kairos-io/kairos/issues/1029

Signed-off-by: Dimitris Karakasilis <dimitris@spectrocloud.com>
2023-03-03 15:56:07 +02:00
Ettore Di Giacinto
2be73a4706
🌱 Make sure to remove generated keys during setup (#1027)
Signed-off-by: mudler <mudler@c3os.io>
2023-03-03 13:57:43 +01:00
Ettore Di Giacinto
3ae0702e4b
🤖 Attach trivy scan reports (#1019)
Signed-off-by: mudler <mudler@c3os.io>
2023-03-02 18:37:00 +01:00
Ettore Di Giacinto
fc75313002
🤖 Use VARIANT, output SBOM to build (#1017)
🤖 Use VARIANT, output to build

Signed-off-by: mudler <mudler@c3os.io>
2023-03-02 16:47:52 +01:00
Itxaka
cef4cebf63
🤖 Allow testing immucore from branches (#989)
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-02 15:46:15 +01:00
Itxaka
057a81e4ad
🤖 Fix some tests rebuilding the iso (#980) 2023-03-02 15:29:40 +02:00
Ettore Di Giacinto
1460d77fdb
🤖 Add SBOM artifacts to CI pipelines (#998)
* 🤖 Add image-sbom target

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

* 🤖 Add image-sbom to main targets

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

* 🤖 Add SBOM artifacts to pipelines

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

---------

Signed-off-by: mudler <mudler@c3os.io>
2023-03-02 09:43:30 +01:00
Itxaka
18fcb14e2b
⚠️ 🎨 Use immucore 🦔 (#877)
* ⚠️ 🎨  Use immucore

Build kairos with immmucore instead of cos-immutable-rootfs

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* 🐛 Fix state sdk

State sdk is using ghw to identify the state of the disks, but
unfortunately ghw only works with devices and not with labels

This patch adds a workaround by checking deeper for partitions that
migth not have mountpoints reported by ghw but are indeed mounted

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* 🐛 Fix state not catching netboot properly

This worked with the old cos-immutable-rootfs due to the rd.cos.disable
stanza in cmdline making the livecd cloud config file trigger, which
created the livecd sentinel file.

With immucore, the sentinel is being created during initramfs directly
so we need to rely on the cmdline to identify it.

State sdk should know that having the netboot stanza should identify the
boot as cdlive

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Fix custom binds set as RW_PATHS

RW_PATHS are meant for overlay dirs which go away after a reboot.
Custom binds/binds are mounted under COS_PERSISTENT, so they persist
after reboot AND are RW by default.

This patch removes adding the custom binds into the RW_PATHS on the
cos-layout file as that can lead to unintended consequences

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Dont run custom mounts on livecd and recovery

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Rework writing custom ephemeral/binds

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Maybe fix tests

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* Add missing sgdisk to ubuntu images

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

* 🐛 Backport dracut patch for ubuntu 20 iscsi

There was an issue with dracut 48 in which the iscsid.socket required fs
targets to be ready. On an iso this could lead to a dependency cycle
between the dmsquash module setting up the livecd rootfs and the iscsi
socket required the initrd-fs to be ready.

This was fixed on dracut 50 and its what this patch brings, dropping the
socket dependency on the fs target so it can break the dependency cycle.

This only affect ubuntu 20 lts, and only affects booting from the iso.
Alos the issue is random as systemd will decide to break the dependency
in a non predictable way by disabling one of the services that conflict,
so sometimes it would be the iscsi serviec, which would make the iso
boot but sometimes it could be other more important services liek teh
local fs or the dracut pre-mount services.

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
(cherry picked from commit 63f0c75d69)

* Bump immucore

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>

---------

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
Co-authored-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
2023-03-01 00:02:10 +01:00
Ettore Di Giacinto
2463065715
🌱 Create framework images for each flavor (#973)
* 🌱 Create framework images for each flavor

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

* 🌱 Add base cloud config files from packages

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

* 🐧 No need to import base cloud config anymore from repositories

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

* 🤖 Build latest framework images

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

* 🤖 Simplify workflow flavors

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

* 🤖 Make linter happy

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

* 🐛 correctly parse the flavor

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

* 🐛 Fixup copying overlay files in the correct location

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

* 🤖 Set http registry in the self-hosted runner

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

---------

Signed-off-by: mudler <mudler@c3os.io>
2023-02-28 17:58:17 +01:00
Ettore Di Giacinto
45cce49d1c
🐛 Add back gdisk to ubuntu/debian images (#959)
* 🐛 Add back gdisk to ubuntu/debian images

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

* 🤖 No need to install mkisofs here

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

---------

Signed-off-by: mudler <mudler@c3os.io>
2023-02-24 13:05:38 +01:00
Shawn Wilsher
8873f834de
🔧 Integrate Shellcheck (#931)
* Add `shellcheck` to lint.

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

* Fix/Suppress `shellcheck` lint issues

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

---------

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
Co-authored-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-02-23 13:36:49 +01:00
Itxaka
3aaecdaa12
🐛 copy kairos agent during framework build (#933)
Currently is done during docker image but it makes no sense, it should
be during framework otherwise framework images do not contain the binary

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-02-21 16:52:09 +01:00
Mauro Morales
dfda5a71fb
🐛 Fix job "Push latest ARM images" caused by docs target (#927)
* print info

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

* Print more

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

* Keep in current dir

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

* list workdir

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

* Evaluate model and userarch

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

* Remove branch used for testing

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-20 17:18:59 +01:00
Mauro Morales
9411fb6661
🔧 Lint overlay files (#910)
* YAML lint overlay files

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

* Lint overlay files

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

* Add missing fixes

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-17 16:15:27 +00:00
Mauro Morales
44cfacd819
🔧 Build docs on arm64 (#906)
build docs on arm64

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-17 14:17:07 +01:00
Mauro Morales
c087608cdc
🔧 Automatically create a PR to publish latest schema release on the website (#899)
* Add earthly target to generate cloud config schema

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

* Add schema workflow

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-16 11:46:48 +01:00
Mauro Morales
840099fd0b
🔧 Use yamllint to check lint issues on GH workflows (#892)
* Use yamllint to check lint issues on GH workflows

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

* Split into two different steps

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

* Add yamllint config file

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

* Fix YAmL lint issues in GH workflows

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-15 16:39:10 +01:00
Mauro Morales
edab34d9a8
🔧 Add temp-image Earthly target (#876)
Add temp-image Earthly target

This is helpful to quickly generate temp images and upload them to
ttl.sh plus you can quickly distinguish the images by branch and sha

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-02-13 11:43:19 +01:00
Shawn Wilsher
438d5ea9cf
🔧 Add docker versioning for the RENOVATE_VERSION (#863)
Add docker versioning for the `RENOVATE_VERSION`

This isn't being picked up in the dashboard (#310), and it might be
because `34` isn't a proper semver.

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2023-02-10 09:35:43 +01:00
renovate[bot]
77fa0b2bf9
Update quay.io/kairos/osbuilder-tools Docker tag to v0.5.2 (#855)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-02-09 13:38:10 +01:00
Shawn Wilsher
2fccbb4b71
🔧 Mange the version of quay.io/kairos/osbuilder-tools with renovate (#850)
Mange the version of quay.io/kairos/osbuilder-tools with renovate

This should trigger an update in short order as the current version of
this image is v0.5.2.

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2023-02-09 09:37:31 +01:00
Shawn Wilsher
4d28f3b87f
Validate renovate config file during lint (#848)
Now that the config is more than the stock config, and folks are
interested in using it more, we should have some automation to verify
that the config is valid.

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2023-02-09 00:55:09 +01:00
Shawn Wilsher
e1c17d2897
🔧 Have renovate manage image versions in Earthfile (#841)
Have renovate manage image versions in `Earthfile`

This change adds support for renovate to be able to update the versions
of `quay.io/luet/base`, `golang`, and `hadolint`.

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2023-02-08 09:57:19 +01:00
Oz Tiram
b6fae30a0e
🔧 merge custom mounts tests (#814)
* 🔧 merge custom mounts tests

Since the feature is now merged, we no longer need
a single label for this. This saves a few CI cycles.
To acheive this, we add the correct sections to the normal
install sections and assert that these paths exist.

The previous assertions are kept, but in order to make
code a bit more readable, I extracted the anonymous function
that collects the data from the installed VM.

Instead of repeating the installation 4 times, we now only
repeat the installation 2 times.

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Refactor tests

Works with VBox, fails with QEMU

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Fix cloud-config identation

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

---------

Signed-off-by: Oz Tiram <oz@spectrocloud.com>
2023-02-07 17:19:33 +01:00
Shawn Wilsher
99208af445
🤖 Add hadolint as part of the automatic lint checks (#818)
* Pull out golint into its own target

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

* run hadolint on the Docker files in images/

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

* Ignore existing failures of hadolint, at least for now

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>

---------

Signed-off-by: Shawn Wilsher <656602+sdwilsh@users.noreply.github.com>
2023-02-05 18:10:51 +01:00
Ettore Di Giacinto
f1a9ce5ed6
⬆️ Bump luet to 0.34.0 (#813)
Signed-off-by: mudler <mudler@c3os.io>
Co-authored-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-02-03 18:40:41 +01:00
Itxaka
871b29fb51
🐛 Remove workaround for polkit dirs (#810)
Looks like there was missing docs for the --keep-own flag on easrthly
and we can indeed keep permissions for all dirs/files when copying
artifacts, but the flag needs to be both on the SAVE ARTIFACT and in the
COPY stanzas.

Signed-off-by: Itxaka <itxaka@spectrocloud.com>
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
Co-authored-by: Itxaka <itxaka@spectrocloud.com>
2023-02-03 11:34:56 +01:00
Oz Tiram
f8aef9e1f5
custom user bind and ephemeral mounts (#692)
*  custom user bind and ephemeral mounts

Users can now specify custom and ephemeral mounts in cloud-init under
the `install` section, e.g.:

```
users:
 - name: kairos
...
install:
  auto: true
  device: "auto"
  bind_mounts:
  - /mnt/bind1
  - /mnt/bind2
  ephemeral_mounts:
  - /mnt/ephemeral
  - /mnt/ephemeral2
...
```
Ephemeral mounts are mounted as RW - but changes are discarded when the
machine is restart.
Bind mounts will persist changes after restarted.

This is a fix for #210

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Add the custom user mount to /cos/run/cos-layout.env

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Add docs for custom user mounts in configuration example

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Reuse test_install function

DRY the code, change how we call the function install_test

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Enable custom mount tests and install tests

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Enable tests in CI

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Remove duplicate if check

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Remove uneeded fmt.Println ...

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Use separate label for custom mounts

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* 🔧 Earthfile - DRY ginkgo

We repeat this a more than twice so just extract to own
target...

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Correct return type for  ContainElements

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Remove CLOUD_INIT from custom mounts test

This is not needed here.

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* Fix qemu-test-* earthly targets

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* 🔧 Fix CPU passing to VM

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* 🔧 remove apt cache after install qemu

Helps deal with space running out in the CI.

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

* 📖 Document custom mounts

Signed-off-by: Oz Tiram <oz@spectrocloud.com>

---------

Signed-off-by: Oz Tiram <oz@spectrocloud.com>
Co-authored-by: Ettore Di Giacinto <mudler@users.noreply.github.com>
2023-02-03 11:04:02 +01:00
Itxaka
4dabf47e13
🐧 Disable squasfs compression for ISO building (#812)
Space gained is negligible, just a few Kbs usually (with gzip as its
currently) but the speed up improvements in building the ISO are really
good, for 20 seconds to 40 seconds per ISO build, and that gets more accentuated
on CI runs where the runners are more CPU constrained.

Signed-off-by: Itxaka <itxaka@spectrocloud.com>
Co-authored-by: Itxaka <itxaka@spectrocloud.com>
2023-02-03 11:03:20 +01:00
Itxaka
43d0190363
🐛 Fix wrong IF line in Earthfile (#785)
Looks like a ] was missing and instead of crashing and burning, earthly
continued happily, which meant that on v1.5.0 ARM tumbleweed images the
initrd is missing as earthly failed to parse the check but did not
errored out.

Signed-off-by: Itxaka <itxaka@spectrocloud.com>
Co-authored-by: Itxaka <itxaka@spectrocloud.com>
2023-01-30 22:11:48 +01:00
Mauro Morales
822f1a1c53
Integrate documentation to Web UI (#741)
* Integrate documentation to Web UI

Relates to #738

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

* submodule update

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

* Use hugo docker image

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-01-28 21:44:24 +01:00
Itxaka
83a89894b1
⚠️ add tumbleweed flavor (#710)
*  add tumbleweed flavor

 - Adds new opensuse-tumbleweed and opensuse-tumbleweed-arm-rpi flavors
 - Renames opensuse to opensuse-leap
 - Adapt earthfile to new names
 - Adapt CI to new names
 - Drop uneeded argument from dockerfiles
 - Updates docs to point older core-opensuse mentions to new
core-opensuse-leap flavor.
 - Add core-opensuses-tumbleweed flavor to matrix of version
 - Point to new kairos provider repos which include the version in the
naming

Signed-off-by: Itxaka <itxaka@spectrocloud.com>
2023-01-25 10:15:24 +01:00
Mauro Morales
b2f28bca49
Use envsubst for live-overlay.yaml (#662)
Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-01-19 12:01:41 +01:00
Itxaka
f87051ee01
🌱 Do not manually generate iso sha (#668)
No Need to generate the sha sum for the iso manually, elemental already does it

Signed-off-by: Itxaka <itxaka@spectrocloud.com>

Signed-off-by: Itxaka <itxaka@spectrocloud.com>
Co-authored-by: Itxaka <igarcia@suse.com>
2023-01-18 14:13:34 +01:00