github kimdre/doco-cd v0.50.0

latest releases: v0.58.0-rc.1, v0.57.0, v0.56.0...
one month ago

What's Changed

This release adds two new features/improvements:

Deployment Auto Discovery

You can use the new auto-discovery feature to automatically deploy your stacks/projects from a directory structure.
Enable it with auto_discover: true, you can specify the directory to be scanned with the working_dir setting.
Doco-CD will then scan the directory for sub-directories that contain docker-compose.y(a)ml or compose.y(a)ml files and use the name of the sub-directory as the stack name (similiar to the name deploy setting).

See the wiki for more information: https://github.com/kimdre/doco-cd/wiki/Deploy-Settings#auto-discover-settings

For example with a file structure like this

.doco-cd.yml
apps/
├── wordpress/
│   ├── docker-compose.yml
│   └── .env
├── nginx/
│   ├── docker-compose.yaml
│   └── configs/
│       └── nginx.conf
└── misc/
    └── image.png

and a .doco-cd.yml with the following content:

working_dir: apps/
auto_discover: true

doco-cd would deploy 2 stacks to the docker host:

  • wordpress
  • nginx

Remote env files when deploying from a remote repository

A new syntax has been added to the env_files deploy setting.
If repository_url is set to deploy from a different repo, you can use the remote:<filepath> syntax to specify, that the dotenv file is located in the remote repository and should be loaded from there. Entries/Keys, that appear in multiple files, get overwritten by the next occurrence and remote dotenv files have higher priority than local ones.

See the wiki for more information: https://github.com/kimdre/doco-cd/wiki/Deploy-Settings#from-remote-repository

For example:

# base.env
TEST=base
HELLO=world
# test.env in remote repository
TEST=changed
repository_url: <url to repo>
env_files:
  - base.env
  - remote:test.env

Would result in

TEST=changed
HELLO=world

✨ Features

  • feat(config): add autodiscovery support for deployment configurations by @kimdre in #766

🌟 Improvements

  • fix(secret-provider): improve 1Password client handling by @kimdre in #773
  • feat(config): allow propagation of local env files when using a remote repository by @kimdre in #777

📦 Dependencies

  • chore(deps): update golang:1.25.4 docker digest to e68f6a0 by @renovate[bot] in #763
  • fix(deps): update aws-sdk-go-v2 monorepo by @renovate[bot] in #764
  • fix(deps): update aws-sdk-go-v2 monorepo by @renovate[bot] in #768
  • fix(deps): update module golang.org/x/net to v0.47.0 by @renovate[bot] in #769
  • chore(deps): pin codespell-project/actions-codespell action to 406322e by @renovate[bot] in #771
  • chore(deps): update github/codeql-action digest to 014f16e by @renovate[bot] in #774
  • chore(deps): update module golang.org/x/tools to v0.39.0 by @renovate[bot] in #775

📚 Miscellaneous

  • ci: move spelling errors check job to test.yaml by @kimdre in #765
  • ci: improve spelling errors job by @kimdre in #767

Full Changelog: v0.49.0...v0.50.0

Don't miss a new doco-cd release

NewReleases is sending notifications on new releases.