- pyinstaller: Add a datafile from cookiecutter to the binary bundle of pyInstaller (
c51361d
)
- tests: Replace docker-compose with python-on-whales (#227) (
52c2bce
) - doc: Fix XDebug typo in doc (
25a87f3
) - doc: Links to docker-devbox should go on the correct repo (
2bee946
) - tests: Unset local variable override to allow local tests (
09f7caa
) - ci: Remove deprecated docker-compose dependency (
714da68
) - ci: Use python-semantic-release < 8 for now (
f51174d
) - readme: Replace compose v1 with v2 (
b63fdd0
) - tests: Fixed tests related to the recent ddb run modification (
cf0376f
) - pylint: Disable false-positive pylint warning (
cb460c9
) - doc: Fixed typo in symfony sample (
ffb8f19
)
- remove support for ubuntu 18 (
b2ff624
)
- dependencies: Add python 3.11 support (
e6fcd6a
)
- shell: Replace tempfile with mktemp to remove the deprecation warning (
46329df
)
- file: Add
**/.yarn
tofile.excludes
default value (5ccfb47
) - windows: Improve windows support (
2aded1f
) - docker: Add docker compose v2 support (
d1d522b
) - docker: Set
docker.ip
fallback to127.0.0.1
(5d0afb8
)
- windows: Fix invalid mapPath in libjsonnet (
74ef98a
) - docker: Sort path mapping in both python and jsonnet (
e9d53e3
)
- file: Improve performance of file walker (
6bf49ea
)
- run: Wrap $@ in single quote to echo command in temporary file (
d5ee3a2
)
- run: Fix DDB_RUN_OPTS handling to quote arguments properly (
e91a168
)
- core: Use tag instead of version to build release url (
446b140
) - copy: Fix copy when used in a subdirectory (
602086b
)
- fixuid: Enhance verbosity and user messages (
3668379
)
- Drop ubuntu 16.04 support for binary (
7335a5c
) - fixuid: Use docker cli instead of docker-py (
cba2394
)
- fixuid: Use fixuid v0.5.1 (
0fd82e1
)
- jsonnet: Generate compose network name without underscore (
4b6c139
)
- jsonnet: Replace dots with dash in traefik labels (#205) (
9a79b7b
) - jsonnet: Remove duplicate _default in COMPOSE_NETWORK_NAME env var (
0c2113a
)
- binaries: Add DDB_RUN_OPTS note (
5425efe
)
- binary: Binary is now registered again when condition is changed (
fd5230b
)
- binaries: Typo in docker compose command (
88ab7b0
)
- faq: Add ddb-linux-older-glic edition note (
895742b
)
- core: Add release_asset_name to customize asset to download on update (
e2b3324
)
- Update FAQ (
4cea4bf
) - Remove defaults, add Djp packages and Binaries pages (
0ebc892
) - jsonnet: Add missing jsonnet.docker.compose configuration properties (
5941a46
)
- config: Add more capabilities to config command (
89d20d6
)
- jsonnet: Remove client_port=9000 for xdebug3 configuration (
d8ca959
) - jsonnet: Set log_level=0 to xdebug3 configuration (
689efb0
)
- run: Add
DDB_RUN_OPTS
support to add docker-compose options on ddb run (b1aca49
)
- core: Disable core.check_updates after running self-update command (
6274317
)
- alpine: Add Alpine Linux support (
bcf04b5
)
- package: Fix binary package error
NameError: name 'help' is not defined
(b066513
) - package: Fix binary package error
NameError: name 'help' is not defined
(47bf72c
)
- core: Use new binary names for self-update (
56fc5ab
)
- jsonnet: Add mount options to mount named volumes inside project directory (
401c9bd
) - config: Add
core.check_updates
configuration (3a779a4
)
- traefik: Stop using deprecated properties internally (
d3f06d8
) - selfupdate: Display detected binary path on permission error (
c0cfe91
)
- fixuid: Fix automatic fixuid configuration for some Dockerfile (
f504416
) - binary: Use COMPOSE_IGNORE_ORPHANS=1 in global binary shim (
9d4a955
) - binary: Fix orphan containers when using global binaries (#195) (
40b3cae
)
- jsonnet: Add missing ddb.feature.jsonnet.docker package in exe version (
5253802
)
- jsonnet: Add port conflict solver as jsonnet postprocessor (
0c7bd16
)
- jsonnet: Add configurable default value for Binary global flag (
ed444eb
) - gitignore: Avoid addition of global binaries in .gitignore (
15f95f4
)
- config: Enhance config command output and add options (#189) (
02dbcb5
) - binary: Add global and entrypoint options to binaries (#185) (
61f973c
)
- file: Add .idea directory to default excludes (
24d3df7
) - jsonnet: Add support for volume starting with an environment variable (
e4f2bcb
) - gitignore: Check if file is gitignore before trying to remove it (#190) (
4cbcdec
)
- jinja: Fix extra EOL issue when deprecated property are used (
13c2d0e
)
- gitignore: Sort gitignore entries to avoid conflicts (
071fedd
)
- cookiecutter: Add .patch files support in cookiecutter feature (
3b20434
) - djp: Add djp packages support through cookiecutter feature (
15938ec
) - jsonnet: Enhance
ddb.docker.libjsonnet
to support future djp packages (a48c5a9
) - core: Add
core.domain.value
read only property (ab4001e
) - jsonnet: Add
ddb.env.current
andddb.env.available
(edaef0a
)
- autofix: Make
--autofix
less intrusive and fix variables only (70389db
) - jinja: Autofix now fix templates in code blocks only (
8575f79
) - inetum: We are Inetum, mais Orléans quand même :) (
f2e85ea
) - inetum: We are Inetum, mais Orléans quand même :) (
5281071
)
- index: Update badges (
39cd66b
)
- jinja: Add configuration options to jinja Environment (#181) (
092d9d0
) - scope: Refactor configuration schemas with autofix (#164 #179) (
10b7a72
)
- config: Fix deprecations warnings and backward compatibility (
6ab20c2
)
- usage: Update usage output in docs (
4ebb752
)
- binary options: Fix an issue introduced by #141 (
f404353
)
- configure: Ensure project configuration file is available before configure (#170) (
bd1c814
) - file: Add
target/
anddist/
directories to default excludes (9b7b467
) - binaries: Allow many binaries to be registered for the same name (#141) (
b3d8cd8
) - permission: Copy permission from template file to target (#147) (
8595c9f
) - devbox: Prepare next release of docker-devbox with retro-compatibility (
fdfbc24
) - jsonnet: Add Expose function in ddb.docker.libjsonnet (
dffcab1
)
- shell: Fix drive case for default Windows
docker.path_mapping
(#159) (a3e2c09
) - shell: Use
_
instead of-
to sanitize environment variable name (#160) (f9e11a8
) - shell: Add support for relative paths in shell.path.directory (#168) (
6f4f938
) - main: Clear cache when an unexpected error occurs (#169) (
8c0940a
) - binary options: Fix an issue introduced by #141 and force lf (
76c7bf2
) - shell: Move PWD environment exclude to configuration (
848ec99
) - traefik: Check domain is not empty when rule is empty (
33bd166
)
- style: Enhance docs style for all configuration properties and examples (
9c396d5
) - jsonnet: Add session parameter to XDebug documentation (
5febad8
)
- bash: Exclude PWD environment variable from backup/restore (#142) (
e8ee977
) - update: Fix can only concatenate str (not "list") to str (#143) (
0348407
)
- dependencies: Remove docker-compose dependency (#140) (
ac12c8a
) - core: Fix self-update command error on file replace (#138) (
97e4f81
) - changelog: Fix changelog (
9507778
) - fixuid: Remove print scrap (
dad030f
)
- fixuid: Add Dockerfile comments to disable or customize fixuid automic configuration (
e855efc
)
- file: File scan now yield directories so you can use permission on directories (
eb232d8
) - file: Fix recursive=False parameter in FileWalker (
c81fd76
)
- setuptools: Update python versions in classifiers (
4012cbf
)
- core: Fix self-update command (
843cf67
)
- core: Add
core.required_version
parameter to enforce project ddb version requirement (#75) (bbf32e6
) - main: Add main:start event (
8764d01
) - self-update: Add self-update command to update binary from github (#131) (
0171f37
) - Add Python 3.9 support and drop Python 3.5 support (
83e97e9
)
- self-update: Add docs for the new self-update command (
86b5ef8
) - contributing: We are now using github actions and semantic release (
b4f1127
)
- docker: Add https option to reverse-proxy features (libjsonnet and configuration) (
c2c1fad
) - docker: Add support for named user and group (
62ab647
) - configuration: Add insert/insert_if_missing merge strategies. (
00d62b9
) - configuration: Add core.configuration.extra to include additional configuration files (
b7d30de
) - xdebug: Add more parameters to XDebug jsonnet function (
cf5dc74
) - JSonnet: Add support for XDebug 3 (
6bc337c
)
- docker: Add tests and fix issues with named user and group (
b88470c
) - shell: Slufigy environment variable names (
0513038
) - copy: Correction du NoneType error (
4b798bd
) - docs: Fix typo for excludes configuration properties (
d0cda14
)
- changelog: Reformat changelog (
7440081
)
- Jsonnet: Add "JoinObjectArray" method.
- Jsonnet: Add
path_prefix
option for a VirtualHost. - Docker: Add
docker.reverse_proxy.redirect_to_path_prefix
which force redirection topath_prefix
if defined on a VirtualHost. - Traefik: Add
path_prefix
option for a service. - Traefik: Add
redirect_to_path_prefix
option for a service which force redirection topath_prefix
if defined on the service. - Docker: Add configurations for
docker-compose.yml
generation (file_version
,service_init
andservice_context_root
).
- Docker: Add
docker.build_image_tag_from
and deprecatesdocker.build_image_tag_from_version
. - Watch: Fix file exclusion issues when an ancestor directory is excluded
- Gitignore: add first slash to set full relative path of file added to the gitignore
- Docker Binary: Check if the container is up if user run "ddb run " on a command flagged "exe". If it is down, it will be launch.
- Jsonnet: Add ServiceName function available globally.
- Core: Avoid
--eject
to delete files outside of project directory.
- Core: Add
--eject
option toconfigure
command. This option can be used to convert the project to a static version and detach it from ddb. - Info: Add
traefik.extra_services
toddb info
command output. - Gitignore: Gitignore feature is now disabled by default on non-dev environment.
- Build: Fix
ModuleNotFoundError: No module named 'compose'
error in binaries built of ddb.
- Docker: Add
--rm
flag to docker-compose run command in binaries. - Version: Fix
version.branch
value when using a detached repository and head refs many branches. If no branch is reported inrefs/head
, it will userefs/remote/origin
to get branche name. - Config: Lists merge strategy is now defined as
override
by default. - Config: Add support for
merge
/value
inside configuration to control merge behavior between configuration files. - Config: Add support for
ddb.<env>.yml
configuration file based oncore.env.current
value.
- Traefik: Use Jinja template for
ssl_config_template
parameter (Jinja context match the ddb.yml configuration). - Traefik: Add
extra_services
intraefik
feature. Extra service allow to configure a service running outside of the docker stack inside traefik, so it's included in the docker network and still benefits of docker-devbox features (domain name, SSL certificates, ...). - Version: Make detached repo report the effective branch instead of
HEAD
.
- Config: Fix issues with custom config parameters.
- Shell: Raise an error when activate/deactivate was already called.
- Config: Fix overriding of default values with
DDB_OVERRIDE_*
environment variables. - Core: Use
toilal/pyinstaller-linux
andtoilal/pyinstaller-windows
docker images to build binaries.
- Copy: Add
file:generated
events on copy to add copied files in.gitignore
. - Copy: Run copy feature on each
ddb configure
command instead of a single time. - Shell: Use
.
instead ofsource
to make/bin/sh
work properly. - Shell: Add
check-activated
command and avoid issues when activating the project many times.
- Jsonnet: Fix
duplicate field name
error when sharing a named volume on many docker-compose services. - Certs: Add creation of
.signer.crt
to help automation of signer TLS Certificate configuration in the project.
- Shell: Fix binary shims when
-h
/--help
is given as argument. - Core: Add the
info
command which output compacted information about docker containers such as environment variables, virtual host, exposed ports and binaries. - Jsonnet: Fix
cache_from
value for docker services to match theimage
one - Fixuid: Enhance fixuid configuration when image has no entrypoint defined.
- Config: Add support for
ddb.yml
configuration watch. If a project configuration file changes, configuration is reloaded and command is runned again to update all generated files. It currently doesn't watch configuration files from ~/.docker-devbox nor ~/.docker-devbox/ddb directories as it's based onfile
feature events.
- Certs: Fix inversion between certificate and key for
certs:generated
andcerts:available
events.
- Core: Fix
[Errno 11] Resource temporarily unavailable
error when running more than one instance of ddb. - Aliases: Fix global aliases for projects lying inside docker devbox home directory (traefik, portainer, cfssl).
- Docker: Limit
port_prefix
to655
instead of1000
to avoid invalid port specification error.
- Binaries: Fix docker binary workdir value
- Shell: Add
global_aliases
configuration option to generate aliases inside global docker devbox home.
- File: Emit delete events before found events.
- Core: Set working directory to project home.
- Fixuid: Upgrade fixuid to v0.5.
- Binary: Add exe option to use docker-compose exec instead of run
- Gitignore: Add enforce option to force addition of file to gitignore
- Certs: Add
certs.cfssl.append_ca_certificate
andcerts.cfssl.verify_checksum
options support - Core: Add release check on --version
- Core: Fix crash when github quota has exceeded on release check
- Add MacOS support (no binary package available though)
- Shell: Add zsh support
- Jsonnet: Fix an issue when reverse proxy is not defined to traefik.
- Docs: Add way more docs
- 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
- 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 tounless-stopped
ifcore.env.current
is different ofdev
- Jsonnet: Add optional
router_rule
parameter toddb.VirtualHost
function in order to override the defaultHost(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)
- Remove existing file or directory when generating a new file (#31)
- Docker: Fix missing
COMPOSE_PROJECT_NAME
andCOMPOSE_NETWORK_NAME
environment variables on ddb activate - Jsonnet: Fix a bug when multiple Virtualhost are defined on the same docker-compose service
- Shell: Add aliases management
- 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
- 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 commandgit update-index --chmod=+x foo.sh
. It can be disabled by settinggit.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).
- First release, containing the following features:
certs
,cookiecutter
,copy
,core
,docker
,file
,fixuid
,gitignore
,jinja
,jsonnet
,run
,shell
,smartcd
,symlinks
,traefik
,version
,ytt