* ✨ Add state api
This is related to https://github.com/kairos-io/kairos/issues/34.
Starts to unify the API to retrieve the state in the sdk to have a common place to query system status information.
* 🤖 Add test
* Update go.mod
* ⚙️ Fine-tune detection of partitions
* 🤖 Add more fine-grained tests
* 🎨 Add /dev/ to partition name
* 🤖 Fixup tests
* ⚙️ Remount accessors
* ✨ Add state partition to cloud-init paths
* 📝 Upper case Kairos in motd
* 🎨 Add mounts sdk
* 🎨 Set grub options via SDK
* 🎨 Make it more idiomatic
* 🐛 Fixup grub option quoting
* ⚙️ Copy discovery to oem if found
* ✨ Add environment block to install
* ⚙️ Use /oem for mount in kcrypt post-hook
* 📝 Update docs with installer env reference
* 🤖 Add test deps
* ⚙️ Be consistent and set env also for post-hooks
* ⚙️ propagate env in post-hooks
* 🤖 Run datasource tests on CircleCI
* 🤖 Run bundles tests on CircleCI
* 🤖 Fixups
* 🤖 Run cli tests to CircleCI
* 🤖 Extend wait time
* 🤖 Fail when VM is aborted
* 🤖 Enlart waiting time window
* 🤖 Do not set VM specs
* 🤖 Shift just some of the tests
From now on images built from this repo are the c3os core images.
c3os core images contains only the base image, framework files and the c3os agent.
This also sets up tests accordingly to run only to cover the c3os-agent.
This changeset also adds a `config_url` and `options` keyword in the c3os config.
Along with that the config logic is changed so the configuration is taken also from boot commands and merged in the final installed config file.
* 🎨 Split off cli into separate binaries
This commit splits off the cli into 3 binaries:
- agent
- cli
- provider
The provider now is a separate component that can be tested by itself
and have its own lifecycle. This paves the way to a ligher c3os variant,
HA support and other features that can be provided on runtime.
This is working, but still there are low hanging fruit to care about.
Fixes#14
* 🤖 Add provider bin to releases
* ⚙️ Handle signals
* ⚙️ Reduce buildsize footprint
* 🎨 Scan for providers also in /system/providers
* 🤖 Run goreleaser
* 🎨 Refactoring