Search code examples
automationcontinuous-integrationgithub-actionsgithub-actions-runners

Are there any downsides to installing packages manually on GitHub runners?


I have been trying workflows on GitHub and wanted to set one up to run skaffold commands. I need minikube, helm and skaffold installed.

Most examples that I have checked out run other actions, such as github-action-skaffold , which after trying it out, doesn't have support for all skaffold commands and options and it has a bug when running skaffold test. I tried manually installing it on ubuntu-20-04, like so:

- name: Install Skaffold
  run: |
    curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/latest/skaffold-linux-amd64 && \
    sudo install skaffold /usr/local/bin/

- name: Build
  run: skaffold build

And everything is working fine. Is there anything that I am missing out on when doing this? Using the action would be a step less, as it can both install skaffold and run a command, but that is not a deal breaker.


Solution

  • In my opinion, your method is fine. As far as you have two lines of code with a meaningful name, your CI code is OK. (Probably make sense to fix Skaffold version instead of using 'latest').