1 of 10

Upgrading Indy to�Ubuntu 20.04

What’s left to do?�Who will help?

2 of 10

Progress on the Ubuntu 20.04 Upgrade

  • Branch 20.04 created
  • Code updates, especially dependency updates
  • Lots and lots of testing
  • GHA updates in parallel with Jenkins and 16.04
  • Breaking of a circular dependency between Indy, Sovrin and the indy-test-automation repo/process
  • Creation of an indy-shared-gha repository for reusable GHActions

What’s left to do, and how can YOU help?

3 of 10

Complete the tag and publish process

  • Designed and mostly completed
  • Enables tagging indy-plenum or indy-node and publishing a new release
    • Tag created
    • PR created with version updated
    • Testing
    • Merged?
    • New release created and published
    • If tagging is done on an indy-plenum release, triggers an indy-node release
  • Status — about a week away from completion
    • Does not include execution of indy-test-automation in the middle of the process (but should…)
  • Owner: Philipp Schlarb is doing the work

4 of 10

indy-test-automation GHA completion

  • Integrate indy-test-automation execution in the tagging process
  • Enable developers to easily execute indy-test-automation on their own branch
  • Status: Approach is (roughly) known
  • Not on the critical path — we can continue to trigger i-t-a manually when needed
  • Owner: HELP WANTED

5 of 10

Merging 20.04 into main

  • More a milestone than an effort
  • Likely — create a 16.04 branch for use while there remain 16.04 nodes in the world
  • Perhaps/Hopefully: Change to “main”
  • Perhaps: Cleanup of the PRs/branches
  • Owner: Wade Barnes, on approval of the community

6 of 10

Investigation: Mixed Node Networks

  • Issue: Intermittent consensus problems on mixed node (16.04 + 20.04) networks
  • Challenges:
    • Create a repeatable instance of the problem
      • Perhaps use aries-cloudagent-loadgenerator? Or indy-node-container?
      • VON-Network with 1 or 2 nodes running 20.04, others 16.04
      • Apply a load
      • Watch it fail
    • Debugging — what is causing the problem
      • Suspect is libsodium, but it’s not clear
  • Urgent for existing networks that need to be updated
    • Sovrin, Indicio, IDUnion, at least — perhaps FIndy? BCovrin Test?

7 of 10

Upgrade VON-Network

  • Make it easy to run a 20.04 for all the nodes
  • Transition to make it default to use 20.04 for all nodes
  • Oversight: Wade Barnes
  • Owner: HELP WANTED

8 of 10

Aside: Network specific work

  • Example: Sovrin
    • Three repos in the Sovrin Foundation GitHub organization to complete the GHA update
      • Mostly just the tag and publish process
      • Testing needed, but in theory the code updates are already done
    • Plan and execute the Steward update process
      • Upgrade a node to 20.04 stack and 20.04 indy-node
        • Figure out IP address handling during the process
        • Refine the process
      • Repeat for each node on each network

9 of 10

Aside: What’s Next?

  • Push out the Indy Node capabilities
    • Full testing
    • Tagging
    • Releasing
  • More stuff!

10 of 10

Discussion