Skip to content
Snippets Groups Projects
contrib.md 1.13 KiB

Contributing guide

  • Work in a Docker container:
docker run \
  `# run an interactive pseudo-TTY` \
  -it \
  `# remove the container once you leave it` \
  --rm \
  `# share the current directory` \
  -v $(pwd):/workspace \
  `# share your SSH configuration` \
  -v $HOME/.ssh:/home/code/.ssh:ro \
  `# share your SSH agent` \
  -v $SSH_AUTH_SOCK:/ssh-agent:ro \
  `# let container know where is mapped the SSH agent` \
  -e SSH_AUTH_SOCK=/ssh-agent \
  `# container image to use` \
  registry.ubicast.net/sys/envsetup \
  `# executable to run` \
  bash
  • Install development requirements:
make requirements-dev
  • Quickly check that your "code" is compliant:
make lint
  • Run Ansible tests:
make test

# show debug logs
DEBUG=1 make test

# do not destroy tests containers
KEEP=1 make test
  • If you add/modify a role, please write relevants tests in molecule/default/tests.

  • Run packer validation:

# validate `packer/base.yml` file
make image-validate build=packer/base.yml

# validate `packer/custom/my-customer-server.yml` file
make image-validate build=packer/custom/my-customer-server.yml