Skip to content

Releases: stefanprodan/timoni

v0.15.0

29 Oct 16:33
v0.15.0
c1caaf5
Compare
Choose a tag to compare

🎉 Timoni now has an official logo and a brand-new website homepage.

New Features

  • Bundle Secrets Injection - Timoni supports injecting secrets when deploying application from CI runner secret store, in-cluster secrets and SOPS encrypted files.
  • Running tests with Kubernetes Jobs - Timoni has the capability of running e2e tests after installing or upgrading a module instance. Module authors can define tests with Kubernetes Jobs and include those as the last stage of a module apply.
  • Update Timoni's CUE schemas - Module authors can now keep the Timoni's CUE schemas up-to-date using the timoni artifact pull command.

New Commands

  • timoni bundle status - The status command lists the instances managed by a Bundle, including their Module information, the container images referenced in the Module and the current status of all managed Kubernetes resources.
  • timoni inspect values - The inspect command prints the user-supplied values enabling reproducible instance builds based on the metadata stored in cluster.
  • timoni mod vet - The vet command verifies that a local module has a valid file structure and contains required schemas, then it builds and validates the resulting Kubernetes objects. When run with the --debug flag, the validation uses debug_values.cue instead of the default values, allowing vetting of modules with required values that don't have a default.

Breaking changes

  • Bundle delete command new format is timoni bundle delete <name>, the --namespace flag is now ignored and the -A flag was removed.

What's Changed

Full Changelog: v0.14.2...v0.15.0

v0.14.2

08 Oct 15:12
v0.14.2
a5f6a97
Compare
Choose a tag to compare

This patch release comes with improvements to bundle operations. At apply-time, all modules referred in a bundle are pulled from the registry before attempting the apply. At delete-time, the instances are uninstalled in reverse order, the first created instance is the last to be deleted from the cluster.

What's Changed

Full Changelog: v0.14.1...v0.14.2

v0.14.1

06 Oct 16:15
v0.14.1
f68b7c3
Compare
Choose a tag to compare

This patch release comes with a fix to force applying GCP k8s-config-connector resources with immutable fields changes.

What's Changed

Full Changelog: v0.14.0...v0.14.1

v0.14.0

02 Oct 07:49
v0.14.0
66b2bab
Compare
Choose a tag to compare

New Features

  • Bundle distribution - Timoni Bundles and their Runtimes can now be distributed as signed OCI artifacts stored in container registries.
  • Kubernetes core APIs vendoring - Module authors can now easily import and update the CUE schemas of Kubernetes APIs with Timoni, without having to use go get and cue get go commands.
  • Kubernetes CRDs vendoring - Module authors can now generate and update the CUE schemas of Kubernetes CRDs directly from YAML files with Timoni.
  • Reproducible builds - The OCI artifacts produced by Timoni rely on Git metadata to ensure reproducible builds of modules. In addition, the storage of module artifacts in container registries has been optimised by storing the CUE schemas in a dedicated OCI layer.

New Commands

Module vendoring of Kubernetes core APIs and CRDs:

Distributing bundles, runtimes and schemas to container registries:

Authenticate to container registries:

Breaking changes

  • The --annotations flag was renamed to --annotation in timoni mod push
  • The --source flag was removed from timoni mod push (it is now automatically set, and can be overwritten via --annotation)
  • The OCI artifacts created with Timoni v0.14 can't be pulled with Timoni v0.13 and earlier versions
  • The OCI artifacts created with Timoni v0.13 and earlier versions and compatible with Timoni v0.14

Run timoni mod push --help to see examples of how to set a module's source and other OpenContainers annotations.

What's Changed

Full Changelog: v0.13.1...v0.14.0

v0.13.1

10 Sep 16:56
v0.13.1
4b047b0
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.13.0...v0.13.1

v0.13.0

10 Sep 14:05
v0.13.0
f3f3cb3
Compare
Choose a tag to compare

New Features

Breaking changes

Bundle API

The timoni(env:[TYPE]:[NAME]) CUE attribute used in Bundles was replaced with timoni(runtime:[TYPE]:[NAME]).

The local Environment is no longer loaded by default, users need to opt-in by using the --runtime-from-env flag in timoni bundle commands.

To migrate, replace @timoni(env with @timoni(runtime in your Bundles.

Kubernetes flags

The Timoni Kubernetes command flags have been prefixed with kube:

--kube-as string                      Username to impersonate for the operation. User could be a regular user or a service account in a namespace.
--kube-as-group stringArray           Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
--kube-as-uid string                  UID to impersonate for the operation.
--kube-certificate-authority string   Path to a cert file for the certificate authority.
--kube-client-certificate string      Path to a client certificate file for TLS.
--kube-client-key string              Path to a client key file for TLS.
--kube-context string                 The name of the kubeconfig context to use.
--kube-insecure-skip-tls-verify       if true, the Kubernetes API server's certificate will not be checked for validity. This will make your HTTPS connections insecure.
--kube-server string                  The address and port of the Kubernetes API server.
--kube-tls-server-name string         Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used.
--kube-token string                   Bearer token for authentication to the API server.
--kubeconfig string                   Path to the kubeconfig file.

What's Changed

New Contributors

Full Changelog: v0.12.1...v0.13.0

v0.12.1

03 Sep 15:50
v0.12.1
51ff290
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.12.0...v0.12.1

v0.12.0

03 Sep 13:17
v0.12.0
ca10642
Compare
Choose a tag to compare

Breaking Changes

  • Timoni v0.12.0 is built with CUE v0.6.0. New modules generated with timoni mod init are not compatible with older versions of CUE due to the usage of required fields.

What's Changed

Full Changelog: v0.11.1...v0.12.0

v0.11.1

31 Jul 20:08
v0.11.1
3e99a60
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.11.0...v0.11.1

v0.11.0

21 Jul 12:30
v0.11.0
78ddfe4
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.10.0...v0.11.0