mozilla-mobile / mozilla-vpn-client

A fast, secure and easy to use VPN. Built by the makers of Firefox.
https://vpn.mozilla.org
Other
428 stars 103 forks source link

Treat tag pushes to a `releases/*` branch as a release graph in Taskcluster #3141

Closed ahal closed 2 years ago

ahal commented 2 years ago

We have a push-apk task that landed and is supposed to run on Github Release events. The problem is that VPN doesn't use Github Releases and instead pushes a tag to the release branch to trigger a release. It should be possible to configure the .taskcluster.yml to set the tasks_for parameter to release if we detect: 1) A push to a release branch 2) A tag push

This way VPN can continue to use their existing release process and we can use the tasks_for value in Taskgraph as normal. If we ever want to switch to Github Releases, we can do so without needing to touch any task definitions.

Jira: https://mozilla-hub.atlassian.net/browse/RELENG-859

┆Issue is synchronized with this Jira Task

ahal commented 2 years ago

I'm pretty sure I got this working here: https://github.com/mozilla-releng/staging-mozilla-vpn-client/commits/releases/test

But I'm afraid I'm going to have to push back on this approach without at least understanding why Github Releases are undesirable. The downsides here are:

  1. This is a non-standard and untested way to release software with Taskcluster, expect rough edges.
  2. When pushing a tag to a release branch, there will be two graphs (one for the commit push, one for the tag push). The Github Checks UI will display a random graph (probably whichever runs last). Treeherder might do the right thing here, but I'm not sure as I can't easily test it out.
  3. Adds a bunch of additional complexity to .taskcluster.yml.
  4. We need to fake the tasks_for value that gets passed into Taskgraph from github-push -> github-release.

Given all this, I strongly encourage we just do the simple Github Releases approach. But if there are good reasons not to, we can move forward here. @bakulf any thoughts on this?

ahal commented 2 years ago

Hmm, I think 2) might be a problem with the Github Releases approach anyway, so we can discount that one.

ahal commented 2 years ago

Going to resolve WONTFIX