github kimdre/doco-cd v0.89.0

3 hours ago

What's Changed

  • Doco-CD is now built with the Docker CLI buildx plugin and supports building images that require BuildKit.
  • Added support to use OCI artifacts for deployments.
  • Poll intervals can now be definied as integer (60), numeric strings ("60") and Go duration strings ("60s" or "1m").
    Intervals are now always shown in the logs as Go durations.
  • Added new options to control volume and image cleanup when removing stacks with auto-discovery, see the docs.
  • Doco-CD attempts to repair broken/corrupt Git repository automatically.
  • Polling should no longer handle ephemeral containers (scheduled jobs) as reconciliation drift
  • When the expected deployment config is not found in the repository, Doco-CD will now fail the deployment instead of falling back to default values. Deployment config files (.doco-cd.yml) are now always required.
  • Added a new wait_running_jobs deployment configuration option and label to let doco-cd wait for running jobs before running a deployment to prevent long-running jobs from being interrupted.
  • Fixed an issue that caused doco-cd to ignore autodicovery config changes.

Note

The auto-discovery config is stored as a container label. This is neccesarry so that doco-cd is able to know how to clean up obsolete/removed stacks. When upgrading your doco-cd instance, all containers will be recreated once to hold the correct auto-discovered stack configuration.

✨ Features

  • feat(oci): add support for OCI artifacts as a deployment source by @kimdre in #1348
  • feat(auto-discovery): enhance configuration with volume and image removal options by @kimdre in #1354
  • feat(git): implement repository corruption detection and repair mechanism by @kimdre in #1361
  • feat(scheduler): add option to wait for running jobs before deploying by @kimdre in #1365

🌟 Improvements

  • refactor(ssh): optimize endpoint checks by @kimdre in #1350
  • feat(build): vendor buildx CLI plugin to enable BuildKit Dockerfiles by @SamORichards in #1340
  • refactor(poll): update interval handling to use Go durations by @kimdre in #1352
  • fix(deploy): require deploy config file by @kimdre in #1362
  • feat(scheduler): add ephemeral label handling for one-off jobs by @kimdre in #1353
  • feat(compose): improve service readiness check by @kimdre in #1383
  • fix(auto-discovery): improve performance by @kimdre in #1385

🐛 Bug Fixes

  • feat(auto-discovery): implement auto-discovery config label drift detection by @kimdre in #1363
  • fix: prevent infinite hang by @qianlongzt in #1384

📦 Dependencies

  • chore(deps): update golang:1.26.3 docker digest to 633d23b by @renovate[bot] in #1343
  • fix(deps): update module github.com/getsops/sops/v3 to v3.13.0 by @renovate[bot] in #1342
  • chore(deps): update module golang.org/x/tools to v0.45.0 by @renovate[bot] in #1341
  • fix(deps): update module github.com/go-git/go-billy/v5 to v5.9.0 by @renovate[bot] in #1344
  • fix(deps): update module github.com/go-git/go-git/v5 to v5.19.0 by @renovate[bot] in #1345
  • chore(deps): update golang:1.26.3 docker digest to 313faae by @renovate[bot] in #1347
  • chore(deps): update github/codeql-action digest to 9e0d7b8 by @renovate[bot] in #1355
  • fix(deps): update module github.com/getsops/sops/v3 to v3.13.1 by @renovate[bot] in #1357
  • fix(deps): update module github.com/google/go-containerregistry to v0.21.5 by @renovate[bot] in #1358
  • chore(deps): update docker/buildx-bin docker tag to v0.34.0 by @renovate[bot] in #1359
  • fix(deps): update module github.com/docker/cli to v29.5.0+incompatible by @renovate[bot] in #1360
  • chore(deps): update dependency zensical to v0.0.42 by @renovate[bot] in #1356
  • chore(deps): update gcr.io/distroless/base-debian13 docker digest to f2df870 by @renovate[bot] in #1364
  • chore(deps): update codecov/codecov-action action to v6.0.1 by @renovate[bot] in #1367
  • fix(deps): update module github.com/docker/cli to v29.5.1+incompatible by @renovate[bot] in #1368
  • fix(deps): update module github.com/go-git/go-git/v5 to v5.19.1 by @renovate[bot] in #1373
  • chore(deps): update dependency zensical to v0.0.43 by @renovate[bot] in #1371
  • chore(deps): update docker/buildx-bin docker tag to v0.34.1 by @renovate[bot] in #1372
  • chore(deps): update dataaxiom/ghcr-cleanup-action digest to 34a2b6c by @renovate[bot] in #1370
  • chore(deps): update docker/dockerfile:1 docker digest to 87999aa by @renovate[bot] in #1375
  • chore(deps): update docker/github-builder digest to 0738332 by @renovate[bot] in #1376
  • chore(deps): update dataaxiom/ghcr-cleanup-action digest to 374e202 by @renovate[bot] in #1379
  • chore(deps): update docker/build-push-action digest to f9f3042 by @renovate[bot] in #1380
  • chore(deps): update docker/setup-buildx-action digest to d7f5e7f by @renovate[bot] in #1382
  • chore(deps): update docker/metadata-action digest to 80c7e94 by @renovate[bot] in #1381

📚 Miscellaneous

New Contributors

Full Changelog: v0.88.0...v0.89.0

Don't miss a new doco-cd release

NewReleases is sending notifications on new releases.