Process should begin on the first of the month and reports emailed out no later than 2 weeks after that
Creating report data
pip install -r requirements
make generate_parameters
make all -j 30
[x] Verify that parameters are generated in subfolders
[x] Verify in outputs that reports were generated
[x] Verify that data subfolder is present
If needed update previous month's reports. Make sure that the hard-coded months are accurate.
python run_all_months.py
Generate static site
From within the build subfolder
npm run build
python -m http.server
[x] Report month has been added to UI
[x] Find example of agency with no validation errors (avalon), with validation notices (santa clara), and with daily metric errors (sacrt)
Publishing to development website
make sync
Github actions automatically build and deploy any changes to the development branch. May need to re-run github actions. If on the main branch, need to sync development and main branch.
In order to deploy the site, ensure the data was pushed to the production bucket,
and merge any changes into the main branch.
If there are no changes between development and production rerun the last github action workflow run on main.
[x] Verify github action is using gtfs-data (production) rather than gtfs-data-test (development)
[x] Verify in the github action that it is copying production report data
[x] Verify that production site has been updated with most up to date month
Email reports
Testing
Obtain test emails from Cal-ITP technical lead (@evansiroky). Verify with Transit Data Quality Lead (@o-ram) and Cal-ITP comms lead that email contents are correct. Update the config file.
[x] Verify with Transit Data Quality Lead (@o-ram) and Comms Lead that email content is correct
[x] Update config file to have current month
[x] Verify with Cal-ITP Technical Lead (@evansiroky) that test email list is correct
[x] Verify with Transit Data Quality Lead (@o-ram) that production email list is correct
Generate the template (if needed)
script execution in development
python 3_generate_report_emails.py development
[x] Send out emails to test email list using sandbox token.
[x] Send out emails to test email list production token
[x] Verify that the emails pass visual inspection
Production
Once emails have passed visual inspection, change config file for production
python 3_generate_report_emails.py production
pass prompt that asks if production is correct and verify email recipients are production
send out emails
[x] Send out emails to production email list using production token.
[x] Check that all emails have been sent and none have been hard bounced. Send loop has concluded correctly.
If an email is no longer active, the send loop will continue and the email that produced the error will be printed in the console.
Verify emails successfully sent
[x] Verify in postmark that email tracking has been selected
[x] Verify in postmark that emails have been sent in the production server correctly and have not bounced etc
Checklist for monthly report generation
Process should begin on the first of the month and reports emailed out no later than 2 weeks after that
Creating report data
If needed update previous month's reports. Make sure that the hard-coded months are accurate.
Generate static site
From within the build subfolder
Publishing to development website
Github actions automatically build and deploy any changes to the
development
branch. May need to re-run github actions. If on the main branch, need to sync development and main branch.The built HTML is pushed automatically as
development-build
. This site can be viewed at https://development-build--cal-itp-reports.netlify.app/.Review
Deploy Reports
to push report data to the production bucket
or to copy from the dev to prod.
In order to deploy the site, ensure the data was pushed to the production bucket, and merge any changes into the main branch.
If there are no changes between development and production rerun the last github action workflow run on main.
Email reports
Testing
Obtain test emails from Cal-ITP technical lead (@evansiroky). Verify with Transit Data Quality Lead (@o-ram) and Cal-ITP comms lead that email contents are correct. Update the config file.
Generate the template (if needed)
script execution in development
Production
Once emails have passed visual inspection, change config file for production
pass prompt that asks if production is correct and verify email recipients are production send out emails
If an email is no longer active, the send loop will continue and the email that produced the error will be printed in the console.
Verify emails successfully sent
Verify emails in GH Actions