diff --git a/cuddle-templates.json b/cuddle-templates.json index 47a4390..4454c15 100644 --- a/cuddle-templates.json +++ b/cuddle-templates.json @@ -3,6 +3,7 @@ "rust-service", "rust-cli", "rust-lib", - "empty" + "empty", + "deployment" ] -} \ No newline at end of file +} diff --git a/deployment/.config.env b/deployment/.config.env new file mode 100644 index 0000000..36c0e7a --- /dev/null +++ b/deployment/.config.env @@ -0,0 +1,15 @@ +SERVICE_HOST="0.0.0.0:3000" + +AUTH_ENGINE=zitadel +ZITADEL_AUTHORITY_URL=https://%%name%%.front.kjuulh.io +ZITADEL_REDIRECT_URL=https://%%name%%.front.kjuulh.io/auth/authorized +NEF_LOGIN_RETURN_URL=https://%%name%%.front.kjuulh.io/login/return?returnUrl=/home + +SESSION_BACKEND=postgresql + +POSTGRES_DB=%%name%% +POSTGRES_USER=%%name%% + +POSTGRESQL_USERNAME=%%name%% +POSTGRESQL_DATABASE=%%name%% +RUST_LOG=info diff --git a/deployment/.secrets.env b/deployment/.secrets.env new file mode 100644 index 0000000..f117bb4 --- /dev/null +++ b/deployment/.secrets.env @@ -0,0 +1,9 @@ +ZITADEL_CLIENT_ID=242651043865899011@%%name%% +ZITADEL_CLIENT_SECRET=dawvPYMCWWE0yaSEItMp4IcHYCUc76Vd1j4gekU7gGr1SLX1DosuR8krN1812MPa + +SESSION_POSTGRES_CONN=postgres://%%name%%:somenotverysecurepassword@postgres:5432/%%name%% + +POSTGRES_PASSWORD=somenotverysecurepassword +POSTGRESQL_PASSWORD=somenotverysecurepassword + +DATABASE_URL="postgres://%%name%%:somenotverysecurepassword@postgres:5432/%%name%%" diff --git a/deployment/cuddle-template.json b/deployment/cuddle-template.json new file mode 100644 index 0000000..a45fc92 --- /dev/null +++ b/deployment/cuddle-template.json @@ -0,0 +1,10 @@ +{ + "name": "deployment", + "templating": "tera", + "delimiter": "[[]]", + "prompt": { + "name": { + "description": "Project name" + } + } +} diff --git a/deployment/docker-compose.yml b/deployment/docker-compose.yml new file mode 100644 index 0000000..45fc0e7 --- /dev/null +++ b/deployment/docker-compose.yml @@ -0,0 +1,26 @@ +version: '3' +services: + postgres: + image: bitnami/postgresql:16 + env_file: + - .config.env + - .secrets.env + labels: + logging: promtail + restart: always + ports: + - 14123:5432 + volumes: + - /mnt/HC_Volume_100137529/%%name%%/data/postgres/:/bitnami/postgresql + %%name%%: + image: kasperhermansen/%%name%%:main-1701810207 + command: %%name%% serve + depends_on: + - postgres + env_file: + - .config.env + - .secrets.env + labels: + logging: promtail + ports: + - 14000:3000 diff --git a/deployment/renovate.json b/deployment/renovate.json new file mode 100644 index 0000000..7190a60 --- /dev/null +++ b/deployment/renovate.json @@ -0,0 +1,3 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json" +}