Commit Graph

426 Commits

Author SHA1 Message Date
dependabot[bot]
878ce52870
Bump github.com/docker/distribution (#77)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 12:31:32 +02:00
renovate[bot]
9125488d8f Update module github.com/containerd/containerd to v1.7.11 [SECURITY] 2024-03-28 08:58:51 +00:00
Dimitris Karakasilis
f666b18370
2226 detect boot state (#69)
* Detect boot state using suffix in UKI mode

This assumes that the files are named correctly on installation/upgrades
etc (pending implementation)

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

* WIP

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

* Refactor NewRuntime and add logging

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

---------

Signed-off-by: Dimitris Karakasilis <dimitris@karakasilis.me>
2024-02-19 12:10:31 +02:00
Dimitris Karakasilis
29fc4851f4
1999 introduce versioneer (#59)
* Introduce versioneer package

to replace the naming.sh script in kairos-io/kairos

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

* Implement BootableName for bootable artifacts

also introduce Version and SoftwareVersion fields

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

* Refactor to introduce commondName

to be used with ContainerName

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

* Implement ContainerName and add missing tests

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

* Introduce NewArtifactFromJSON

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

* Introduce NewFromOSRelease

to be used within a Kairos image

See also discussion: https://github.com/kairos-io/kairos/discussions/2035

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

* Introduce 3 methods to find releases (TODO: implement them)

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

* Use existing OSRelease method and remove the new one

the existing method had to be adapted to accept and optional path to
the os-release file to allow the tests to pass a tmp file.

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

* Introduce TagList and some basic filtering of tags

also introduce RegistryInspector which finds tags from a container
registry for a specific repository.

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

* Implement OtherVersions method of TagList

to return different Kairos versions of the exact same artifact.

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

* [WIP] Add TODOs for 2 more methods

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

* Implement Sorted() method on TagList

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

* Implement RSorted

and change OtherVersions test to ensure it also returns older versions too.

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

* Implement NewerVersions method

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

* Make json file pretty

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

* Implement OtherSoftwareVersions and NewerSoftwareVersions

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

* Implement NewerAnyVersions and OtherAnyVersions

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

* Make TagList a struct so that it has an "Artifact" field

Now the Artifact has a TagList method that returns a TagList which is
associated to the specific Artifact.

All methods of TagList are now available to the Artifact.

E.g.
tagList, _ := artifact.TagList("quay.io/kairos")
tagList.NewerAnyVersion(...)

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

* Use the field Artifact in TagList methods instead of needing an argument

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

* Fix linting errors

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

* Restructure files and introduce main.go for versioneer

to provide a user interface that will replace naming.sh script of the
kairos repository

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

* Fix imports

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

* Implement bootable-artifact-name cli command

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

* Implement BaseContainerName method

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

* Create a wrapper command base-container-artifact-name

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

* Extract the cli command to the packag to be re-used in kairos-agent

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

* Go back to original package structure

and just nest the cli

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

* Move the versioneer "main" package outside the tree

to allow it to be imported in kairos-agent

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

* Allow setting the cli flags using environment variables

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

* Implement os-release-variables command

to replace the logic in Earthly and Dockerfiles

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

* Fix test

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

* Fix TODO in Readme

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

* Dry the creation of the Artifact

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-12-05 15:46:08 +02:00
renovate[bot]
f37fc75b5d fix(deps): update module github.com/swaggest/jsonschema-go to v0.3.62 2023-10-30 16:26:42 +00:00
renovate[bot]
7d4292eaa6 fix(deps): update module github.com/containerd/containerd to v1.7.7 2023-10-17 22:35:38 +00:00
renovate[bot]
0bb4e40b4f fix(deps): update module github.com/santhosh-tekuri/jsonschema/v5 to v5.3.1 2023-10-04 18:50:31 +00:00
renovate[bot]
5919d1a466
fix(deps): update module github.com/swaggest/jsonschema-go to v0.3.59 (#36)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-04 16:47:54 +02:00
renovate[bot]
52e0cbd60e
fix(deps): update module github.com/itchyny/gojq to v0.12.13 (#24)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-04 16:47:41 +02:00
renovate[bot]
42c18546e0
fix(deps): update module github.com/containerd/containerd to v1.7.5 (#25)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-04 16:47:22 +02:00
Itxaka
fd9cffde95
Properly calculate image size (#45) 2023-08-17 13:45:07 +03:00
renovate[bot]
f6ec86180b
fix(deps): update module github.com/onsi/ginkgo/v2 to v2.11.0 (#23)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-08 18:33:06 +02:00
renovate[bot]
c1d4d698f2
fix(deps): update module github.com/mudler/yip to v1.3.0 (#19)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-08 18:31:03 +02:00
renovate[bot]
3af1fbf2f8
fix(deps): update module github.com/zcalusic/sysinfo to v1 (#22)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-08 18:29:11 +02:00
renovate[bot]
481a189471
fix(deps): update module github.com/pterm/pterm to v0.12.63 (#20)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-19 21:24:52 +02:00
Itxaka
dcf352a009
Bring collector into the sdk (#31) 2023-06-14 13:01:06 +02:00
Itxaka
dd4fbb8014
Identify lvm partitions for state (#28) 2023-06-07 14:48:27 +02:00
Mauro Morales
c90740d747
Move schema validation to sdk to be used by different repos (#21)
* Move schema validation to sdk to be used by different repos

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

* remove unused

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

* fix recommendations

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

---------

Signed-off-by: Mauro Morales <mauro.morales@spectrocloud.com>
2023-05-26 12:32:01 +02:00
renovate[bot]
60c5f9c587
fix(deps): update module github.com/pterm/pterm to v0.12.61 (#11)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-05-17 09:45:37 +02:00
renovate[bot]
4499cee97d
fix(deps): update module github.com/onsi/ginkgo/v2 to v2.9.5 (#9)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-17 09:45:17 +02:00
renovate[bot]
2d2962a725
fix(deps): update module github.com/google/go-containerregistry to v0.15.2 (#16)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-17 09:45:04 +02:00
renovate[bot]
d9a4f04744
fix(deps): update module github.com/mudler/yip to v1 (#2)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-17 00:13:04 +02:00
Itxaka
ee38ccde54
Improve bundles for container and run to not use luet (#13)
This allows us to pull natively and support multiarch and auth out of
the box

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-05-16 17:59:04 +02:00
Itxaka
d2375598d6 Add Prompt and PrintBanner
Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-17 14:51:21 +01:00
Itxaka
5188423783
Bump vfs to 4 (#5) 2023-03-15 12:30:36 +01:00
Itxaka
3163cfbac0 Extract sdk into its own lib
This had some side effects:

 - Have to add some utils from the kairos/machine modules, which IMHO
   should not be there, they should be here if the are generic enough
 - Dropping the sdk dir, just have the modules in the root dir

Signed-off-by: Itxaka <itxaka.garcia@spectrocloud.com>
2023-03-15 10:56:11 +01:00