CARVIEW |
Select Language
HTTP/2 200
date: Sat, 26 Jul 2025 03:53:17 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-robots-tag: none
etag: W/"7f3cb9face1cbfa18681070b7687e01e"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=x1mvyFP2j9vSBszUNc8l%2BTztj6%2FDcmMaBQ9%2BX7ZPFvUOR25t%2BziTSGpwq3wrnMhOelNvQ60YQ2O5osDtCLSqZcd1hH6ys8CxlgjB2Vd4vjk5CiR4P1YhI7Wdy9UjsdTKTkdpYNq6hLX3hD6CoqBKQ%2BdfjLUdEBSayiz%2FdG92XGsvflZ%2Bi0lFdLbQUFCS39MsjEDTG7SFC2%2B5%2FpR8uyt72baS3O1I3SEUDAqvGDTRQw6G7bgG%2B7ox1yHcMDM1V6bPJHHJG05XhsoqcweRm%2BUpQw%3D%3D--On%2BrUwAWsJGTq5jV--QI6cGcSUih2XjIUtPfnyMg%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1802787418.1753501997; Path=/; Domain=github.com; Expires=Sun, 26 Jul 2026 03:53:17 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Sun, 26 Jul 2026 03:53:17 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: CF20:2992:129219:1C5FE0:6884512D
Deployment · fecgov/fecfile-web-api Wiki · GitHub
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 3
Deployment
Laura Beaufort edited this page Jul 2, 2025
·
44 revisions
- API: https://github.com/fecgov/fecfile-web-api
- API proxy: https://github.com/fecgov/fecfile-api-proxy
- Web app: https://github.com/fecgov/fecfile-web-app
- Validator: https://github.com/fecgov/fecfile-validate
Special Note: If the fecfile-validate repo was updated, the commit of the update needs to be updated in the requirements.txt file in the fecfile-web-api repo otherwise the CircleCI cache will not roll out the change.
Using git-flow extensions:
git flow feature start feature_branch
Without the git-flow extensions:
git checkout develop
git pull
git checkout -b feature/feature_branch develop
- Developer creates a GitHub PR when ready to merge to
develop
branch - Reviewer reviews and merges feature branch into
develop
via GitHub - [auto]
develop
is deployed todev
See Repositories for full list
-
Make sure all PRs for the given sprint are merged
-
Using git-flow extensions:
git checkout develop
git pull
git flow release start sprint-#
git push --set-upstream origin release/sprint-#
- Without the git-flow extensions:
git checkout develop
git pull
git checkout -b release/sprint-# develop
git push --set-upstream origin release/sprint-#
- Developer creates two PRs per repository in GitHub to merge
release/sprint-#
branch intomain
andrelease/sprint-#
intorelease/test
branches to track if commits pass deployment checks. The actual merge will happen when deploying a release to test/production. - (optional) Tag reviewers on pull request(s)
- Pushing the release branch triggers deploying to STAGE. Make sure deploys and end-to-end-tests pass (may need to re-run E2E).
- Test logging in to stage environment (stage.fecfile.fec.gov)
- Let the team know (and email QA team) that the release branch has been deployed to stage, ask developers to review their work there
- Using git-flow extensions:
git flow hotfix start my-fix
# Work happens here
git flow hotfix finish my-fix
- Without the git-flow extensions:
git checkout -b hotfix/my-fix main
# Work happens here
git push --set-upstream origin hotfix/my-fix
- Developer creates a hotfix branch, commits changes, and makes a PR to the
main
anddevelop
branches: - Reviewer merges hotfix/my-fix branch into
develop
- [auto]
develop
is deployed todev
. Make sure the build passes before deploying tomain
. - Trigger rebuild of
main
without hotfix to ensure stable build. - If deploy to develop is successful, reviewer merges hotfix/my-fix branch into
main
.
See Repositories for full list
First redeploy main
branch
- Rebuild the current
main
branch for each repo in CircleCI and make sure the deploys all succeed; these rebuilds can be done concurrently - API main branch
- API proxy main branch
- Web app main branch
Then deploy to Test
- Make sure reviewers have approved
release/sprint-#
->release/test
PRs in all repos (API/web app/proxy/validate) - Merge the
release/sprint-# -> release/test
fecfile-web-api PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> release/test
fecfile-web-app PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> release/test
fecfile-api-proxy PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> release/test
fecfile-validate PR and check CircleCI for passing tests - If commits were made to
release/sprint-#
:- Developer creates a PR in GitHub to merge
release/sprint-#
branch into thedevelop
branch - Reviewer approves PR and merges into
develop
- Developer creates a PR in GitHub to merge
Then deploy to Prod
- Make sure reviewers have approved
release/sprint-#
->main
PRs in all repos (API/web app/proxy/validate) - Merge the
release/sprint-# -> main
fecfile-web-api PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> main
fecfile-web-app PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> main
fecfile-api-proxy PR and check CircleCI for passing tests and successful deploy before continuing - Merge the
release/sprint-# -> main
fecfile-validate PR and check CircleCI for passing tests - Delete
release/sprint-#
branches prior to the currentrelease/sprint-#
branch, if they exist - Publish a new release using tag sprint-#, be sure to Auto-generate release notes
- On Github, click on "Code" tab, then the "tags" link, then the "Releases" toggle
- Click the button "Draft a new release"
- Enter the new sprint tag "sprint-XX"
- Set Target option to "main"
- Set Release title to "sprint-XX"
- Click the button "Generate release notes"
- Click the "Publish release" button
Clone this wiki locally
You can’t perform that action at this time.