girder / girder_web_components

Reusable Javascript and VueJS components for interacting with a Girder server.
https://gwc.girder.org
Apache License 2.0
16 stars 9 forks source link

npmjs deployment with circleci #167

Closed subdavis closed 4 years ago

subdavis commented 4 years ago

I'm tired of not having this :P

subdavis commented 4 years ago

I've tested all the individual parts of this and they seem to work.

To publish to npm, you'd need to a) update package.json's version b) push a tag on that commit, then c) merge to master.

I'm pretty sure tags won't survive a squash-and-merge so we will have to probably dedicate PRs explicitly for release.

Ready for review.

subdavis commented 4 years ago

This may not actually work. For the publish job to run, the CI runner should be invoked by a tagged commit on master. As far as I'm aware, that condition is impossible to satisfy when master is a protected branch. Either squash-and-merge destroys your tag or the merge commit created by GitHub is the target of the CI job, which is 1 commit ahead of the commit you would have tagged.

zachmullen commented 4 years ago

Are we ok to just tag master after the version change gets merged?

subdavis commented 4 years ago

I honestly don't know. I believed until now that simply pushing a tag wouldn't cause CI to run again for a commit that had already passed.

If that's wrong, then yes.

zachmullen commented 4 years ago

IIRC pushing a tag does trigger CI, I'm pretty sure that's how I do it for Girder.

subdavis commented 4 years ago

Then this is ready for merge and we can give it a try.