Creating a BigConfig project
Requirements
Section titled “Requirements”BigConfig requires Clojure, Babashka, and deps-new.
brew install clojure/tools/clojurebrew install borkdude/brew/babashkaclojure -Ttools install-latest :lib io.github.seancorfield/deps-new :as new
asdf plugin add java https://github.com/halcyon/asdf-java.gitasdf install java latest:temurin-21asdf set --home java latest:temurin-21asdf plugin add clojure https://github.com/asdf-community/asdf-clojure.gitasdf install clojure latestasdf set --home clojure latestasdf plugin add babashka https://github.com/pitch-io/asdf-babashka.gitasdf install babashka latestasdf set --home babashka latestclojure -Ttools install-latest :lib io.github.seancorfield/deps-new :as new
Creating a BigConfig project
Section titled “Creating a BigConfig project”The fastest way to start with BigConfig is to use the official template.
clojure -Sdeps '{:deps {io.github.amiorin/big-config {:git/sha "81aec53608e63a97564cd5e7f05cd400fdd5bac7"}}}' \ -Tnew create \ :template amiorin/big-config \ :name my-org/my-artifact \ :target-dir my-project \ :aws-account-id-dev 111111111111 \ :aws-account-id-prod 222222222222 \ :aws-profile default \ :aws-region eu-west-1 \ :overwrite :delete \ && cd my-project && bb smoke-test
Directoryenv/ ignore for now
- …
Directoryresources
Directorymy_org
Directorymy_artifact
Directoryalpha example of OpenTofu module
- main.tf
Directorybuild files copied by deps-new in the target root
- projectile for emacs users
- config.edn project config files parsed with aero
Directoryfiles additional file for the alpha module
- user_data.sh
Directorygamma example of Ansible module
- ansible.cfg
- inventory.ini
- main.yml
- template.edn main config file for deps-new
Directorysrc/
- …
Directorytest/ ignore for now
- …
- .dir-locals.el for emacs users
- .envrc for direnv users
- .gitignore
- .projectile for emacs users
- bb.edn babashka config file
- CHANGELOG.md
- deps.edn clojure config file
- LICENSE
- README.md
cd my-project
# List all tasksbb tasks
# How to create workflow in the clibb show-help
# List the files of module alpha profile prodbb build exec -- alpha prod ls -l
# List the files of module beta profile prodbb build exec -- beta prod ls -l
# List the files of module gamma profile prodbb build exec -- gamma prod ls -l
# Run the tests, you need to have at least 2 commitsbb test:bb