Skip to content

feature: http download endpoint for items in CAS #293

@migmartri

Description

@migmartri

Currently, downloads are performed using the CLI (chainloop artifact download) which hits the Read RPC endpoint

func (s *ByteStreamService) Read(req *bytestream.ReadRequest, stream bytestream.ByteStream_ReadServer) error {

This endpoint requires the digest of the artifact to download and an authentication with a short lived token with download permissions.

This task is about creating a similar endpoint but in an HTTP endpoint. i.e download/sha256:deadbeef?t=short_lived_token

This will enable download links from notifications, webUIs and so on.

Note that this task is only about implementing the endpoint in the artifact-cas-proxy, not about an additional endpoint that we will need to do in the control-plane which will craft such download token for the user (that will be another task).

### Tasks
- [ ] https://github.com/chainloop-dev/chainloop/pull/294
- [x] feat(deployment): enable http ingress in Helm Chart https://github.com/chainloop-dev/chainloop/pull/305
- [x] Enable new http CAS endpoint in Chainloop cloud
- [x] Download endpoint in control plane https://github.com/chainloop-dev/chainloop/pull/307
- [x] Update Helm Chart to support downloading https://github.com/chainloop-dev/chainloop/pull/310

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions