Skip to main content

ddb - Erase environment differences, make developers happy !

Project description

ddb

PyPI PyPI - Python Version PyPI - License Build Status Code coverage

Erase environment differences, make developers happy !

ddb automates application configuration so differences between development, staging and production environment can be erased. It provides features to generate, activate and adjust configuration files based on a single overridable and extendable configuration, while enhancing the developer experience and reducing manual operations.

Primarly designed for docker-compose and docker-devbox, this tool makes the developer forget about the docker hard stuff by providing commands right into it's PATH, so it's experience looks like everything is native and locally installed.

Thanks to a pluggable, event based and easy to extend architecture, it can bring powerful configuration automation to any technical context.

Install

ddb is supported on Linux and Windows. MacOS is still unsupported, but it should come soon.

You can download binary releases on github, or install on Python > 3.5 with pip.

pip install docker-devbox-ddb

Docs

N.B : Docs are under construction, more will be added over time

History

1.0.0-beta6 (2020-07-03)

  • Windows Shell: Fix alias generation
  • Jsonnet: Add redirect_to_https to ddb.VirtualHost in order to redirect http requests to https
  • Certs/Traefik: Remove previously generated certs when certs:generate event is removed from docker-compose.yml configuration

1.0.0-beta5 (2020-06-26)

  • Fixuid: Add Dockerfile generation when fixuid.yml file is created or deleted
  • Docker: Add docker.reverse_proxy.certresolver to setup traefik certresolver globally
  • Docker: Set docker.restart_policy default value to unless-stopped if core.env.current is different of dev
  • Jsonnet: Add optional router_rule parameter to ddb.VirtualHost function in order to override the default Host(hostname). For traefik, available values in the official documentation
  • Templates: Keep the file that match template target name when it has been modified since latest rendering (#39)

1.0.0-beta4 (2020-06-25)

  • Remove existing file or directory when generating a new file (#31)
  • Docker: Fix missing COMPOSE_PROJECT_NAME and COMPOSE_NETWORK_NAME environment variables on ddb activate
  • Jsonnet: Fix a bug when multiple Virtualhost are defined on the same docker-compose service

1.0.0-beta3 (2020-06-23)

  • Shell: Add aliases management

1.0.0-beta2 (2020-06-08)

  • Docker and Permissions features are now plugged on File feature
  • Docker-compose locally mapped files/directories are now created on ddb configure to ensure valid user owning
  • Fix Logging Error in chmod
  • Upgrade chmod-monkey and use it everywhere to improve readability

1.0.0-beta1 (2020-05-12)

  • Add git feature. Currently, there is only one action : git:fix-files-permissions to update permissions for files based on git index. In order to update permissions of a file in git, use command git update-index --chmod=+x foo.sh. It can be disabled by setting git.fix_files_permissions to false in configuration.
  • Add --fail-safe command line argument to stop on first error.
  • Add utils.process module to help running external commands. It makes possible to configure path and additional arguments to any external process invoked by ddb.
  • Default command line argument values can now be customized in configuration using defaults key.
  • Fix and issue with traefik and jsonnet docker-compose when networks is defined in at least one service definition.
  • Add permissions feature to apply chmod on some files.
  • Add windows support for shell integration (cmd.exe only, powershell is still unsupported).

1.0.0-alpha1 (2020-05-10)

  • First release, containing the following features: certs, cookiecutter, copy, core, docker, file, fixuid, gitignore, jinja, jsonnet, run, shell, smartcd, symlinks, traefik, version, ytt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docker-devbox-ddb-1.0.0b6.tar.gz (157.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page