Skip to content
This repository has been archived by the owner on Nov 5, 2022. It is now read-only.

Add crate removal instructions for crates.io. #62

Merged
merged 3 commits into from
Jan 20, 2020

Conversation

smarnach
Copy link
Contributor

As promised in the meeting, I added a hint that we need to create a CloudFront invalidation when removing crates or versions now that rust-lang/crates.io#1871 is merged.

I also added a guess what else needs to be done, in the hope that we clarify the actual steps during the review process. :)

@smarnach
Copy link
Contributor Author

Related: #63

Copy link
Member

@carols10cents carols10cents left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a good start, so i'm in favor of merging it, but it's not everything... these scripts don't remove crates from the index or from S3, for example. And this would allow someone else to take the crate name and/or version, which is what we want in some cases but not others.

I am ok with getting started with this though, I just have some suggestions for making a bit clearer which parts of the commands are placeholders that need to be filled in.

docs/crate-removal-procedure.md Outdated Show resolved Hide resolved
docs/crate-removal-procedure.md Outdated Show resolved Hide resolved
smarnach and others added 2 commits January 3, 2020 19:53
Co-Authored-By: Carol (Nichols || Goulding) <193874+carols10cents@users.noreply.github.com>
@smarnach
Copy link
Contributor Author

smarnach commented Jan 3, 2020

@carols10cents Thanks for the review! I was assuming that the binaries also take care of S3 and the index, but I just confirmed they don't. I added bullet points for these steps to the instructions for now (without any details how to do it). However, a better solution would be to improve the binaries to take care of these steps as well. The only step we probably want to do manually is the CloudFront invalidation, since the Heroku app currently doesn't have the permissions to do it.

Could you please take another look?

@pietroalbini
Copy link
Member

The only step we probably want to do manually is the CloudFront invalidation, since the Heroku app currently doesn't have the permissions to do it.

I'm totally fine giving Heroku the permissions to invalidate the static.crates.io CloudFront distribution btw.

@pietroalbini
Copy link
Member

Also note that the IAM user doesn't have the permissions to delete objects yet.

@smarnach
Copy link
Contributor Author

smarnach commented Jan 7, 2020

I'm totally fine giving Heroku the permissions to invalidate the static.crates.io CloudFront distribution btw.

I was looking at it from the perspective of the code we'd need to write. We don't have any CloudFront client code so far, and I'm not sure I'd want to pull in Rusoto just for this. And the AWS API isn't trivial to use, even for a single invalidation. (S3 provides a REST API which is a lot easier to use.)

We already have the code to delete S3 objects, though.

@smarnach
Copy link
Contributor Author

@carols10cents Would you mind taking another look? This would help finally moving the doc to rust-forge.

@carols10cents
Copy link
Member

LGTM! Sorry for the delay!

@carols10cents carols10cents merged commit 9c7b3f0 into master Jan 20, 2020
@carols10cents carols10cents deleted the crates.io-removal branch January 20, 2020 13:58
@smarnach
Copy link
Contributor Author

Thanks for merging!

@pietroalbini All PRs against the crate removal doc are now merged, so you can go ahead and move it to rust-forge. Please leave a file with a link in the old location. :)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants