hercules-ci / support

User feedback, questions and our public roadmap. help@hercules-ci.com
5 stars 1 forks source link

Instructions for deploying without nixops #15

Closed offlinehacker closed 5 years ago

offlinehacker commented 5 years ago

Currently only instructions for deploying with nixops are provided. Since i'm more fan of terraform myself, as nixops does not provide all cloud features, it would be nice to include instructions how to provision without nixops. Configuration i use is very similar to nixops one, with a few differences:

{ modulesPath, ... }:

let
  hercules-ci-agent =
    builtins.fetchTarball "https://github.com/hercules-ci/hercules-ci-agent/archive/stable.tar.gz";
in {
  imports = [
    (hercules-ci-agent + "/profile.nix")
  ];

  services.hercules-ci-agent.clusterJoinTokenPath = "/var/keys/agent-token";
  users.extraUsers.hercules-ci-agent.extraGroups = [ "keys"  ];

Here is terraform example on how to deploy hercules-ci agent on google cloud:

https://github.com/xtruder/tf-hercules-ci-agent-gcloud

domenkozar commented 5 years ago

Nice! We plan to support terraform, but https://github.com/hercules-ci/hercules-ci-agent/issues/33 as the absolute minimum.

roberth commented 5 years ago

NixOS-only instructions are now available.

Instructions with a manual configuration file are also available. The cache setup instructions are not up to par yet for this one. Ping us if you need help.

(For nix-darwin, follow the instructions in the web app: https://hercules.ci.com/dashboard)

offlinehacker commented 5 years ago

You could integrate instructions for terraform, as for many real deployments nixops is insufficient. I'm going to close this issue, as I think it's fixed now. Thanks 🙂