Implement Create for orka provider
Overview
In #39 (closed) we created a new provider for orka which will be used to provision/get/delete VMS. The first part is to implement the Create
part of the provider.
Proposal
The creating part should do the following steps:
- Create SSH key pair in a known directory that can be used later to execute scripts. This should work similar to where we store the password for GCP/Windows. We can try and follow the same model that
docker-machine
does in drivers/base - Create VM
- Deploy VM
- The SSH port being dynamically assigned and returned by Orka with the GetVM command, we need to use it instead of a hardcoded or TOML-config port.
- Configure SSH configuration on the machine to only accept the previous SSH key
- Change the default password to something else, similar to what we do for GCP/Windows. We might not need this if we disable the password and just rely on SSH.
Outstanding questions
-
It seems like that the vm name for orka as some kind of character limit which is being discussed in gitlab-org/gitlab-runner#6607 (comment 294401556) if that is true we should just update the hash length to be 10 instead of 20This was confirmed in gitlab-org/gitlab-runner#6607 (comment 294901480) a separate merge request to change the name generation should be created
Reference
Edited by Pedro Pombeiro