feat: Adds justfile and install-dependencies script
This commit is contained in:
59
justfile
Normal file
59
justfile
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
build_dir := ".build"
|
||||||
|
ansible_dir := ".ansible"
|
||||||
|
|
||||||
|
[private]
|
||||||
|
run_pandoc dir output_file: build
|
||||||
|
@pandoc --pdf-engine=xelatex \
|
||||||
|
-H {{build_dir}}/"head.tex" \
|
||||||
|
-H {{build_dir}}/"footer.tex" \
|
||||||
|
-o {{dir}}/{{output_file}} \
|
||||||
|
{{build_dir}}/"Report.md" \
|
||||||
|
{{build_dir}}/"Definitions.md"
|
||||||
|
|
||||||
|
[private]
|
||||||
|
run_ansible build *ARGS:
|
||||||
|
@echo "Running ansible with build directory: {{build}}"
|
||||||
|
@cd {{ansible_dir}} && \
|
||||||
|
ansible-playbook playbook.yaml \
|
||||||
|
--extra-vars "build_dir={{build}}" \
|
||||||
|
{{ARGS}}
|
||||||
|
|
||||||
|
alias ansible := build
|
||||||
|
|
||||||
|
# Run the playbook, using the vault example files.
|
||||||
|
[group("build")]
|
||||||
|
ansible-vault-example: (
|
||||||
|
run_ansible build_dir "--extra-vars @group_vars/vault_example/vars.yaml"
|
||||||
|
"--extra-vars @group_vars/vault_example/vault.yaml"
|
||||||
|
"--ask-vault-password"
|
||||||
|
)
|
||||||
|
|
||||||
|
# Run the playbook, which generates files required to build a report.
|
||||||
|
[group("build")]
|
||||||
|
build: (run_ansible justfile_directory()/build_dir)
|
||||||
|
|
||||||
|
# Build & generate an HTML report.
|
||||||
|
[group("generate")]
|
||||||
|
html title="Report.html" output_dir=".build": (
|
||||||
|
run_pandoc output_dir file_stem(title) + ".html"
|
||||||
|
)
|
||||||
|
open {{output_dir}}/{{ prepend(file_stem(title), ".html") }}
|
||||||
|
|
||||||
|
# Build & generate a PDF report.
|
||||||
|
[group("generate")]
|
||||||
|
pdf title="Report.pdf" output_dir="${PWD}": (run_pandoc output_dir file_stem(title) + ".pdf")
|
||||||
|
open {{output_dir}}/{{ prepend(file_stem(title), ".pdf") }} && \
|
||||||
|
@osascript ./scripts/notify.scpt
|
||||||
|
|
||||||
|
# Build & generate a Latex file.
|
||||||
|
[group("generate")]
|
||||||
|
[group("debug")]
|
||||||
|
tex title="Report.tex" output_dir=".build": (run_pandoc output_dir file_stem(title) + ".tex")
|
||||||
|
@echo "Wrote to: " + {{output_dir}}/{{file_stem(title)}} + ".tex"
|
||||||
|
|
||||||
|
# Removes build directory, useful when debugging.
|
||||||
|
[group("utilities")]
|
||||||
|
clean:
|
||||||
|
@rm -rf {{build_dir}}
|
||||||
|
# just encase it gets built in wrong directory.
|
||||||
|
@rm -rf {{ansible_dir}}/{{build_dir}}
|
||||||
8
scripts/install-dependencies.sh
Executable file
8
scripts/install-dependencies.sh
Executable file
@@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/zsh
|
||||||
|
|
||||||
|
brew install pandoc \
|
||||||
|
mactex-no-gui \
|
||||||
|
imagemagick \
|
||||||
|
gettext \
|
||||||
|
ansible \
|
||||||
|
just
|
||||||
Reference in New Issue
Block a user