vegaprotocol/vegawallet-desktop

Release [add dapp version]-core-[add core version]

pennyandrews opened this issue · 1 comments

  • Review and refine this ticket based on #496
  • Consider the impacts of William's spike #590 on this
  • Turn it into an issue template in the wallet repos

Tasks

  • Review link to core release
  • Tag frontend-monorepo
  • Create release and generate release notes
  • Run @smoke tests
  • Run @regression tests
  • Run @slow tests
  • Explorative testing of key flows
  • Set release/[network] to tagged commit
  • Verify builds (on Netlify and Fleek) are successful
  • Verify build has been deployed
  • Smoke testing on deployed app

So before I can properly pin down anything for this individually, it would be good to have a walk through of the release process we have at the moment? Is there anyone that fancies showing me or pointing me to some docs? I do have some general high level thoughts here though which are...

  1. All automated tests for the release must be green, I think our tests are small enough to all be run at the moment, is that correct? In future if it gets incredibly large then maybe we can filter, but ideally we keep things efficient enough to run them all.

  2. Exploratory tests as mentioned, I think over time we should look to be sufficiently covered by automation so that it is only edge cases we are trying here, the kind of test cases that we cannot automate or do not believe should be automated. I think in general we want to be in a position where if our test runs are green, we are 99% sure wallet is OK, exploratory testing is really just trying to find weird and wonderful ways to break our software.

  3. Further to point 2, I think we could target our exploratory tests based on areas of impact over the last sprint if we are in a situation where we need to be swift (if we are indeed releasing once per sprint)

  4. Do we have any slack integration for releases? Would be good to send out a notification when a release goes out with a link. I know that kind of thing is doable if it is not in place already

  5. Regarding the spike, I am assuming that in wallet we could probably mock something pretending to be the network with an update and check the wallet gets the notification if I have understood correctly.

Largely I think the points for core are pretty applicable regarding release notes, linking releases etc. Sorry, I appreciate this is not a nailed down list!