Skip to content

Commit

Permalink
update devcontainer config (#2051)
Browse files Browse the repository at this point in the history
* update devcontainer config

* remove chromium from devcontainer build

* avoid rebuilds on restart

* add badge

* print docker logs in case of failure in test workflow
  • Loading branch information
sainak committed Apr 14, 2024
1 parent 5e666ca commit 40e7aa4
Show file tree
Hide file tree
Showing 6 changed files with 57 additions and 26 deletions.
41 changes: 16 additions & 25 deletions .devcontainer/devcontainer.json
@@ -1,33 +1,24 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/docker-existing-docker-compose
// README at: https://github.com/devcontainers/templates/tree/main/src/python
{
"name": "Care",
"dockerComposeFile": [
"../docker-compose.yaml",
"../docker-compose.local.yaml"
],
"name": "Care",
"hostRequirements": {
"cpus": 4
},
"waitFor": "onCreateCommand",
"service": "backend",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
"postCreateCommand": "python manage.py migrate && python manage.py collectstatic --noinput && python manage.py load_dummy_data",
"postAttachCommand": {
"server": "python manage.py runserver"
},
"customizations": {
"vscode": {
"extensions": [
"ms-python.python"
]
}
},
"portsAttributes": {
"8000": {
"label": "Application",
"onAutoForward": "openPreview"
"image": "mcr.microsoft.com/devcontainers/python:1-3.11-bookworm",
"features": {
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
"ghcr.io/devcontainers/features/node:1": {},
"ghcr.io/devcontainers/features/git:1": {},
"ghcr.io/devcontainers/features/github-cli:1": {},
"ghcr.io/devcontainers-contrib/features/pipenv:2": {},
"ghcr.io/devcontainers-contrib/features/direnv:1": {},
"ghcr.io/devcontainers-contrib/features/apt-get-packages:1": {
"packages": "build-essential,libjpeg-dev,zlib1g-dev,libpq-dev,gettext,wget,curl,gnupg",
"preserve_apt_list": false
}
},
"forwardPorts": [9000]
"postCreateCommand": "echo 'eval \"$(direnv hook bash)\"' >> ~/.bashrc && cp .env.example .env",
"postAttachCommand": "make up",
"forwardPorts": [8000, 9000, 4000]
}
20 changes: 20 additions & 0 deletions .env.example
@@ -0,0 +1,20 @@
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_HOST=db
POSTGRES_DB=care
POSTGRES_PORT=5432
DATABASE_URL=postgres://postgres:postgres@localhost:5433/care
REDIS_URL=redis://localhost:6380
CELERY_BROKER_URL=redis://localhost:6380/0

FIDELIUS_URL=http://localhost:8092

DJANGO_DEBUG=False

BUCKET_REGION=ap-south-1
BUCKET_KEY=key
BUCKET_SECRET=secret
BUCKET_ENDPOINT=http://localhost:4566
BUCKET_EXTERNAL_ENDPOINT=http://localhost:4566
FILE_UPLOAD_BUCKET=patient-bucket
FACILITY_S3_BUCKET=facility-bucket
5 changes: 5 additions & 0 deletions .github/dependabot.yml
Expand Up @@ -23,3 +23,8 @@ updates:
directory: "/"
schedule:
interval: "weekly"

- package-ecosystem: "devcontainers"
directory: "/"
schedule:
interval: weekly
10 changes: 9 additions & 1 deletion .github/workflows/test-base.yml
Expand Up @@ -30,7 +30,15 @@ jobs:
files: docker-compose.yaml,docker-compose.local.yaml

- name: Start services
run: docker compose -f docker-compose.yaml -f docker-compose.local.yaml up -d --wait --no-build
run: |
docker compose \
-f docker-compose.yaml \
-f docker-compose.local.yaml \
up -d --wait ||\
docker compose \
-f docker-compose.yaml \
-f docker-compose.local.yaml \
logs
- name: Check migrations
run: make checkmigration
Expand Down
1 change: 1 addition & 0 deletions README.md
Expand Up @@ -14,6 +14,7 @@
[![Cookiecutter Django](https://img.shields.io/badge/built%20with-Cookiecutter%20Django-ff69b4.svg)](https://github.com/pydanny/cookiecutter-django/)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Chat](https://img.shields.io/badge/-Join%20us%20on%20slack-7b1c7d?logo=slack)](https://slack.coronasafe.in/)
[![Open in Dev Containers](https://img.shields.io/static/v1?label=&message=Open%20in%20Dev%20Containers&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/coronasafe/care)

This is the backend for care. an open source platform for managing patients, health workers, and hospitals.

Expand Down
6 changes: 6 additions & 0 deletions docker-compose.yaml
Expand Up @@ -12,12 +12,16 @@ services:
- ./docker/.prebuilt.env
volumes:
- postgres-data:/var/lib/postgresql/data
ports:
- "5433:5432"

redis:
image: redis/redis-stack-server:6.2.6-v10
restart: unless-stopped
volumes:
- redis-data:/data
ports:
- "6380:6379"

localstack:
image: localstack/localstack:latest
Expand All @@ -37,6 +41,8 @@ services:
fidelius:
image: khavinshankar/fidelius:latest
restart: unless-stopped
ports:
- "8092:8090"

volumes:
postgres-data:
Expand Down

0 comments on commit 40e7aa4

Please sign in to comment.