Created
February 1, 2022 18:15
-
-
Save gustavohenrique/785495603342b70ba5ef6a38aa124608 to your computer and use it in GitHub Desktop.
Auto documentation makefile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.DEFAULT_GOAL := help # Sets default action to be help | |
define PRINT_HELP_PYSCRIPT # start of Python section | |
import re, sys | |
output = [] | |
# Loop through the lines in this file | |
for line in sys.stdin: | |
# if the line has a command and a comment start with | |
# two pound signs, add it to the output | |
match = re.match(r'^([a-zA-Z_-]+):.*?## (.*)$$', line) | |
if match: | |
target, help = match.groups() | |
output.append("%-10s %s" % (target, help)) | |
# Sort the output in alphanumeric order | |
output.sort() | |
# Print the help result | |
print('\n'.join(output)) | |
endef | |
export PRINT_HELP_PYSCRIPT # End of python section | |
help: | |
@python -c "$$PRINT_HELP_PYSCRIPT" < $(MAKEFILE_LIST) | |
env: ## Activate the virtual environment | |
source venv/bin/activate | |
test: ## Runs the test suite | |
python manage.py test --thing=stuff | |
run: ## Start the dev server | |
python manage.py runserver |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment