Skip to content

Releases: canonical/concierge

v1.6.1

Choose a tag to compare

@james-garner-canonical james-garner-canonical released this 29 Jun 02:18
c1ed8cf

This is a bugfix release that avoids race conditions when configuring the MicroK8s provider, by waiting for MicroK8s to settle before configuring the image registry.

What's Changed

  • fix: wait for MicroK8s to settle before configuring image registry in #217
  • chore: bump Go to 1.26.4 in #204
  • chore: rename .github/zizmor.yml to .github/zizmor.yaml in #219
  • ci: drop colliding concurrency group from sbom-secscan workflow in #198
  • ci: build for all linux/* architectures supported by Go in #200
  • ci: enforce Conventional Commits on PR titles in #206
  • ci: add dependency-review-action on PRs in #207
  • refactor: use sync.Map in RunExclusive; document discard idioms elsewhere in #205
  • ci: don't attempt to comment on the PR from the dependency-action workflow in #210
  • build(deps): bump actions/checkout from 6 to 6.0.2 in #201
  • build(deps): bump github/codeql-action from 4.35.2 to 4.36.0 in #203
  • build(deps): bump tiobe/tics-github-action from 3.9.1 to 3.10.0 in #202

Full Changelog: v1.6.0...v1.6.1

v1.6.0

Choose a tag to compare

@james-garner-canonical james-garner-canonical released this 28 May 03:03
e904ac9

This release adds the ability to specify a Juju snap revision to install, and adds uv to the dev preset.

What's Changed

  • feat: allow specifying a Juju snap revision in #185
  • feat: add astral-uv to the dev preset in #195
  • fix: work around Viper dropping nil-value keys in #190
  • fix: fall back to getent for users that are not findable in /etc/passwd in #183
  • chore: update Go version to 1.26.2 in #191
  • chore: update Go version to 1.26.3 in #193
  • ci: run secscan on release for security scanning and SBOM generation in #196
  • docs: replace the PGP key with the upstream page in SECURITY.md in #192

New Contributors

Full Changelog: v1.5.0...v1.6.0

v1.5.0

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 29 Apr 22:35
aeda3bc

The main change in this release is that we've adjusted the way Concierge logs when running commands that are expected to fail (like checking if a system is already bootstrapped). Many users were confused seeing error messages that were raw errors from the processes being called, but expected non-errors from Concierge's point of view. Those are now only displayed if you've increased the logging level.

What's Changed

  • feat: drop logs to trace if an error is expected in #173
  • test: expect provider-microk8s to time out on concierge prepare in #174
  • ci: add a dependabot cooldown in #180

Full Changelog: v1.4.3...v1.5.0

v1.4.5

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 30 Mar 00:43
ea1a5ee

This release contains a collection of small bug fixes. Most significantly, it avoids clobbering an existing K8s cluster, for example if running concierge twice.

(This release is the same as 1.4.3, which failed to release due to an incompatibility with recently changed GitHub settings.)

What's Changed

  • fix: only remove /run/containerd if we need to bootstrap k8s in #161
  • fix: use MicroK8s config for model defaults and bootstrap constraints in #166
  • fix: treat non-active installed snaps as installed in #165
  • fix: merge provider credentials instead of overwriting in #163
  • fix: don't retry permanent errors in RunWithRetries in #164
  • chore: address minor linting issues in #169
  • ci: add Zizmor workflow in #167
  • ci: add static analysis in #168

Full Changelog: v1.4.2...v1.4.5

v1.4.4: a collection of small bug fixes

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 29 Mar 21:44
ea1a5ee

This release contains a collection of small bug fixes. Most significantly, it avoids clobbering an existing K8s cluster, for example if running concierge twice.

(This release is the same as 1.4.3, which failed to release due to an incompatibility with recently changed GitHub settings.)

What's Changed

  • fix: only remove /run/containerd if we need to bootstrap k8s in #161
  • fix: use MicroK8s config for model defaults and bootstrap constraints in #166
  • fix: treat non-active installed snaps as installed in #165
  • fix: merge provider credentials instead of overwriting in #163
  • fix: don't retry permanent errors in RunWithRetries in #164
  • chore: address minor linting issues in #169
  • ci: add Zizmor workflow in #167
  • ci: add static analysis in #168

Full Changelog: v1.4.2...v1.4.4

v1.4.3

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 29 Mar 20:39
Immutable release. Only release title and notes can be modified.
ea1a5ee

This release contains a collection of small bug fixes. Most significantly, it avoids clobbering an existing K8s cluster, for example if running concierge twice.

What's Changed

  • fix: only remove /run/containerd if we need to bootstrap k8s in #161
  • fix: use MicroK8s config for model defaults and bootstrap constraints in #166
  • fix: treat non-active installed snaps as installed in #165
  • fix: merge provider credentials instead of overwriting in #163
  • fix: don't retry permanent errors in RunWithRetries in #164
  • chore: address minor linting issues in #169
  • ci: add Zizmor workflow in #167
  • ci: add static analysis in #168

Full Changelog: v1.4.2...v1.4.3

v1.4.2

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 27 Feb 01:05
c3f5a01

1.4.2 bumps the version of Go from 1.24 to 1.26 to address security issues (which we do not believe impact Concierge). The 1.4.0 release notes are included below for your convenience.

This release adds a couple of features to make it easier to use Concierge with custom configurations: a new --dry-run option that will print out any write operations rather than executing them, and moving the presets from Go code to YAML. The latter means that when you need to have a configuration that isn't one of the presets, you can copy the closest preset (from the repo) and modify it, rather than having to start from scratch.

In addition, it's now possible to specify an image registry for K8s and MicroK8s. This is particularly useful when access to standard registries is unavailable, such as within some of Canonical's own infrastructure.

What's Changed

  • feat: add --dry-run flag to prepare and restore commands in #147
  • feat: add image registry configuration for K8s and MicroK8s in #148
  • feat: store presets as YAML rather than Go in #152
  • docs: Add CONTRIBUTING.md, moving some content from README.md in #146
  • ci: test on different architectures in #114
  • ci: ensure "go fmt" formatting, use "any" instead of "interface{}" in #150
  • ci: avoid using MicroK8s as a provider unless explicitly testing MicroK8s in #154
  • refactor: simplify the system interface in #153
  • build(deps): bump tiobe/tics-github-action from 3.7.0 to 3.7.1 in #149

New Contributors

Full Changelog: v1.3.0...v1.4.2

v1.4.1

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 26 Feb 05:11
b67c40c

1.4.1 is a paper-bag release that disables a problematic integration test (provider-microk8s) in order to get the release out. The 1.4.0 release notes are included below for your convenience.

This release adds a couple of features to make it easier to use Concierge with custom configurations: a new --dry-run option that will print out any write operations rather than executing them, and moving the presets from Go code to YAML. The latter means that when you need to have a configuration that isn't one of the presets, you can copy the closest preset (from the repo) and modify it, rather than having to start from scratch.

In addition, it's now possible to specify an image registry for K8s and MicroK8s. This is particularly useful when access to standard registries is unavailable, such as within some of Canonical's own infrastructure.

What's Changed

  • feat: add --dry-run flag to prepare and restore commands in #147
  • feat: add image registry configuration for K8s and MicroK8s in #148
  • feat: store presets as YAML rather than Go in #152
  • docs: Add CONTRIBUTING.md, moving some content from README.md in #146
  • ci: test on different architectures in #114
  • ci: ensure "go fmt" formatting, use "any" instead of "interface{}" in #150
  • ci: avoid using MicroK8s as a provider unless explicitly testing MicroK8s in #154
  • refactor: simplify the system interface in #153
  • build(deps): bump tiobe/tics-github-action from 3.7.0 to 3.7.1 in #149

New Contributors

Full Changelog: v1.3.0...v1.4.1

v1.4.0: --dry-run, custom image registries, and YAML presets

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 26 Feb 02:51
b28b069

This release adds a couple of features to make it easier to use Concierge with custom configurations: a new --dry-run option that will print out any write operations rather than executing them, and moving the presets from Go code to YAML. The latter means that when you need to have a configuration that isn't one of the presets, you can copy the closest preset (from the repo) and modify it, rather than having to start from scratch.

In addition, it's now possible to specify an image registry for K8s and MicroK8s. This is particularly useful when access to standard registries is unavailable, such as within some of Canonical's own infrastructure.

What's Changed

  • feat: add --dry-run flag to prepare and restore commands in #147
  • feat: add image registry configuration for K8s and MicroK8s in #148
  • feat: store presets as YAML rather than Go in #152
  • docs: Add CONTRIBUTING.md, moving some content from README.md in #146
  • ci: test on different architectures in #114
  • ci: ensure "go fmt" formatting, use "any" instead of "interface{}" in #150
  • ci: avoid using MicroK8s as a provider unless explicitly testing MicroK8s in #154
  • refactor: simplify the system interface in #153
  • build(deps): bump tiobe/tics-github-action from 3.7.0 to 3.7.1 in #149

New Contributors

Full Changelog: v1.3.0...v1.4.0

v1.3.0: transparently handle existing containerd

Choose a tag to compare

@tonyandrewmeyer tonyandrewmeyer released this 29 Jan 01:20
e389176

This release handles environments such as GitHub Actions where there is an existing containerd setup by automatically removing that as part of prepare. If your workflow was explicitly doing this, you can now remove that.

We also now interact with snapd via the API, which resolves security alert false positives. There are also the usual set of small improvements and fixes.

What's Changed

  • feat: transparently handle existing containerd services in #131
  • feat: add gnome-keyring to default packages for craft tools in headless environments in #134
  • refactor: replace snapcore/snapd dependency with minimal local snapd API client in #123
  • chore: add basic instructions for AI agents in #135
  • ci: fix goreleaser deprecated config field in #144
  • fix: don't dereference symlinks in recursive ownership change in #141
  • docs: updated security@ubuntu.com PGP key by @lucistanescu in #145

New Contributors

Full Changelog: v1.2.0...v1.3.0