-
Notifications
You must be signed in to change notification settings - Fork 12
Multi-phase preparer workflow #234
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
Comments
It sounds like you're not planning on addressing (at least through this issue) any kind of differential asset upload. Is that correct? |
Not initially, but this'll get us closer. Once we have bulk upload for envelopes and assets, we can add a handshaking request, where the submitter offers a set of checksums to see what it can leave out of the uploads. |
I'm trying to keep this issue from becoming even more sprawling. |
So, uh, now I am doing asset and envelope fingerprinting as part of this after all. Sprawl++ |
Is there a use case for eTags here? |
I don't think so, because our upload requests are performed in bulk. Part of my agenda is to accomplish a content repository publish with as few transactions as possible:
ETags are more of a request-by-request sort of thing, and even if you could attach more than one to a single request, they wouldn't prevent the submitter from needing to prepare and POST this giant tarball anyway. Unless I'm misremembering how they work, of course. |
Still had my head in the individual content envelope model so I was thinking request-by-request. nm |
I've split the doctest work into its own issue at deconst/strider-deconst-content#25, because I'm close to shipping bulk differential uploads without it. It'll still be a pretty natural extension. |
🤘 This is now live and working. |
Uh oh!
There was an error while loading. Please reload this page.
I've been talking about doing this for a while, but I haven't actually documented the full idea anywhere yet. This is what I want to do with the way that preparers work:
CONTENT_ROOT
or/usr/content-repo
), writing each envelope to aurl-encoded-content-id.json
file in anENVELOPE_DIR
, and copying each asset to anASSET_DIR
.CONTENT_STORE_URL
andCONTENT_STORE_APIKEY
. It submits all of the assets contained inASSET_DIR
to the content store, then submits all of the envelopes fromENVELOPE_DIR
. For bonus points and mad performance, it should do this in two HTTP transactions.This lets us:
conf.py
file) no longer needs an API key at all.Here's my rough checklist:
Follow-on issues:
The text was updated successfully, but these errors were encountered: