Closed edigaryev closed 1 year ago
Do we need the old gRPC uploader? It's the backed problem to support both of the options for some time until we fully migrate to the new agent version.
I think it's worth keeping it for now, not all storage backends support uploading via HTTPS, and it would be nice to have a fallback if HTTPS artifact upload goes wrong, as it's relatively new code.
We already only support backends that can generate URLs. cache
instruction is only working via generation of pre-signed URLs.
Our internal integration tests pretty decently cover caching and artifacts logic. Should be pretty safe to deploy if this chancge will pass them.
cache
instruction is only working via generation of pre-signed URLs.
But the agent still supports gRPC fallback even for cache uploads:
There's also a Cirrus CLI, which uses gRPC to accept cache and artifacts.
LGTM overall. Have you tried to build a docker container locally and run integration tests in cirrus-ci repo to check they work with the new version? cirrus-ci repo uses S3 emulator and can presign url for local use so might be a good idea to try before merging.
The artifacts-related integration tests seem to run just fine for me.
See https://github.com/cirruslabs/cirrus-ci/issues/308.