I’ve been playing with Github Actions for about a month, and they seem really powerful. I’m interested to know if anyone else has established full end to end deployments into cloud environments, especially if anyone has established ways to restrict who can trigger deployments, etc. I’ve been exploring the repository dispatch action as a mechanism to trigger workflows to run, but I’ve read using Github Deployments a better way to do it. Interested to see how others are managing this as well.
When using GitHub Actions workflow to build, test and deploy programs, if want to deploy to other cloud environments or cloud services, usually you can try the below ways:
If the cloud environment is hosted on a machine, generally is a virtual machine, you can install self-hosted runners on the VM to run the workflow.
Typically, most cloud services have their own CLI, you can execute the related deployment commands in the workflow to deploy your programs to the cloud services.
In the GitHub Marketplace , you also can try to search the related Actions/Apps that can deploy your programs to the cloud services.
but I’ve read using Github Deployments a better way to do it.
@brightran Thanks for the input. I’ve been looking into self-hosted runners. From what I can gather, it seems they are repository specific, which might end up causing additional overhead for our use cases.
Our actions have some cli commands as well, so we are on the right track in that regard.
I will check out the GitHub Marketplace to see if there are any pre-built actions that we can use.
In regards to deployments, I meant the Deployment API mentioned here: https://developer.github.com/v3/repos/deployments/
Thanks for your reply.
If you have any other question about GitHub Actions, feel free to contact us.