-
Notifications
You must be signed in to change notification settings - Fork 22
Deployment Process
- As pull requests get approved, merged, and deployed to staging, devs will test their PRs on staging and address any apparent issues. Every PR approved and merged requires a deploy to staging and manual testing on staging.
If PRs affect the campaign template, the following testing-worthy campaigns exist:
- TEST OPEN CAMPAIGN: https://staging.dosomething.org/us/campaigns/test-campaign
- TEST OPEN CAMPAIGN (BONUS!): https://staging.dosomething.org/us/campaigns/patient-playbooks
- TEST CLOSED CAMPAIGN: https://staging.dosomething.org/us/campaigns/closed-campaign
- TEST SMS CAMPAIGN: https://thor.dosomething.org/us/campaigns/dont-drive-intexticated
- TEST GLOBAL CAMPAIGN: https://staging.dosomething.org/us/campaigns/us-en (dummy content input to illustrate the surfacing of different content across translations)
If a PR affects the global experience, the code can be tested on Staging or Thor, faking a non-US experience. To use our VPN service, follow these directions.
Staging can be used to test most all PRs. However, PRs that need to be tested for performance (ex. code that works across reportbacks or queries) should be tested on Thor since there is a significantly more content. Additionally, PRs that require testing on more realistic/newer content (ex. current sponsor logos) should be tested on Thor.
- Deploy process begins at 9:30 AM M - Th, with Fridays optional
- Jen deploys the latest version of Staging to Thor first thing in the morning
- Jen deploys production upon confirming all items in the Deploy Checklist (below)
If a Thor deploy results in the following, you are good to deploy!
- “Thor Suite - Start” AND “Execute All Tests Suite” Ghost Inspector notifications appear in #deploys with passed test status. You can see which tests failed by going here https://app.ghostinspector.com.
- 3 transactional emails (campaign sign up, reportback confirmation, and forgot password) and one ZenDesk ticket post to #ghost-inspector (if these don't show up in the #ghost-inspector channel it could just be an issue with it being routed into Slack, you can always try to trigger these things manually on Thor to test and unblock deployment!)
- 1 transactional email, the user registration one, needs to be checked in Customer.io Staging. Login information is in LastPass! Once logged in, click 'People' in the left sidebar. You should see the Ghost Inspector email account. Click the email address. You should see under 'Segments' a 'Signed Up' tag. Under 'Recent Activity' you should see Drafted Email, 'Welcome'
- Fantini AND/OR Nami AND/OR Dave AND/OR Jen receives a text
It’s sometimes helpful to deploy more than once per day. If this is the case, the person who is promoting the second (or third) deploy will spearhead the process by:
- Deploying the latest version of staging to Thor
- Confirming all items in the Deploy Checklist
- Deploying to Production
These are handled by the devs!
Check out the Engineering Blog!
- Building your local Environment
- NFS
-
SSHFS— Deprecated - Troubleshooting
- Environment breaking changes
- Troubleshooting your local
- Bender
- Backend Development
- Conventions
- Solr information
- DoSomething Profile
- Contrib Modules
- DoSomething Modules
- Fender
- Front End Development
- Forge Pattern Library
- Testing
- General information
- Xdebug Guide
- Vagrant
- Disc performance benchmark
- Vagrant and file sharing(SSHFS)
- Documentation
- Memorable pull requests
- Documenting on this Wiki & in Code
- 2016 Product Wiki
- Product information
- Faking your geo location
- For local dev: Fastly header information and configuration
- For everywhere else: VPN Server for Testing International Sites
- Translations
- Making content translatable
- Localization Guidelines
- Old International Setup Resources archive
- Setting up international