While prepping this plan, I realise that it can't work, because the Alpha cannot be deployed anymore as it is. This is because issue 4095 in the MS repo will prevent that. So, we can park this ticket, but keep it in the backlog as something we should do in a sprint or two, when the code has evolved enough to make a fair test.
By the time we reach the MVP, we will no longer be able to just re-deploy our SDE if/when we have to make a major update. We need to be able to do deploy updates without destroying the work the users are doing in their workspaces.
Downtime will be acceptable, up to a point, but if we can avoid that, we should.
We have never exercised a live update of our SDE, so that's what this ticket is for. The idea is to take an older version of the SDE, deploy it, then see if we can update the codebase to a newer version, re-deploy, and still have everything work.
Suggested approach:
Deploy our alpha version, from tag [v1.0.1-alpha](https://github.com/Barts-Life-Science/AzureTRE/releases/tag/v1.0.1-alpha).
Deploy several shared services: Firewall, Nexus Certificate, Nexus, Airlock Notifier. N.B. There's no need to configure the Airlock Notifier to send emails, that's not needed here because we've had to configure those parts manually.
Deploy a Base workspace.
Deploy Guacamole, and a Linux VM and Windows VM.
Create an airlock request, submit it, but don't approve it.
Then:
Update the codebase to the beta version, from tag v2.0.0-beta - which doesn't exist yet...
Verify that every service can be disabled and re-enabled. That includes all shared services, and
Verify that the old Linux and Windows VMs can be deleted.
Verify that new Linux and Windows VMs can be created.
Verify that a new workspace can be created
Verify that Guacamole can be created in that workspace
Verify that all the workspaces and services can be deleted
While prepping this plan, I realise that it can't work, because the Alpha cannot be deployed anymore as it is. This is because issue 4095 in the MS repo will prevent that. So, we can park this ticket, but keep it in the backlog as something we should do in a sprint or two, when the code has evolved enough to make a fair test.
By the time we reach the MVP, we will no longer be able to just re-deploy our SDE if/when we have to make a major update. We need to be able to do deploy updates without destroying the work the users are doing in their workspaces.
Downtime will be acceptable, up to a point, but if we can avoid that, we should.
We have never exercised a live update of our SDE, so that's what this ticket is for. The idea is to take an older version of the SDE, deploy it, then see if we can update the codebase to a newer version, re-deploy, and still have everything work.
Suggested approach:
[v1.0.1-alpha](https://github.com/Barts-Life-Science/AzureTRE/releases/tag/v1.0.1-alpha)
.Then:
v2.0.0-beta
- which doesn't exist yet...Finally: