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

[Epic][AP] CMS Public S3 file asset storage #14052

Open
8 tasks done
Tracked by #6577 ...
timcosgrove opened this issue Jun 9, 2023 · 2 comments
Open
8 tasks done
Tracked by #6577 ...

[Epic][AP] CMS Public S3 file asset storage #14052

timcosgrove opened this issue Jun 9, 2023 · 2 comments

Comments

@timcosgrove
Copy link
Contributor

timcosgrove commented Jun 9, 2023

Background

CMS-managed file assets - images and PDFs primarily, that are added by CMS editors as part of their content - are stored in a file store that is within the VA network, like the CMS itself is. This means that when CMS content data that references these files, the URLs are to locations that are not accessible by regular users.

Content Build solves this problem by downloading every file asset used in VA.gov pages with every single content release. This is time-consuming.

To solve this problem for Next Build, we have set up file sync from the CMS file stores to public S3 buckets that can operate as web servers. Files are synced automatically as they are added to the CMS; the sync typically takes a few minutes.

As pages are built by Next Build, we need to substitute the URL to a given file as the CMS understands it with a URL to the public S3 bucket location. This will need to be done on all text where file references could existn.

Assumptions

  • In all cases here we are speaking of file assets that are managed by the CMS and delivered with a page - images and PDFs primarily.

Acceptance Criteria

  • Files that are saved in the production or staging CMS are stored in a publicly-reachable S3 bucket acting as a web server.
  • All existing CMS-managed files are migrated to these same S3 buckets
  • Next Build is updated to make use of these new locations.
  • Optionally: Content Build is also updated to make use of these locations and the old download functionality is removed.

Tasks

Preview Give feedback
  1. CMS Team
    7hunderbird edmund-dunn

Completed Tasks

Preview Give feedback
  1. 0 of 2
    Accelerated Publishing Needs refining
    timcosgrove tjheffner
  2. 0 of 1
    Accelerated Publishing Icebox Needs refining
    timcosgrove
  3. 0 of 3
    Accelerated Publishing Needs refining
    JakeBapple
  4. 0 of 3
    Accelerated Publishing Needs refining
    JakeBapple
  5. 2 of 2
    Accelerated Publishing Needs refining
    jschmidt-civicactions olivereri
  6. 0 of 2
    Accelerated Publishing Needs refining
    jschmidt-civicactions tjheffner
  7. 0 of 2
    Accelerated Publishing Needs refining
@timcosgrove timcosgrove changed the title ⏩ CMS: S3 file asset storage CMS: Public S3 file asset storage Jul 31, 2023
@timcosgrove timcosgrove changed the title CMS: Public S3 file asset storage [Epic] [AP] CMS Public S3 file asset storage Aug 16, 2023
@timcosgrove
Copy link
Contributor Author

See #10894 for anything useful.

@timcosgrove timcosgrove added the Epic Issue type label Aug 16, 2023
@timcosgrove timcosgrove added this to the AP: Milestone 2 milestone Aug 16, 2023
@timcosgrove
Copy link
Contributor Author

Note that this epic was written with the assumption of a more managed solution to files. We have also proposed 'dumb sync' where anything written by the CMS to its asset file system automatically syncs to S3.

We need to investigate that proposal, write it up, put out an RFC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants