Skip to content

Update dependency kimdre/doco-cd to v0.88.0#43

Merged
strayer merged 2 commits into
mainfrom
renovate/kimdre-doco-cd-0.x
May 23, 2026
Merged

Update dependency kimdre/doco-cd to v0.88.0#43
strayer merged 2 commits into
mainfrom
renovate/kimdre-doco-cd-0.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Apr 25, 2026

This PR contains the following updates:

Package Update Change
kimdre/doco-cd minor 0.82.10.88.0

Release Notes

kimdre/doco-cd (kimdre/doco-cd)

v0.88.0

Compare Source

What's Changed

Renamed execution mode one_shot

The job scheduler execution mode one_shot has been renamed from to one_off for consistency.
The old value is still accepted for backward compatibility but will log a warning and be removed in a future release.

Github Apps

Github Apps are now properly supported, more info in the documentation.

✨ Features
🌟 Improvements
  • refactor(scheduler): rename execution mode from one_shot to one_off for consistency by @​kimdre in #​1336
🐛 Bug Fixes
  • fix(scheduler): prevent race condition in one-off container wait by @​kimdre in #​1337
📦 Dependencies

Full Changelog: kimdre/doco-cd@v0.87.0...v0.88.0

v0.87.0

Compare Source

What's Changed

Fixed a bug that caused jobs to always be scheduled with UTC timezone instead of the local/set timezone.

This release also adds two new API endpoints to list and trigger scheduled jobs (introduced in v0.86.0), see also the REST API documentation.

Endpoint Method Description Query Parameters
/v1/api/jobs GET List all discovered scheduled jobs. - stack (string, optional): Return scheduled jobs only for one stack/project.
/v1/api/job/{jobName}/run POST Trigger a configured scheduled job immediately. - stack (string, optional): Limit matching to a specific stack/project.
- wait (boolean, default: true): Wait for the triggered run to finish before responding.

What is the jobName for a scheduled job?
jobName is the runtime name of the scheduled target:

  • Docker (standalone): the container name (for example my-stack-backup-1)
  • Docker Swarm: the service name (for example my-stack_backup)

How do I find the jobName for a scheduled job?
You can get the jobName from the scheduler logs ("job":"...") or from GET /v1/api/jobs.

  • If multiple jobs share the same jobName, provide stack to disambiguate for the run endpoint.
  • If the matched job is disabled, the run endpoint returns a conflict response.

Common run endpoint outcomes

  • 200 OK: run triggered and completed (wait=true).
  • 202 Accepted: run accepted and running in background (wait=false).
  • 404 Not Found: no scheduled job matched jobName (and optional stack).
  • 409 Conflict: matched job is disabled or the selection is ambiguous.
Example Request
Trigger a job by container name
curl --request POST \
  --url 'https://cd.example.com/v1/api/job/my-stack-backup-1/run?wait=true' \
  --header 'x-api-key: your-api-key'
Trigger a job by service name in a specific stack
curl --request POST \
  --url 'https://cd.example.com/v1/api/job/backup/run?stack=my-stack&wait=true' \
  --header 'x-api-key: your-api-key'
List all scheduled jobs for a specific stack
curl --request GET \
  --url 'https://cd.example.com/v1/api/jobs?stack=my-stack' \
  --header 'x-api-key: your-api-key'
✨ Features

Full Changelog: kimdre/doco-cd@v0.86.0...v0.87.0

v0.86.0

Compare Source

What's Changed

Scheduled jobs

This release adds a job scheduler that allows you to run containers/services defined in your docker compose files as scheduled jobs based on cron-like schedules or predefined intervals.
This is useful for running periodic tasks such as backups, maintenance scripts, or any recurring workloads without needing an external scheduler.

More details in the documentation.

Domain-scoped Git authentication

You can now specify domain-scoped Git auth credentials to allow Git operations (clone/fetch) for multiple SCMs/domains. If no domains match or domain-scoped authentication is not configured, the GIT_ACCESS_TOKEN / SSH_PRIVATE_KEY values are used.

The domain-scoped authentication configuration is a YAML list where each entry defines credentials for one or more domains.
Each entry in the list has the following structure:

- domains:                          # (Required) List of domain names or patterns
    - domain1.com
    - domain2.com
    - '*.example.com'
  git_access_token: xxx             # (Optional) HTTP token for git access
  ssh_private_key: |                # (Optional) SSH private key content
    -----BEGIN OPENSSH PRIVATE KEY-----
    ...
    -----END OPENSSH PRIVATE KEY-----
  ssh_private_key_passphrase: xxx   # (Optional) Passphrase for encrypted SSH key

More details in the documentation.

✨ Features
🌟 Improvements
📦 Dependencies
📚 Miscellaneous

Full Changelog: kimdre/doco-cd@v0.85.1...v0.86.0

v0.85.1

Compare Source

What's Changed

🐛 Bug Fixes
  • fix(config): remove 'notEmpty' constraint from OpenBao AccessToken field by @​kimdre in #​1319
📦 Dependencies

Full Changelog: kimdre/doco-cd@v0.85.0...v0.85.1

v0.85.0

Compare Source

Nested deployment configurations with Auto-Discovery

You can now add additional, nested deployment configurations when use the auto-discovery feature to override the base-deployment configuration for a specifc project/stack. For more info see the documentation for Nested config overrides.

🚨 Breaking Changes to Settings in the Deployment Configuration

This Release introduces a configuration schema cleanup in the deployment settings for consistency with other settings, adds flexible shorthand syntax, and updates auto-discovery label handling in Docker Container.

[!IMPORTANT]
You need to change the following values:

  • Replace the following in your .doco-cd.yml files:
    • auto_discover and auto_discover_opts -> auto_discovery (merged together to one object)
    • destroy and destroy_opts -> destroy (merged together to one object)
    • build_opts -> build (Renamed)
  • Consider recreating containers that use the legacy cd.doco.deployment.auto_discover Docker label to migrate to cd.doco.deployment.auto_discovery in the next convenient moment.

Changes

Unified Config Objects
  • Auto-discovery config is now unified: auto_discover and auto_discover_opts are replaced by a single auto_discovery object:
    • auto_discovery.enabled
    • auto_discovery.depth
    • auto_discovery.delete
  • Destroy config is now unified: destroy (boolean) and destroy_opts are replaced by a single destroy object:
    • destroy.enabled
    • destroy.remove_volumes
    • destroy.remove_images
    • destroy.remove_dir
Renamed Fields for Build settings

build_opts has been renamed to build:

build:
  force_image_pull: true
  no_cache: true
  args:
    MY_ARG: value
Boolean Shorthand Support

auto_discovery, destroy, and reconciliation now accept either a boolean or a full object, enabling a concise shorthand:

# Shorthand (uses default options)
auto_discovery: true
destroy: true
reconciliation: false

# Full object (for customization)
auto_discovery:
  enabled: true
  depth: 2
  delete: false
Docker Label Changes

By renaming the auto_discovery deploy setting, I also changed their Container labels. The old labels are deprecated but still supported to prevent unnecessary redeployments/container recreations:

  • New labels: cd.doco.deployment.auto_discovery and cd.doco.deployment.auto_discovery.delete
  • Deprecation handling: Legacy auto_discover labels are still read as a fallback for existing containers, and a deprecation warning is logged, prompting migration.

What's Changed

🚨 Breaking Changes
✨ Features
  • feat(deploy-config): add support for nested deployment configuration by @​kimdre in #​1305
🌟 Improvements
  • refactor(external-secrets): seperate caching logic in 1password provider by @​kimdre in #​1304
  • refactor(config): reorganize config package by @​kimdre in #​1310
  • feat(reconciliation): add post-destroy stage and skip logic for reconciliation by @​kimdre in #​1312
  • refactor(deploy-config): rename 'enable' to 'enabled' for consistency by @​kimdre in #​1313
📦 Dependencies
📚 Miscellaneous

New Contributors

Full Changelog: kimdre/doco-cd@v0.84.0...v0.85.0

v0.84.0

Compare Source

What's Changed

This release was a lot of work. Thank you to everyone who provided contributions and tested the changes! :)

Reconciliation on Docker events

The reconciliation logic has been completely rewritten and now triggers on events from the Docker daemon (like a removed service or unhealthy container) to start the reconciliation process instead of checking on an interval if reconciliation is needed.
Configuration options and further information can be found in the documentation.

Image Digest get fetched with HEAD requests

Doco-CD now fetches image digests from container registries using HEAD requests to avoid rate limits with a fallback to the previous GET request logic.

This is useful for registries like DockerHub, where all GET requests against the registry count as an image pull, even if they don't download any image layers.

New 1Password Connect provider

This release adds support for using a 1Password Connect Server as a external secrets provider.

A 1Password Connect server is a self-hosted proxy that caches vault data locally and serves secrets over a simple HTTP API. This is useful when you are deploying frequently or have multiple instances that would otherwise hit 1Password API rate limits.

See the docs for setup and usage: https://doco.cd/latest/External-Secrets/1Password-Connect/

[!TIP]
For 1Password Users
For improved performance and to avoid API rate limits in high-volume deployments, consider using 1Password Connect instead of service account authentication (The 1Password provider).

1Password provider: Client-Side Caching

The 1Password provider now supports client-side caching to reduce API calls to the 1Password cloud.

Enable and configure caching with the following environment variables:

Key Value Default
SECRET_PROVIDER_CACHE_ENABLED Enables in-memory caching for resolved secrets false
SECRET_PROVIDER_CACHE_TTL Cache TTL for resolved secrets as a Go duration string (for example: 30s, 5m, 1h) 5m
SECRET_PROVIDER_CACHE_MAX_SIZE Maximum number of secrets stored in cache before least-recently-used entries are evicted 100

[!WARNING]
If the cache TTL is too long, secrets may become outdated.

✨ Features
🌟 Improvements
📦 Dependencies
📚 Miscellaneous

Full Changelog: kimdre/doco-cd@v0.83.0...v0.84.0

v0.83.0

Compare Source

What's Changed

🌟 Improvements
🐛 Bug Fixes
📦 Dependencies

Full Changelog: kimdre/doco-cd@v0.82.2...v0.83.0

v0.82.2

Compare Source

In the Media

For german users: Doco-CD was featured by Heise in a heise+ article, which will also be printed in the next issue of c't magazine, c't 10/2026.

What's Changed

When force_image_pull is set to true, the check for a changed image digest against the container image registry now returns correct results for mutable tags like latest.

🌟 Improvements
📦 Dependencies
📚 Miscellaneous

Full Changelog: kimdre/doco-cd@v0.82.1...v0.82.2


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot requested a review from strayer as a code owner April 25, 2026 09:57
@renovate renovate Bot force-pushed the renovate/kimdre-doco-cd-0.x branch from 64416bb to 1c50dc4 Compare May 23, 2026 11:30
@renovate renovate Bot changed the title Update dependency kimdre/doco-cd to v0.82.2 Update dependency kimdre/doco-cd to v0.88.0 May 23, 2026
@renovate
Copy link
Copy Markdown
Contributor Author

renovate Bot commented May 23, 2026

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@strayer strayer merged commit 84d4b6d into main May 23, 2026
@strayer strayer deleted the renovate/kimdre-doco-cd-0.x branch May 23, 2026 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant