Namespaces are public by default for backwards compatability.
These non-public endpoints is mostly intended for buildfarm only storage - were we are guaranteed to be on a appopriate network.
#preflight https://horde.devtools.epicgames.com/job/6278efa77e7140590c008ffb
[CL 20101014 by Joakim Lindqvist in ue5-main branch]
Kept it for leader election and replication as these will hit external services and thus all starting at the same time causes unhealth spikes.
#preflight none
[CL 19585648 by Joakim Lindqvist in ue5-main branch]
Also increased number of replications we do by default before stopping the replication as its not really running a full thruput right now.
#preflight none
[CL 19406409 by Joakim Lindqvist in ue5-main branch]
Introduced a setting for controlling if we do last access tracking for namespaces
This gives us better overview of what settings are enabled per namespace (and easier toggling for legacy vs new behavior)
#preflight none
[CL 19386732 by Joakim Lindqvist in ue5-main branch]
Also removed the old Compact binary serialization code as its not used anymore.
Lastly I fix the old exist batch api (that uses query strings) as it wasnt working and had no tests (this shouldnt really need to be used though as the new api replaces it but a simpler api might be useful for someone)
#preflight none
[CL 19171580 by Joakim Lindqvist in ue5-main branch]
EpicGames.Serialization does not allow writing anonymous fields in objects so we have had to change how certain objects are generated within Horde Storage. This is good as the objects is then also consistently convertable to json.
#preflight none
[CL 19111762 by Joakim Lindqvist in ue5-main branch]
Also updated the head and multiple exists checks to verify that blobs exists in the local region (similarly to what we did for the old api) - this step should not be nesscary once we support fetching blobs from other regions as the data does exist in Horde Storage, just not necessarily in the local blob store.
#preflight none
[CL 19071053 by Joakim Lindqvist in ue5-main branch]
This includes any api that is not needed by users including everything that required a admin token.
The internal port exposes all the normal apis but also the ones that are flagged as internal.
This also removes the custom kestrel dispatcher paths (and thus the "high-speed" port as it is not used and doesnt really give any signficant speedup - using a http only port is what gives most of the benefits)
#preflight https://horde.devtools.epicgames.com/job/620a6fb0583261b0a658db05
[CL 18979491 by Joakim Lindqvist in ue5-main branch]
We were not correctly verifying that our blob download was succesful.
Fixed issue were we were attempting to download the blob from the incorrect namespace. Also updated the tests which had incorrect mocks setup for this as well.
Fixed that our service accounts did not have access to download the snapshot blobs.
Added support for requiring values to be of a particular value in the namespace claim mapping using A=B
#preflight none
[CL 18884539 by Joakim Lindqvist in ue5-main branch]
This is only partially tested right now as we need some of the changes in this changelist deployed to our upstream to fully test it out.
#preflight: https://horde.devtools.epicgames.com/job/61f8111441414fb013cfbae9
[CL 18826675 by Joakim Lindqvist in ue5-main branch]