Skip to content

Commit 11f175a

Browse files
author
Pau Tena
committed
Update staging workflow to support 1Password
1 parent 3e92cbb commit 11f175a

File tree

2 files changed

+23
-30
lines changed

2 files changed

+23
-30
lines changed

.env

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,31 @@
11
# Domain
22
# This would be set to the production domain with an env var on deployment
33
# used by Traefik to transmit traffic and aqcuire TLS certificates
4-
DOMAIN=localhost
4+
DOMAIN="op://Environments/My Full-Stack Template/$ENVIRONMENT/DOMAIN"
55
# To test the local Traefik config
66
# DOMAIN=localhost.tiangolo.com
77

88
# Used by the backend to generate links in emails to the frontend
9-
FRONTEND_HOST=http://localhost:5173
9+
FRONTEND_HOST="op://Environments/My Full-Stack Template/$ENVIRONMENT/FRONTEND_HOST"
1010
# In staging and production, set this env var to the frontend host, e.g.
1111
# FRONTEND_HOST=https://dashboard.example.com
1212

1313
# Environment: local, staging, production
14-
ENVIRONMENT=local
1514

16-
PROJECT_NAME="Full Stack FastAPI Project"
17-
STACK_NAME=full-stack-fastapi-project
15+
PROJECT_NAME='Gym Bro'
16+
STACK_NAME="op://Environments/My Full-Stack Template/$ENVIRONMENT/STACK_NAME"
1817

1918
# Backend
20-
BACKEND_CORS_ORIGINS="http://localhost,http://localhost:5173,https://localhost,https://localhost:5173,http://localhost.tiangolo.com"
21-
SECRET_KEY=changethis
22-
FIRST_SUPERUSER=admin@example.com
23-
FIRST_SUPERUSER_PASSWORD=changethis
19+
BACKEND_CORS_ORIGINS="op://Environments/My Full-Stack Template/$ENVIRONMENT/BACKEND_CORS_ORIGINS"
20+
SECRET_KEY="op://Environments/My Full-Stack Template/SECRET_KEY"
21+
FIRST_SUPERUSER=me@pautena.com
22+
FIRST_SUPERUSER_PASSWORD="op://Environments/My Full-Stack Template/FIRST_SUPERUSER_PASSWORD"
2423

2524
# Emails
26-
SMTP_HOST=
27-
SMTP_USER=
28-
SMTP_PASSWORD=
29-
EMAILS_FROM_EMAIL=info@example.com
25+
SMTP_HOST="op://Environments/Synology SMTP Client/SMPT_HOST"
26+
SMTP_USER="op://Environments/Synology SMTP Client/SMTP_USER"
27+
SMTP_PASSWORD="op://Environments/Synology SMTP Client/SMPT_PASSWORD"
28+
EMAILS_FROM_EMAIL=[email protected].com
3029
SMTP_TLS=True
3130
SMTP_SSL=False
3231
SMTP_PORT=587
@@ -36,10 +35,10 @@ POSTGRES_SERVER=localhost
3635
POSTGRES_PORT=5432
3736
POSTGRES_DB=app
3837
POSTGRES_USER=postgres
39-
POSTGRES_PASSWORD=changethis
38+
POSTGRES_PASSWORD="op://Environments/My Full-Stack Template/POSTGRES_PASSWORD"
4039

41-
SENTRY_DSN=
40+
SENTRY_DSN="op://Environments/My Full-Stack Template/SENTRY_DSN"
4241

4342
# Configure these with your own Docker registry images
44-
DOCKER_IMAGE_BACKEND=backend
45-
DOCKER_IMAGE_FRONTEND=frontend
43+
DOCKER_IMAGE_BACKEND="op://Environments/My Full-Stack Template/$ENVIRONMENT/DOCKER_IMAGE_BACKEND"
44+
DOCKER_IMAGE_FRONTEND="op://Environments/My Full-Stack Template/$ENVIRONMENT/DOCKER_IMAGE_FRONTEND"

.github/workflows/deploy-staging.yml

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,13 @@ jobs:
1414
- staging
1515
env:
1616
ENVIRONMENT: staging
17-
DOMAIN: ${{ secrets.DOMAIN_STAGING }}
18-
STACK_NAME: ${{ secrets.STACK_NAME_STAGING }}
19-
SECRET_KEY: ${{ secrets.SECRET_KEY }}
20-
FIRST_SUPERUSER: ${{ secrets.FIRST_SUPERUSER }}
21-
FIRST_SUPERUSER_PASSWORD: ${{ secrets.FIRST_SUPERUSER_PASSWORD }}
22-
SMTP_HOST: ${{ secrets.SMTP_HOST }}
23-
SMTP_USER: ${{ secrets.SMTP_USER }}
24-
SMTP_PASSWORD: ${{ secrets.SMTP_PASSWORD }}
25-
EMAILS_FROM_EMAIL: ${{ secrets.EMAILS_FROM_EMAIL }}
26-
POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }}
27-
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
17+
PROJECT_NAME: my-full-stack-fastapi-template-staging
2818
steps:
2919
- name: Checkout
3020
uses: actions/checkout@v4
31-
- run: docker compose -f docker-compose.yml --project-name ${{ secrets.STACK_NAME_STAGING }} build
32-
- run: docker compose -f docker-compose.yml --project-name ${{ secrets.STACK_NAME_STAGING }} up -d
21+
- name: Load secrets from 1Password
22+
uses: 1password/load-secrets-action/configure@v2
23+
with:
24+
service-account-token: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }}
25+
- run: op run --env-file=".env" -- docker compose -f docker-compose.yml --project-name ${{ env.PROJECT_NAME }} build
26+
- run: op run --env-file=".env" -- docker compose -f docker-compose.yml --project-name ${{ env.PROJECT_NAME }} up -d

0 commit comments

Comments
 (0)