Closed Bug 1577785 Opened 5 years ago Closed 5 years ago

Remove or support blob, azure artifacts

Categories

(Taskcluster :: Services, task)

task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: dustin, Assigned: dustin)

References

Details

Per bug 1518219, we have a blob artifact type that is lightly used, perhaps just for unit tests of that artifact type itself.

In fact, we have three supported types of artifacts:

  • blob
  • s3
  • azure

All of these will eventually be eclipsed by the object service. Our worker implementations all use s3, so I doubt that blob and azure are heavily used, but let's see if anything uses them. If not, or if it's things that can be easily migrated to S3, then let's remove that support.

Assignee: dustin → nobody

If the blob artifact system is superior to s3, another option is migrating from s3 to blob artifact system.

As I understand it, the blob artifact system gets us trusted sha256's of artifacts (so we can be sure artifacts are not tampered with), parallelised multipart uploads and downloads (i.e. faster uploads/downloads), smarter content-encoding(?), and maybe some other metadata/guarantees that we currently lack. I think also we have a tool for uploading/downloading blob artifacts so we can ensure consistent behaviour of artifact uploading/downloading across workers and tools. I think the original intention was that the object service would use the blob artifact system, rather than replace it, so this may also help to reduce the amount of work required to implement the object service.

It looks like maybe blob artifacts respect Accept-Encoding request header (see bug 1416270 comment 15).

Blocks: 1585578

This is not blocking the transition on Nov 9. I think!

No longer blocks: tc-cloudops

Bug 1595838 suggests that we do not need to continue supporting blobs.

Assignee: nobody → dustin

https://github.com/taskcluster/taskcluster/pull/1958

This is a start, marking the artifact type we know works (S3) as not deprecated and the others as deprecated. Just to check:

(sandbox) (go1.12.9) (v10.16.3) dustin@lamport ~/p/taskcluster [bug1577785] $ aws s3 ls --recursive s3://taskcluster-public-blobs | grep -v PHID-DIFF                                                                                                                                                                                                                       
(sandbox) (go1.12.9) (v10.16.3) dustin@lamport ~/p/taskcluster [bug1577785] $                                                                                                                                                                                                                                                                                               

so there are no public objects aside from the artifacts that led bastien to an error in bug 1595838. There's no taskcluster-private-blobs bucket, so that never worked.

As for Azure artifacts, I only see about a dozen, and they are all from 2016. And I don't think that's configured in the new deployment, either.

So let's land this PR, and I'll make a bigger PR to remove support for those artifact types, so that nobody "accidentally" starts using them. There are lessons to be learned, especially from the blob type, for the object service -- but those lessons are still in the git history, so not lost!

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.