Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
d692e35
wip
chrsamp Jul 23, 2025
7303821
wip
chrsamp Jul 26, 2025
5008a32
Upgrade to Python 3.11
chrsamp Mar 25, 2026
3acebb4
Replace eventlet with gevent
chrsamp Mar 25, 2026
c489165
Update snowplow-tracker and remove unused dependencies
chrsamp Mar 25, 2026
fa3abd2
Remove servicenow feedback
chrsamp Mar 25, 2026
2385479
Update python-dotenv to version 1.2.2
chrsamp Mar 25, 2026
bb774bd
Remove dependency on Flask-Script
chrsamp Mar 25, 2026
93a6d97
Remove Flask-Moment
chrsamp Mar 25, 2026
022912f
Flask 2 upgrade
chrsamp Mar 25, 2026
fc87777
Refactor for SQLAlchemy 2.x
chrsamp Mar 25, 2026
f7eca86
Update api dependencies
chrsamp Mar 25, 2026
5cd29e1
Upgrade to Flask 3
chrsamp Mar 25, 2026
d945fbd
Migrate to uv + update dependencies
chrsamp Mar 26, 2026
77c4337
Fix query error when finishing citizen service
chrsamp Mar 26, 2026
711b78f
Update vscode debug
chrsamp Mar 26, 2026
cfd57bb
Convert Newman tests to pytest
chrsamp Mar 26, 2026
d0c47ac
Upgrade marshmallow to 4.x
chrsamp Mar 26, 2026
97de20e
Update remaining api dependencies
chrsamp Mar 26, 2026
3d910a3
Update to 3.14
chrsamp Mar 27, 2026
9bef167
Update notifications-api deps, add uv workflow
chrsamp Mar 27, 2026
a226bdd
Add log email/sms provider
chrsamp Mar 27, 2026
b5d0106
Update README
chrsamp Mar 27, 2026
09aa123
Fix alembic migrations
chrsamp Mar 28, 2026
5a7a596
Fix utc warning after upgrade
chrsamp Mar 28, 2026
8302071
Update Keycloak config for local dev
chrsamp Mar 30, 2026
ecb570c
Update requirements.txt
chrsamp Mar 31, 2026
a1dc303
Add Dockerfile
chrsamp Mar 31, 2026
5289de1
Fix README.md
chrsamp Mar 31, 2026
6f941ac
Add notification API client to local realm
chrsamp Mar 31, 2026
13f933c
Refactor and improve test coverage
chrsamp Mar 31, 2026
2010181
Update Dockerfile
chrsamp Apr 1, 2026
5bae247
Fix DB URI encoding for special-character passwords
chrsamp Apr 1, 2026
506b7b9
Migrate python-jose to cryptography backend
chrsamp Apr 1, 2026
af0548b
Fix unnecessary alembic migration
chrsamp Apr 7, 2026
01b3f6a
Fix Snowplow context handling with raiseloaded citizen
chrsamp Apr 9, 2026
b25c5f9
Fix exam schema validation
chrsamp Apr 17, 2026
97aadf3
Add second local appointment user
chrsamp Apr 23, 2026
65e0b35
Fix load testing script
chrsamp Apr 23, 2026
9baeebf
Fix newman tests
chrsamp Apr 24, 2026
cd52303
Add notification checks for appointments
chrsamp Apr 24, 2026
b7a20db
Fix load test user to office mismatch
chrsamp Apr 24, 2026
8a98f0c
Fix blank username with invalid token
chrsamp Apr 27, 2026
68b4ede
Update CODEOWNERS
chrsamp Apr 27, 2026
64e2b9a
Update devcontainer config
chrsamp Apr 27, 2026
a1b6767
Add OIDC config error handling for notifications-api
chrsamp Apr 28, 2026
47ae9e7
dev-44: scaffold React + TypeScript boilerplate with ESLint, Prettier…
veenupunyani May 13, 2026
66a38a4
dev-44: add license-check script enforcing MIT/Apache-2.0 for product…
veenupunyani May 13, 2026
ad73088
dev-44: strip all Vite demo code and assets — minimal shell only
veenupunyani May 13, 2026
4b13856
dev-44: add intial message to homepage
veenupunyani May 13, 2026
9562099
dev-44: update package-lock.json
veenupunyani May 13, 2026
6594f95
dev-44: subtask 2 - organize app structure and integrate BC Gov desig…
veenupunyani May 13, 2026
63b8ce5
dev-44: use local BC Gov logo and favicon assets from appointment-fro…
veenupunyani May 13, 2026
97ad510
dev-44: pivot boilerplate to SSR with vendor-neutral node server
veenupunyani May 13, 2026
de55941
dev-44: fix header logo loading using public assets and SSR middleware
veenupunyani May 13, 2026
69fb26d
dev-44: subtask 3 - add runtime config loader, API client, and bookin…
veenupunyani May 14, 2026
879c1e5
dev-44: subtask 4 - add automated tests and GitHub Actions CI for app…
veenupunyani May 15, 2026
e21c516
dev-44: refine local startup flow and docs for appointment-booking
veenupunyani May 15, 2026
867c044
Add Dockerfile for appointment-booking SSR app
veenupunyani May 15, 2026
6aa79c5
Add npm install command to README
veenupunyani May 19, 2026
98e5ec7
Simplify setup instructions in README
veenupunyani May 19, 2026
6f177ae
Cleanup appointment-booking setup & docs
veenupunyani May 19, 2026
6c4c85d
CI: install npm@11 before installing deps
veenupunyani May 19, 2026
c43f64c
Update appointment-booking-ci.yaml
veenupunyani May 19, 2026
452f0cf
Merge pull request #1062 from bcgov/dev-44-develop-boilerplate-new-ap…
chrsamp May 20, 2026
24d036d
Switch appointment-booking to Vite client app
veenupunyani May 27, 2026
523df3b
Use nginx to serve appointment-booking
veenupunyani May 28, 2026
ce05eee
Switch appointment-booking to Vite client app
veenupunyani May 27, 2026
d0e2d3c
Use nginx to serve appointment-booking
veenupunyani May 28, 2026
ae78c43
Rename runtime-config to appointment-configuration
veenupunyani Jun 2, 2026
1722f0a
Merge branch 'develop' into dev-44-develop-boilerplate-new-appointmen…
veenupunyani Jun 2, 2026
c1b8713
Use configuration.json for runtime config
veenupunyani Jun 2, 2026
287cd1f
Merge branch 'dev-44-develop-boilerplate-new-appointment-booking-app'…
veenupunyani Jun 2, 2026
8b9ac3a
Update App.tsx
veenupunyani Jun 2, 2026
08b3f22
Merge pull request #1064 from bcgov/dev-44-develop-boilerplate-new-ap…
josekudiyirippil Jun 2, 2026
6aa48e6
Update pull-request-appointment.yml
josekudiyirippil Jun 8, 2026
5719172
Merge pull request #1066 from bcgov/josekudiyirippil-patch-1
josekudiyirippil Jun 8, 2026
7af678b
Update reusable-wait-for-rollouts.yaml
josekudiyirippil Jun 8, 2026
3bd0e24
Merge pull request #1068 from bcgov/josekudiyirippil-patch-2
josekudiyirippil Jun 8, 2026
9e7df2d
Update pull-request-appointment.yml
josekudiyirippil Jun 8, 2026
147f201
Merge pull request #1069 from bcgov/josekudiyirippil-patch-3
josekudiyirippil Jun 8, 2026
79f6ec4
Update reusable-tag-image.yaml
josekudiyirippil Jun 8, 2026
7cec8ff
Merge pull request #1070 from bcgov/josekudiyirippil-patch-4
josekudiyirippil Jun 8, 2026
ba6b4ad
Update reusable-wait-for-rollouts.yaml
josekudiyirippil Jun 8, 2026
8710b96
Merge pull request #1071 from bcgov/josekudiyirippil-patch-5
josekudiyirippil Jun 8, 2026
cd8eeb4
Update reusable-wait-for-rollouts.yaml
josekudiyirippil Jun 8, 2026
3641afd
Merge pull request #1072 from bcgov/josekudiyirippil-patch-6
josekudiyirippil Jun 8, 2026
fa48d68
Update pull-request-deploy-frontend.yaml
josekudiyirippil Jun 8, 2026
13be23c
Merge pull request #1073 from bcgov/josekudiyirippil-patch-7
josekudiyirippil Jun 8, 2026
22258c8
Create pull-request-api.yaml
josekudiyirippil Jun 8, 2026
a58270c
Merge pull request #1074 from bcgov/josekudiyirippil-patch-8
josekudiyirippil Jun 8, 2026
0bcc3c5
Update pull-request-api.yaml
josekudiyirippil Jun 8, 2026
16ecea1
Merge pull request #1075 from bcgov/josekudiyirippil-patch-9
josekudiyirippil Jun 8, 2026
04ae314
Update pull-request-api.yaml
josekudiyirippil Jun 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 11 additions & 12 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
# 3.9-bullseye, 3.8-bullseye, 3.7-bullseye, 3.6-bullseye, 3-buster,
# 3.10-buster, 3.9-buster, 3.8-buster, 3.7-buster, 3.6-buster
#
# Note: this ARG is overwritten by the value in docker-compose.yml.
# Note: this ARG is overwritten by the value in compose.yaml.
ARG VARIANT=3-bullseye
FROM mcr.microsoft.com/vscode/devcontainers/python:${VARIANT}

Expand All @@ -31,7 +31,7 @@ ENV PYTHONUNBUFFERED 1

# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10
#
# Note: this ARG is overwritten by the value in docker-compose.yml.
# Note: this ARG is overwritten by the value in compose.yaml.
ARG NODE_VERSION="none"
RUN if [ "${NODE_VERSION}" != "none" ]; then \
su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && \
Expand All @@ -45,13 +45,12 @@ RUN if [ "${NODE_VERSION}" != "none" ]; then \

RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -

# Add the Yarn package repository to APT sources
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

# Update APT package lists and install required packages
RUN sudo apt-get update && \
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y \
postgresql-contrib \
default-jre \
libasound2 libgconf-2-4 libgtk-3-dev libnotify-dev libnss3 libxss1 xvfb

# Add the Yarn package repository to APT sources
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

# Update APT package lists and install required packages
RUN sudo apt-get update && \
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y \
postgresql-contrib \
default-jre \
libasound2 libgconf-2-4 libgtk-3-dev libnotify-dev libnss3 libxss1 xvfb build-essential python3-dev cython3 chromium
19 changes: 19 additions & 0 deletions .devcontainer/config/api/dotenv
Original file line number Diff line number Diff line change
Expand Up @@ -180,3 +180,22 @@ DATABASE_NAME=postgres
SQLALCHEMY_POOL_SIZE=10
SQLALCHEMY_MAX_OVERFLOW=20
SQLALCHEMY_ECHO=False

############################# JWT Config Variables ############################

JWT_OIDC_AUDIENCE=theq-queue-management-api
JWT_OIDC_WELL_KNOWN_CONFIG=http://localhost:8085/auth/realms/servicebc-local/.well-known/openid-configuration

########################## Exam Management Variables ##########################
#BCMP_BASE_URL=
#BCMP_AUTH_TOKEN=
#BCMP_USER=
#MINIO_ACCESS_KEY=
#MINIO_HOST=
#MINIO_BUCKET=
#MINIO_USE_SECURE='1'
#MINIO_SECRET_KEY=

############################## Notifications Variables ########################
NOTIFICATIONS_ENDPOINT=http://localhost:5002/api/v1/notifications/sms
NOTIFICATIONS_EMAIL_ENDPOINT=http://localhost:5002/api/v1/notifications/email
3 changes: 3 additions & 0 deletions .devcontainer/config/appointment-frontend/dotenv.local
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
VUE_APP_PATH=/
VUE_APP_GOOGLE_STATIC_MAP_API_KEY=replace_key_here
VUE_APP_ROOT_API=http://localhost:5000/api/v1
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"KEYCLOAK_CONFIG_URL": "./public/config/kc/keycloak-public.json",
"VUE_APP_ROOT_API": "http://localhost:5000/api/v1",
"hideBCServicesCard": false,
"BCEIDRegistrationUrl": "",
"BCServicesCardUrl": "",
"disableSms": false,
"VUE_APP_FEEDBACK_API": "http://localhost:5001/api/v1",
"FEEDBACK_SERVICE_CHANNEL": "online",
"FEEDBACK_ENABLED": true,
"VUE_APP_HEADER_MSG": "Unlinked Text {link}Link 1 Text{link} Unlinked Text {link}Link 2 Text{link} Unlinked Text {link}Link 3 Text",
"VUE_APP_HEADER_LINKS": "https://example.com/link1{link}https://example.com/link2{link}https://example.com/link3",
"VUE_APP_FOOTER_MSG": "Unlinked Text {link}Link 1 Text{link} Unlinked Text {link}Link 2 Text{link} Unlinked Text {link}Link 3 Text",
"VUE_APP_FOOTER_LINKS": "https://example.com/link1{link}https://example.com/link2{link}https://example.com/link3"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"realm": "servicebc-local",
"auth-server-url": "http://localhost:8085/auth",
"ssl-required": "external",
"resource": "theq-appointment-frontend",
"public-client": "true",
"confidential-port": 0
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"realm": "servicebc-local",
"auth-server-url": "http://localhost:8085/auth",
"ssl-required": "external",
"resource": "theq-frontend",
"public-client": "true",
"confidential-port": 0
}
78 changes: 42 additions & 36 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,46 @@
// For format details, see https://aka.ms/devcontainer.json. For config options,
// see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.202.5/containers/python-3-postgres
// Update the VARIANT arg in docker-compose.yml to pick a Python version
// Update the VARIANT arg in compose.yaml to pick a Python version
{
"dockerComposeFile": "docker-compose.yml",
"dockerComposeFile": "../compose.yaml",

// Add the extensions you want installed when the container is created.
"extensions": [
"bierner.markdown-preview-github-styles",
"dbaeumer.vscode-eslint",
"github.vscode-pull-request-github",
"ms-python.python",
"ms-python.vscode-pylance",
"mtxr.sqltools",
"mtxr.sqltools-driver-pg",
"octref.vetur",
"sonarsource.sonarlint-vscode"
],
"customizations": {
"vscode": {
"extensions": [
"bierner.markdown-preview-github-styles",
"dbaeumer.vscode-eslint",
"github.vscode-pull-request-github",
"ms-python.python",
"ms-python.vscode-pylance",
"ms-python.debugpy",
"mtxr.sqltools",
"mtxr.sqltools-driver-pg",
"octref.vetur",
"sonarsource.sonarlint-vscode",
"charliermarsh.ruff"
],
"settings": {
"python-envs.terminal.autoActivationType": "shellStartup",
"python.terminal.activateEnvironment": false,
"python.languageServer": "Pylance",
"sonarlint.ls.javaHome": "/usr",
"sqltools.connections": [
{
"database": "postgres",
"driver": "PostgreSQL",
"name": "Container database",
"password": "postgres",
"port": 5432,
"previewLimit": 50,
"server": "localhost",
"username": "postgres"
}
]
}
}
},
// Use 'forwardPorts' to make a list of ports inside the container
// available locally:
"forwardPorts": [
Expand All @@ -55,9 +79,13 @@
"label": "Appointments Frontend",
"onAutoForward": "silent"
},
"8085": {
"label": "Keycloak",
"onAutoForward": "silent"
},
"10000": {
"label": "Xpra (Cypress)",
"onAutoForward": "silent",
"onAutoForward": "silent"
}
},
// Use 'postCreateCommand' to run commands after the container is created.
Expand All @@ -66,27 +94,5 @@
// https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode",
"service": "app",
// Set *default* container specific settings.json values on container create.
"settings": {
"python.languageServer": "Pylance",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"xxxpython.linting.pylintPath": "/usr/local/py-utils/bin/pylint",
"python.pythonPath": "/usr/local/bin/python",
// "python.testing.pytestPath": "/usr/local/py-utils/bin/pytest",
"sonarlint.ls.javaHome": "/usr/lib/jvm/default-java",
"sqltools.connections": [
{
"database": "postgres",
"driver": "PostgreSQL",
"name": "Container database",
"password": "postgres",
"port": 5432,
"previewLimit": 50,
"server": "localhost",
"username": "postgres"
}
]
},
"workspaceFolder": "/workspace"
}
113 changes: 0 additions & 113 deletions .devcontainer/docker-compose.yml

This file was deleted.

Loading
Loading