Ability to push/pull from GitHub


We currently store branding (less files etc) in GitHub and manually copy them around our environments. I am looking to automate this process and would like to:

  • use octopus to push branding for a specific customer from one environment (a server) into a environment specific branch in GitHub
  • Then use octopus to pull the newly pushed branch for that customer and unpackage in the correct place on another environments servers

Does anyone know a good way of doing this? Should i be using GitHub as a Feed? Or should i be using Octopus to run Git commands on the servers to push and pull where requested?

Thanks in advance

Hi @martin-kerr

There are lots of options here. You could certainly use GitHub as a Feed.

However, the way that works is that it looks for packages in your GitHub repositories (for example https://github.com/OctopusDeploy/Calamari/releases) that are bundled up into archives (.zip/.tar.gz for example) and it pulls those packages and deploys them.

So unless you’re actually bundling your static files into archives, that may not be the easiest option.

Another very simple option would be to use the community step template git pull shown here: https://github.com/OctopusDeploy/Calamari/releases - This gives you the option to deploy different branches and just use git to pull your files down just like you might already do manually.