Releases: savoirfairelinux/cqfd
Releases · savoirfairelinux/cqfd
Release v5.6.0
What's Changed
- New
CQFD_NO_USER_SSH_CONFIG
environment variable to disable forwarding user ssh config independently of the/etc/ssh
directory. - Revert to bash as the default shell.
- Forward .gitconfig to container, with environment variable
CQFD_NO_USER_GIT_CONFIG
to disable this behavior - Add a
--verbose
option - Improve Bash completions compatibility with zsh.
Full Changelog: v5.5.0...v5.6.0
Release v5.5.0
- Add the
cqfd shell
command. - Custom Docker images can now be used using
custom_img_name
. - Bring Bash completions back up to date.
- Misc. fixes.
Release v5.4.0
Version 5.4.0 (2023-06-09)
- Changes to the
Dockerfile
since the lastinit
are now detected, and will
raise an error. - Add the
-c
option to cqfd run/release, to pass extra arguments to the
pre-defined command. - The host's
/etc/ssh
directory is now mapped into the container, to pass
ssh
clients running in the container the same configuration as on the host.
Cqfd historically mapped~/.ssh
into the container for similar reasons. Note
this feature can be disabled using theCQFD_NO_SSH_CONFIG
environment
variable. - The
flavors=
parameter is not required anymore, as extra flavors in the
config file are automatically detected. - When in a project sub-directory, try to locate the
.cqfd
context in parent
directories automatically.
Release v5.3.0
- Add the
docker_run_args
.cqfdrc option. - Misc. documentation fixes.
Release v5.2.1
This is a bugfix release.
- Fixed an error when launching
cqfd run
from a working directory with spaces in its hierarchy. - Misc. fixes to the integrated test suite.
v5.2.0
- The
-d
option was added to specify an alternate cqfd directory. - The
-C
option was added to change the working directory. - Date strings now use POSIX options, eg. for running on macOS.
- Containers are now named
cqfd_%user_%company_%project
instead ofcqfd_%company_%project
. This prevents collisions with Docker when several users are using it on the same machine. - Added a
tar_options
config file option to pass extra options to the tar command. - Add support for CQFD_EXTRA_BUILD_ARGS to pass args and options to the image build process.
v5.1.0
- The launcher script in the container now gives extra infos in case of failure.
sudo(8)
is now used (if available) to run the commands as the unprivileged user in the container instead ofsu(1)
.- The
project.build_context
key allows changing the docker-build context directory. - Options
-v
and--version
now behave appropriately
Thanks to all the contributors !
Bugfix release
- Fix wrong user homedir in container when host user isn't in /home
- Terminate cqfd in case a legacy CQFD_EXTRA_* variable is used.
Goodbye, builder user
- Use semantic versioning
- CQFD_EXTRA_RUN_ARGS replaces CQFD_EXTRA_VOLUMES,ENV,HOSTS,PORTS.
- The container's user and work directory are now the same as the
invocating user. This is useful to prevent cases where the build
process generates symlinks or paths in files that don't match the
developer's environment. - New cqfd [-v|--version] to print the version
On the road to versatility
This is a significant release where cqfd was used in a bunch of different environments.
The major changes in version 4 are highlighted below:
- Files in an archive are only moved at its root if tar_transform is set to yes
- Added support for .tar.gz and .zip release archives
- Default archive filename is now named after the project's configuration
- Removed the
[release]
config section - Allow templating the release filename
- Preserve container environment into the build user's shell
- Better documentation
- A lot of test coverage
- Lots of bugfixes
And here's the shortlog for reference:
Alexandre Lision (1):
add a Dockerfile for android projects as a sample
Ash Charles (2):
Add notes on SSH handling to readme
Clarify the container execution environment
Damien Riegel (1):
cqfd: handle case where ssh-agent socket is not called "ssh"
Gaël PORTAY (27):
cqfd: add shell error flag
cqfd: print an error if ini-file is invalid
cqfd: allow multiline for files
jtest.inc: typo
cqfd: release: update error message
cqfd: use 0 and 1 value
cqfd: check .cqfdrc existence at parse
cqfd: fix miss-indented cat
cqfd: fix usage missing elements
cqfd: suffix docker image with $distro
cqfd: prefix docker image with cqfd
cqfd: simplify parsing for multi-line
cqfd: add quiet mode option -q
tests: make tests less verbose
tests: fix uncleaned temporary directory
tests: use cp/mv -f option
tests: do not escape brackets in replacement
tests: remove duplicate release command
tests: fix traces
tests: make them more uniform
cqfd: allow init to use flavor option
cqfd: fix non unique user-id
Makefile: add PREFIX variable to install rule
Add bash-completion script
README.md: fix minor formatting nitpick
README: add note about the flavors argument
Merge pull request #29 from joufella/remove_locales
Jérôme Oufella (42):
cqfd: preserve environment in user shell
cqfd: move to a standalone design
cqfd: refactor config handling
cqfd: add cqfd test suite
cqfd: convert README to reStructuredText
cqfd: add GPLv3 license requirements
convert README to markdown
Merge "makefile: fix wrong install command"
README: move testing documentation down
cqfd: add support for release filename templating
cqfd: remove useless warning at run time
cqfd: prefix error messages
doc: change header formatting style
doc: refactor and simplify documentation
doc: refine documentation style
cqfd: template project org and name
cqfd: cleanup flavor handling
Merge pull request #10 from ashcharles/master
default archive name to org-project.tar.xz
Merge pull request #16 from gazoo74/release-files-multiline
Merge pull request #17 from gazoo74/cleanup
allow passing of environment variables
tests: remove extra debug
Merge pull request #25 from gazoo74/fix-tests
Merge pull request #24 from gazoo74/simplify-ini-parsing
Merge pull request #23 from gazoo74/quiet
Merge pull request #26 from gazoo74/groupadd-unique
samples: get rid of locale fixes in Dockerfiles
tests: get rid of locale fixes in Dockerfiles
README.md: clarify example
cqfd: don't use a log driver
Add tty(1) based terminal detection
README: correct default archive name
README: make docker group membership explicit
cqfd: support multiple release archive formats
tests: remove cruft, improve readability
cqfd: rename $make_archive -> $release
cqfd: accept all kind of archive files
tests: separate test cases
tests: add coverage for 'cqfd release' files
tests: jtest: better reporting
update CHANGELOG for v4 release
Mathieu Audat (3):
cqfd: build flavors without run|release
cqfd: do not mandate flavor prefixes
cqfd: have Dockerfile path in config file
Olivier Dugas (6):
Merge pull request #43 from joufella/master
cqfd: rename cfg_parser to parse_ini_config_file
cqfd: use booleans instead of integers
cqfd: fix expected value of tar_transform
cqfd: avoid unrequired test of same condition in docker_run
cqfd: config_load: avoid a for loop in flavor detection
Patrick Keroulas (9):
cqfd: fix argument parsing
cqfd: fix additional cmd arguments parsing
cqfd: normalize variable names
fix .gitreview
add (un)install rules in Makefile
provide a .cqfdrc file sample
add a Dockerfile for nodejs projects as a sample
makefile: fix wrong install command
doc: bring some context
Philipp Skadorov (1):
cqfd: replace boolean && with if-then
Sebastien Bourdelin (1):
cqfd: remove release section requirement
Sevag Hanssian (2):
Support --add-host docker run option
add tests for extra_hosts feature
Tho Nguyen (1):
cleanup container after exit