Parse-SDK-iOS-OSX icon indicating copy to clipboard operation
Parse-SDK-iOS-OSX copied to clipboard

Add release-automation

Open mtrezza opened this issue 4 years ago • 21 comments

New Feature / Enhancement Checklist

Current Limitation

Releases are still done manually.

Feature / Enhancement Description

Add release automation.

Example Use Case

n/a

Alternatives / Workarounds

Manual release

mtrezza avatar Nov 12 '21 16:11 mtrezza

Thanks for opening this issue!

  • 🎉 We are excited about your ideas for improvement!

@drdaz I haven't done a release in this repo yet, could you describe the manual process currently, so we can see how to automate these steps?

mtrezza avatar Nov 12 '21 16:11 mtrezza

Sure.

  • Make a release branch + PR
  • Update version numbers: bundle exec rake package:set_version\[X.X.X\]
  • Update Changelog
  • Tag release & push tag
  • Add notes to releases page on GitHub

I... I think that's it. Often the LiveQuery lib needs it's podfile updating too.

drdaz avatar Nov 15 '21 19:11 drdaz

Thanks! So all the version numbers are updated with that single command? That means that aside from the changelog there are no manual edits, correct?

Often the LiveQuery lib needs it's podfile updating too.

What are these updates?

mtrezza avatar Nov 16 '21 12:11 mtrezza

Thanks! So all the version numbers are updated with that single command? That means that aside from the changelog there are no manual edits, correct?

Generally yeah, assuming no last-minute tweaks. I usually dump the root folder in VSCode and search for the old version number after the script is run, just to make sure.

Often the LiveQuery lib needs its podfile updating too.

What are these updates?

The version number of the Parse iOS SDK library in the podfile typically. Cocoapods often wants to select the previous version (even though it's specced using ~> notation).

EDIT: So that notation looks like it only keeps up with patch updates, not minor. So we probably lose the connection when we update the minor version in this repo.

drdaz avatar Nov 16 '21 13:11 drdaz

Got it, I think we can make a script that updates all the version numbers and we should be good. Maybe @cbaker6 also has some input here?

mtrezza avatar Nov 16 '21 16:11 mtrezza

Is this a thing that's happening Really Soon™️? Or should I manually create this release? 🙂

drdaz avatar Nov 19 '21 11:11 drdaz

I'm looking into auto-release over the next days. If you need it urgently, I can manually release.

mtrezza avatar Nov 19 '21 18:11 mtrezza

@drdaz I see that you are an owner on cocoapods. Could you add a new owner to there? I would send you the email via Slack if you are there.

mtrezza avatar Nov 21 '21 20:11 mtrezza

@mtrezza I can give it a shot, but I can't get into Slack. The 2FA emails just aren't getting to me 🤔

Any other channels?

drdaz avatar Nov 21 '21 20:11 drdaz

I think it would be good to get you on Slack somehow if that's possible. The release automation PR is ready and it would be good if you could stand-by on Slack for merging, in case there are any glitches. We may have to un-publish from cocoapods if things go wrong. It worked locally but you never know.

mtrezza avatar Nov 21 '21 21:11 mtrezza

There's an invite elsewhere I've clicked on. I'm sure I've been in there before.

The auth just isn't working right now I think.

drdaz avatar Nov 21 '21 21:11 drdaz

I don't think there's a publicly available Slack invite at the moment, they usually expire, so invite is only on a per-user basis now. You can try this link: https://join.slack.com/t/parseopensource/shared_invite/zt-8w385vtf-gIxfSqORSyoK6RO~y3bHZA

mtrezza avatar Nov 21 '21 21:11 mtrezza

That worked. And I've added that email you shared as an owner on the Pod.

drdaz avatar Nov 21 '21 21:11 drdaz

Thanks, it worked indeed

mtrezza avatar Nov 21 '21 21:11 mtrezza

The assets I added back in releases starting from 1.19.2 are missing from the auto-release:

1.19.3

image

1.19.2

image

cbaker6 avatar Nov 21 '21 22:11 cbaker6

they are currently being compiled

mtrezza avatar Nov 21 '21 23:11 mtrezza

Re-opening, as we need to verify the assets and pods were built correctly before closing this.

@cbaker6 @drdaz could you take a look whether the GitHub release assets and the cocoapods (still building) are fine?

mtrezza avatar Nov 21 '21 23:11 mtrezza

I see the assets showing up. Just a long build I guess.

cbaker6 avatar Nov 21 '21 23:11 cbaker6

Yes, it takes about 25 minutes before the assets are added to the release.

mtrezza avatar Nov 21 '21 23:11 mtrezza

I left this comment to speed up the cocoa pod release: https://github.com/parse-community/Parse-SDK-iOS-OSX/pull/1632#discussion_r753868927

cbaker6 avatar Nov 21 '21 23:11 cbaker6

@mtrezza Can we close this? I found that assets comment you where talking about https://github.com/parse-community/Parse-SDK-iOS-OSX/issues/1628#issuecomment-974911439

dplewis avatar Oct 06 '23 18:10 dplewis

Yes, I believe so; thanks

mtrezza avatar Oct 06 '23 18:10 mtrezza