Skip to content

Commit

Permalink
Update justfile for use instead of makefile
Browse files Browse the repository at this point in the history
  • Loading branch information
mrchrisadams committed Nov 4, 2024
1 parent 57cf5c1 commit d08140d
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 20 deletions.
2 changes: 1 addition & 1 deletion .gitpod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ tasks:
python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip uv
uv pip install -r requirements/requirements.linux.generated.txt
uv sync
dotenv run -- ./manage.py migrate
dotenv run -- ./manage.py tailwind install
dotenv run -- ./manage.py tailwind build
Expand Down
34 changes: 15 additions & 19 deletions justfile
Original file line number Diff line number Diff line change
@@ -1,46 +1,42 @@
set dotenv-load := true
# set dotenv-load := true

default:
just --list

# used for tagging our docker images.
TAG := `echo $$APP_RELEASE-$(git log -n 1 --format=%h)`

# Create Python virtual environment if not yet created.
venv:
test -d .venv || python -m venv .venv

## Deploy a new release to production. This will not work in Gitpod, as it relies on staff SSH keys for deployment.
release:
dotenv -f env.prod run -- sentry-cli releases new -p admin-portal `sentry-cli releases propose-version`
dotenv -f env.prod run -- sentry-cli releases set-commits --auto `sentry-cli releases propose-version`
dotenv -f env.prod run -- ansible-playbook ansible/deploy.yml -i ansible/inventories/prod.yml
dotenv -f env.prod run -- sentry-cli releases finalize `sentry-cli releases propose-version`
uv run dotenv -f env.prod run -- sentry-cli releases new -p admin-portal `sentry-cli releases propose-version`
uv run dotenv -f env.prod run -- sentry-cli releases set-commits --auto `sentry-cli releases propose-version`
uv run dotenv -f env.prod run -- ansible-playbook ansible/deploy.yml -i ansible/inventories/prod.yml
uv run dotenv -f env.prod run -- sentry-cli releases finalize `sentry-cli releases propose-version`

# Create a super user for local development using the basic django `createsuperuser` command.
dev_createsuperuser:
dotenv run -- python ./manage.py createsuperuser --username admin --email [email protected] --noinput
dotenv run -- python ./manage.py set_fake_passwords
uv run dotenv run -- python ./manage.py createsuperuser --username admin --email [email protected] --noinput
uv run dotenv run -- python ./manage.py set_fake_passwords

# Run a django development server that reloads when codes is changed.
dev_runserver:
dotenv run -- python manage.py runserver
uv run dotenv run -- python manage.py runserver

# Start the tailwind watcher - this will re-run tailwind to generate css as code is changed.
dev_tailwind_start:
dotenv run -- python manage.py tailwind start
uv run dotenv run -- python manage.py tailwind start

# Install the front end dependencies.
dev_tailwind_install:
dotenv run -- python manage.py tailwind install
uv run dotenv run -- python manage.py tailwind install

# Run the django tests on a loop with with pytest, and re-running them when code is changed.
dev_test:
uv dotenv run -- pytest -s --create-db --looponfail --ds=greenweb.settings.testing
uv run uv dotenv run -- pytest -s --create-db --looponfail --ds=greenweb.settings.testing

# Run the django tests on a loop with pytest, but only ones marked with `only`.
dev_test_only:
dotenv run -- pytest -s --create-db --looponfail -m only -v --ds=greenweb.settings.testing
uv run dotenv run -- pytest -s --create-db --looponfail -m only -v --ds=greenweb.settings.testing

# # Set up the github repo for data analysis against the Green Web Platform database.
data_analysis_repo:
Expand All @@ -62,15 +58,15 @@ test *options:

# As above, but only the tests marked 'only'.
test_only:
dotenv run -- pytest -s --create-db -m only -v --ds=greenweb.settings.testing
uv run dotenv run -- pytest -s --create-db -m only -v --ds=greenweb.settings.testing

# Build the documentation using Sphinx.
docs:
dotenv run -- sphinx-build ./docs _build/
uv run dotenv run -- sphinx-build ./docs _build/

# Build the documentation using Sphinx and keep updating it on every change.
docs_watch:
dotenv run -- sphinx-autobuild ./docs _build/
uv run dotenv run -- sphinx-autobuild ./docs _build/

# Make a docker image for publishing to our registry.
docker_build:
Expand Down

0 comments on commit d08140d

Please sign in to comment.