https://github.com/agrc/plpco-rdcc-notifications
A service to schedule and send weekly email notifications about PLPCO projects
https://github.com/agrc/plpco-rdcc-notifications
billable government-app scheduled-tool terraform-managed
Last synced: 7 months ago
JSON representation
A service to schedule and send weekly email notifications about PLPCO projects
- Host: GitHub
- URL: https://github.com/agrc/plpco-rdcc-notifications
- Owner: agrc
- License: mit
- Created: 2021-10-19T16:32:55.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-01-03T00:30:43.000Z (9 months ago)
- Last Synced: 2025-01-18T06:26:19.772Z (9 months ago)
- Topics: billable, government-app, scheduled-tool, terraform-managed
- Language: JavaScript
- Homepage:
- Size: 864 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# plpco-rdcc-notifications
[](https://github.com/agrc/plpco-rdcc-notifications/actions/workflows/push.yml)
The PLPCO RDCC email is a notification system to supplement an esri data collection system consisting of survey123 etc. This notification system uses the Google Cloud to schedule a Monday morning email. A Cloud Run Job is triggered by Cloud Scheduler which queries a PLPCO ArcGIS Server Feature Service to get the last weeks worth of updates. This data is then used as input data to a SendGrid email template and sent out to the PLPCO RDCC mailing list.
A demo firebase website is created when changes are pushed to the dev branch and can be viewed in [https://ut-dts-agrc-plpco-rdcc-dev.web.app](firebase). SendGrid and the demo site both use handlebars as their templating engine which makes this possible.
A SendGrid API key and template id are necessary for this system to run successfully. The terraform for this project resides in the terraform mono repo. The SendGrid API key, during development, resides in `src/secrets/email/key`. In production Secret Manager will mount this secret into the Cloud Run Job. The other configuration can be set using the `.env.template` file.