Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multi-Issue PR #371

Merged
merged 55 commits into from
Feb 10, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
fee4a9b
Bump react-router-dom from 5.3.0 to 6.2.1 in /tdrs-frontend
dependabot[bot] Jan 25, 2022
1cf5167
fix: install latest react-router which should have been done in parallel
jorgegonzalez Jan 25, 2022
2cd0f9a
fix: upgrade Redirect components to Navigate
jorgegonzalez Jan 25, 2022
9591ea8
fix: replace connected-react-router
jorgegonzalez Jan 25, 2022
2dd8a79
refactor: Header.jsx
jorgegonzalez Jan 26, 2022
5de8e6d
Bump axios from 0.24.0 to 0.25.0 in /tdrs-frontend
dependabot[bot] Feb 1, 2022
4d507e6
Adapting to ensure verify_email() is fired before login_user() by ref…
Feb 1, 2022
37296f5
Merge branch 'raft-tdp-main' into bug/1170-session-before-login
jorgegonzalez Feb 1, 2022
389ebad
Merge branch 'raft-tdp-main' into dependabot/npm_and_yarn/tdrs-fronte…
jorgegonzalez Feb 2, 2022
63c4f1e
moving login_msg per commentary
Feb 2, 2022
1379ed0
Merge branch 'bug/1170-session-before-login' of github.com:raft-tech/…
Feb 2, 2022
374ac49
Merge branch 'raft-tdp-main' into bug/1170-session-before-login
jorgegonzalez Feb 2, 2022
eb39953
Merge pull request #1600 from raft-tech/bug/1170-session-before-login
andrew-jameson Feb 2, 2022
76dd151
Merge branch 'raft-tdp-main' into dependabot/npm_and_yarn/tdrs-fronte…
jorgegonzalez Feb 2, 2022
5f53cf3
Merge branch 'raft-tdp-main' of https://github.com/raft-tech/TANF-app…
jorgegonzalez Feb 2, 2022
5345c38
Change domain
riatzukiza Feb 2, 2022
19ead36
test: fix privateroute test
jorgegonzalez Feb 2, 2022
347aaf7
test: fix SplashPage.test.js
jorgegonzalez Feb 2, 2022
e3b26f2
update job name
riatzukiza Feb 2, 2022
22d7118
Merge pull request #1603 from raft-tech/feat/1596-change-product-upda…
riatzukiza Feb 2, 2022
5c54937
test: fix LoginCallback.test.js
jorgegonzalez Feb 2, 2022
23520fc
test: fix EditProfile.test.js
jorgegonzalez Feb 2, 2022
1790b40
Merge branch 'raft-tdp-main' of https://github.com/raft-tech/TANF-app…
jorgegonzalez Feb 2, 2022
c12421e
Rename folder
riatzukiza Feb 2, 2022
95c1893
Update script variable names
riatzukiza Feb 2, 2022
5cef59c
use correct script name
riatzukiza Feb 2, 2022
6f272b6
Merge pull request #1606 from raft-tech/hotfix/1596-script-name
riatzukiza Feb 2, 2022
9ab34d9
*PROJECT UPDATES*
riatzukiza Feb 2, 2022
d9fbbff
Merge pull request #1607 from raft-tech/hotfix/1596-script-name
riatzukiza Feb 2, 2022
bbe7310
Bump @testing-library/jest-dom from 5.16.1 to 5.16.2 in /tdrs-frontend
dependabot[bot] Feb 3, 2022
e24b3b1
Merge branch 'raft-tdp-main' into dependabot/npm_and_yarn/tdrs-fronte…
andrew-jameson Feb 3, 2022
47fe9cd
Merge pull request #1583 from raft-tech/dependabot/npm_and_yarn/tdrs-…
andrew-jameson Feb 3, 2022
27761cd
Merge branch 'raft-tdp-main' into dependabot/npm_and_yarn/tdrs-fronte…
andrew-jameson Feb 3, 2022
14bc7c2
Merge pull request #1608 from raft-tech/dependabot/npm_and_yarn/tdrs-…
andrew-jameson Feb 3, 2022
7227325
Merge branch 'raft-tdp-main' of https://github.com/raft-tech/TANF-app…
jorgegonzalez Feb 3, 2022
6f2e9fe
Update 009-git-workflow.md
andrew-jameson Feb 3, 2022
c660b81
Merge pull request #1611 from raft-tech/abottoms-coder-patch-1
andrew-jameson Feb 3, 2022
197110a
Merge branch 'raft-tdp-main' into dependabot/npm_and_yarn/tdrs-fronte…
jorgegonzalez Feb 4, 2022
4eef5d2
Merge pull request #1506 from raft-tech/dependabot/npm_and_yarn/tdrs-…
andrew-jameson Feb 4, 2022
7c5ab9c
Create README.md
andrew-jameson Feb 4, 2022
024fe88
Update README.md
andrew-jameson Feb 4, 2022
81e0fd7
Update README.md
andrew-jameson Feb 4, 2022
41c40f4
Merge pull request #1615 from raft-tech/feat/1526-tech-doc-readme
andrew-jameson Feb 7, 2022
e0463ab
move data-downloads doc into adr013
ADPennington Feb 7, 2022
2aa7ebd
promote database/ docs one level up and del database/
ADPennington Feb 7, 2022
ef86f0a
del obsolete tech docs
ADPennington Feb 7, 2022
b7c2aa7
replace obsolete gitflow diagram
ADPennington Feb 7, 2022
edc41f8
renamed rotation doc
ADPennington Feb 7, 2022
df9601c
reference commands.sh in unit-tests md
ADPennington Feb 7, 2022
20d29bc
ref raft a11y guidelines in hww expectations doc
ADPennington Feb 7, 2022
6780472
del obsolete docs/ readme
ADPennington Feb 7, 2022
f1f776b
update ref links in main readme
ADPennington Feb 7, 2022
7b4ab25
updates to unit-tests.md with testing commands
Feb 8, 2022
92b0c29
Update README.md
ADPennington Feb 8, 2022
ed8871c
Merge pull request #1616 from raft-tech/techdocs-updates-1526
andrew-jameson Feb 8, 2022
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
8 changes: 4 additions & 4 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ jobs:
cf-space: tanf-staging
cf-username: CF_USERNAME_STAGING

deploy-live-comms:
deploy-project-updates-site:
parameters:
cf-org:
default: CF_ORG
Expand All @@ -524,8 +524,8 @@ jobs:
cf-space: <<parameters.cf-space>>
cf-username: <<parameters.cf-username>>
- run:
name: Deploy Live Comms Site
command: ./scripts/deploy-live-comms.sh rolling tdp-live-comms
name: Deploy TDP Project Updates Site
command: ./scripts/deploy-tdp-product-update-site.sh rolling tdp-project-updates

deploy-prod:
executor: docker-executor
Expand Down Expand Up @@ -595,7 +595,7 @@ workflows:
staging-deployment:
unless: << pipeline.parameters.run_dev_deployment >>
jobs:
- deploy-live-comms:
- deploy-project-updates-site:
filters:
branches:
only:
Expand Down
19 changes: 11 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,22 @@ Our vision is to build a new, secure, web-based data reporting system to improve
# Table of Contents

+ **[Background](./docs/Background)**: Project, agency, legacy system, TDP prototype, acquisition, and program background
+ **[Product-Strategy](./Product-Strategy)**: Product Vision, roadmap, and planning
+ **[Product-Strategy](./docs/Product-Strategy)**: Product Vision, roadmap, and planning
+ **[How-We-Work](./docs/How-We-Work)**: Team composition, sprint schedule, regular meetings, and workflows
+ **[Security-Compliance](./Security-Compliance)**: Supplementary information in support of the ATO process
+ **[Security-Compliance](./docs/Security-Compliance)**: Supplementary information in support of the ATO process
+ **[Sprint-Review](./docs/Sprint-Review)**: Summaries of delivered stories per sprint
+ **[Technical-Documentation](./docs/Technical-Documentation)**: Architectural Decision Records, System documentation; technical workflows
+ **[User-Experience](./docs/User-Experience)**: Research-related project background, strategy and planning documents, and research syntheses
+ **[Frontend](./tdrs-frontend)**: Frontend ReactJS codebase
+ **[Backend](./tdrs-backend)**: Django codebase for backend
+ Codebase
+ **[Frontend](./tdrs-frontend)**: Frontend ReactJS codebase
+ **[Backend](./tdrs-backend)**: Backend Django codebase
+ **[Terraform](./terraform)**: Documentation and syntax on CI process for automated provisioning of Cloud.gov brokered services
+ Web-based tools
+ **[Figma]():** Design
+ **[Figma](https://www.figma.com/file/irgQPLTrajxCXNiYBTEnMV/TDP-Mockups-For-Feedback):** Design
+ **[MURAL](https://app.mural.co/t/raft2792):** User research and product planning collaboration
+ **[HHS Teams]()**: File storage, historic chats
+ **[Zenhub]()**: Tracking issues
+ **[ACF's TDP Sharepoint Site](https://hhsgov.sharepoint.com/sites/TANFDataPortalOFA/Shared%20Documents/Forms/AllItems.aspx)**: File storage, historic chats
+ **[Zenhub](https://app.zenhub.com/workspaces/tdrs-sprint-board-5f18ab06dfd91c000f7e682e/board?repos=281707402)**: Tracking issues
+ **[Product Updates](./product-updates)**: communication on project updates and research findings to the broader TDP stakeholders and target users

## Infrastructure

Expand All @@ -47,7 +50,7 @@ See [Architecture Decision Record 005 - Application Authentication](https://gith

[Cloud.gov](https://cloud.gov/) is being used as the cloud environment. This platform-as-a-service (PaaS) removes almost all of the infrastructure monitoring and maintenance from the system, is already procured for OFA, and has a FedRAMP Joint Authorization Board Provisional Authority to Operate (JAB P-ATO) on file.

See [Architecture Decision Record 003 - Application Hosting](https://github.com/raft-tech/TANF-app/blob/raft-tdp-main/docs/Technical-Documentation/Architecture-Decision-Record/003-Application-hosting) - for more details.
See [Architecture Decision Record 003 - Application Hosting](https://github.com/raft-tech/TANF-app/blob/raft-tdp-main/docs/Technical-Documentation/Architecture-Decision-Record/003-Application-hosting.md) - for more details.
### CI/CD Pipelines with CircleCI

#### Continuous Integration (CI)
Expand Down
1 change: 1 addition & 0 deletions docs/How-We-Work/our-priorities-values-expectations.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ Also, review to ensure methods, variables, etc. are appropriately named. For met

Review to ensure each screen follows the guidelines below to meet the accessibility WCAG2.1 AA performance standard (**_see dropdown below for more details on how gov will test a11y_**). Aditionally, `raft review` should include documenting evidence that the guidelines below were followed.

- Follow [Raft’s Accessibility Do’s and Don’ts](https://github.com/raft-tech/TANF-app/blob/raft-tdp-main/docs/Technical-Documentation/rafts-accessibility-dos-and-donts.md#raftsaccessibility-dos-and-donts) guidelines
- Use [DHS Trusted Tester v5 Conformance Test](https://section508coordinators.github.io/TrustedTester/), [Tota11y](https://github.com/Khan/tota11y), and [WAVE](https://wave.webaim.org/)
- Run the Accessibility Insight for [Web “Fast Pass” tool](https://accessibilityinsights.io/docs/en/web/getstarted/fastpass)
- Run the Accessibility Insight for Web "Manual test for tab stops"
Expand Down
46 changes: 0 additions & 46 deletions docs/README.md

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ The proposed workflow below provides a remedy to these issues, as well as many o

5. Assigned Raft reviewer(s) perform the review and/or requests changes.
* For project management, research, and design work, review is conducted async.
* For development work, author is expected to schedule a [tabletop meeting]() at least 48 hours after `raft review` label added.
* For development work, author is expected to schedule a [tabletop meeting](https://github.com/raft-tech/TANF-app/docs/How-We-Work/Developer-Tabletops.md) at least 48 hours after `raft review` label added.
* When changes are requested, the changes are made by the author.
* When satisfied, the reviewer(s) confirm that ACs are met, `approve` the PR, remove `raft review` and add `QASP review` labels.
* See exceptions in [Notes](https://github.com/raft-tech/TANF-app/blob/dffd79adf7a5ae87cf1a93c8adf655c76cf45089/docs/Architecture%20Decision%20Record/009-git-workflow.md#notes) section
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 13. Download Strategy

Date: 2021-04-06 (_Updated 2021-12-29_)
Date: 2021-04-06 (_Updated 2022-02-07_)

## Status

Expand Down Expand Up @@ -33,6 +33,56 @@ In light of these facts we have decided to shift our efforts to download files f
- Eases path to ATO.

**Risks**
- None that the team is aware of at this time.

## Notes
- [Technical Documentation](../Technical-Documentation/data-file-downloads.md)
**<details><summary>Data Files Download Architecture</summary>**

This application provides a secure means to both store and download files from
AWS S3 through the use of an open source Django plugin `django-storages`. By
utilizing built in Django classes in conjunction with this plugin we can enable
downloading of these files through an API endpoint without having to write
the files to the local storage of the server, thus removing a performance
penalty that would be incurred by essentially downloading the file twice.

### Process Flow
![](diagrams/tdp-data-file-download-api.png)

### S3 File Storage
`django-storages` provides a custom Storage Backend for Django that enables
storing files in S3 instead of on the local Django server. This application
has historically used this library for collection and storage of static files
served for the Django admin. However, with this change we will move towards
using this to interface with the Data Files as well.

#### S3Boto3Storage
This storage backend provides the support for opening files in read or write
mode and supports streaming (buffering) data in chunks to S3 when writing.

[Source code](https://github.com/jschneier/django-storages/blob/master/storages/backends/s3boto3.py#L233)

#### S3Boto3StorageFile
This class extends Django's File class to support file streaming using the
[boto3](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html)
library's multipart uploading functionality. It provides a wrapper to access
the buffered file contents.

[Source code](https://github.com/jschneier/django-storages/blob/master/storages/backends/s3boto3.py#L79)

#### InMemoryUploadedFile
This file class is provided by Django and represents a file that has been
uploaded into memory via streaming. The file returned by `django-storages` for
a given FileField associated with an S3 object will leverage the functionality
of this class to prevent needing to write the file to disk, resulting in a more
performant download experience.

[Source code](https://github.com/django/django/blob/main/django/core/files/uploadedfile.py#L78)

### ReportFile model
This is a custom model for the application that stores information about a
Data File that has been uploaded to the system. To leverage the features
mentioned above this model will have a [FileField](https://docs.djangoproject.com/en/3.2/ref/models/fields/#filefield)
on the model which is linked to S3 via `django-storages`. From the perspective
of the API, this will make downloading the file as simple as calling the `open`
method on the file property of a `ReportFile` instance.
</details>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
72 changes: 0 additions & 72 deletions docs/Technical-Documentation/Configuration-Management-Plan.md

This file was deleted.

32 changes: 0 additions & 32 deletions docs/Technical-Documentation/Prototypes.md

This file was deleted.

Loading