From cc7827f57a4fc8728cd23fb60acecc2072650316 Mon Sep 17 00:00:00 2001 From: Tobias Pflug Date: Fri, 1 May 2020 21:43:19 +0200 Subject: [PATCH] Update README Revamp the whole text providing info on - installation / setup via nixos module - building via nix-build - development environment via nix-shell --- README.md | 63 ++++++++++++++++++++++++++++++++++++++++++++++++------ hydra.png | Bin 0 -> 56013 bytes 2 files changed, 57 insertions(+), 6 deletions(-) create mode 100644 hydra.png diff --git a/README.md b/README.md index 568ef4c3..6ea83f7a 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,63 @@ # Hydra -Hydra is a continuous integration system based on the Nix package -manager. For more information, see the -[manual](https://hydra.nixos.org/job/hydra/master/manual/latest/download-by-type/doc/manual). +Hydra is a [Continuous Integration](https://en.wikipedia.org/wiki/Continuous_integration) service for [Nix](https://nixos.org/nix) based projects. -For development see -[hacking instructions](https://hydra.nixos.org/job/hydra/master/manual/latest/download-by-type/doc/manual#chap-hacking). +## Installation And Setup ---- +**Note**: The instructions provided below are intended to enable new users to get a simple, local installation up and running. They are by no means sufficient for running a production server, let alone a public instance. + +### Enabling The Service +Running Hydra is currently only supported on NixOS. The [hydra module](https://github.com/NixOS/nixpkgs/blob/release-20.03/nixos/modules/services/continuous-integration/hydra/default.nix) allows for an easy setup. The following configuration can be used for a simple setup that performs all builds on _localhost_ (Please refer to the [Options page](https://nixos.org/nixos/options.html#services.hydra) for all available options): + +```nix +{ + services.hydra = { + enable = true; + hydraURL = "http://localhost:3000"; + notificationSender = "hydra@localhost"; + buildMachinesFiles = []; + useSubstitutes = true; + }; +} +``` +### Creating An Admin User +Once the Hydra service has been configured as above and activate you should already be able to access the UI interface at the specified URL. However some actions require an admin user which has to be created first: + +``` +$ su - hydra +$ hydra-create-user --full-name '' \ + --email-address '' --password --role admin +``` + +Afterwards you should be able to log by clicking on "_Sign In_" on the top right of the web interface using the credentials specified by `hydra-crate-user`. Once you are logged in you can click "_Admin -> Create Project_" to configure your first project. + +## Building And Developing + +### Building Hydra + +You can build Hydra via `nix-build` using the provided [default.nix](./default.nix): +``` +$ nix-build +``` + +### Development Environment + +You can use the provided shell.nix to get a working development environment: +``` +$ nix-shell +$ ./bootstrap +$ configurePhase # NOTE: note ./configure +$ make +``` + +## Additional Resources + +- [Hydra User's Guide](https://nixos.org/hydra/manual/) +- [Hydra on the NixOS Wiki](https://nixos.wiki/wiki/Hydra) +- [hydra-cli](https://github.com/nlewo/hydra-cli) +- [Peter Simons - Hydra: Setting up your own build farm (NixOS)](https://www.youtube.com/watch?v=RXV0Y5Bn-QQ) + +## License +Hydra is licensed under [GPL-3.0](./COPYING) Icons provided free by [EmojiOne](http://emojione.com). diff --git a/hydra.png b/hydra.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7109890eb499c05744f1b538b176336b8bf09c GIT binary patch literal 56013 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 wc-YYbVKnF)97cm)p