Commit graph

142 commits

Author SHA1 Message Date
Robert Hensing
fbf57b4489
Merge pull request #31 from hercules-ci/fix-image-nixBuild-default
Fix image nix build default
2019-03-29 09:04:53 +01:00
Domen Kožar
b279f3a666
Merge pull request #32 from hercules-ci/fix-eval-service-self-ref
Fix eval-service.nix module _file, key
2019-03-29 09:33:34 +07:00
Robert Hensing
c1e2e726c6 Fix arion exec
The service name was still hardcoded.
2019-03-28 13:09:12 +01:00
Robert Hensing
aa52a4e198 Fix eval-service.nix module _file, key 2019-03-28 11:00:18 +01:00
Robert Hensing
f789d163cc Add error context to image building functions 2019-03-27 22:04:31 +01:00
Robert Hensing
cca1f68a4f By default only build an image if service.image is set 2019-03-27 22:04:08 +01:00
Robert Hensing
000b938893
Merge pull request #28 from hercules-ci/exec-shell
Exec shell
2019-03-22 06:43:28 +01:00
Robert Hensing
a171b3d080 Support boot.tmpOnTmpfs without privileges 2019-03-21 15:34:51 +01:00
Robert Hensing
2232038631 Execute a shell on arion exec <service>; 2019-03-21 15:15:28 +01:00
Robert Hensing
7cf74389ad Add build.extendedInfo to service
To let services write to the x-arion section.
2019-03-21 15:15:28 +01:00
Robert Hensing
4ce69bbfba build.image: Add nix store db, maxLayers = 100 2019-03-11 15:04:34 +01:00
Robert Hensing
c6374e0931 nixos-init.nix: Remove /tmp -o noexec 2019-03-11 15:04:34 +01:00
Robert Hensing
ac49df440f Add service.devices option 2019-03-11 15:04:34 +01:00
Robert Hensing
2f11979597 Add service.capabilities option 2019-03-11 15:04:34 +01:00
Robert Hensing
ac012a1ad1 formatting 2019-03-11 15:04:34 +01:00
Robert Hensing
fb62d75d0b container-systemd.nix: Disable Nix daemon by default 2019-03-11 15:04:34 +01:00
Robert Hensing
9922cb6b82 Add image building and loading 2019-03-11 15:03:27 +01:00
Robert Hensing
ed2d58c8bd Add read-only option docker-compose.evaluatedServices 2019-03-11 14:55:55 +01:00
Robert Hensing
00f7b3e711 Make the service name available to the service config 2019-03-11 14:44:18 +01:00
Robert Hensing
97d58f7bd3 Rename nixos.useInit -> nixos.useSystemd 2019-03-06 12:49:39 +01:00
Robert Hensing
a5e08b23a3 Add service.useHostNixDaemon 2019-03-05 19:42:32 +01:00
Robert Hensing
35a309097a Add support for NixOS inside containers 2019-03-05 19:41:54 +01:00
Serhii Khoma
0637a1ace9 Add and fix some service fields
I had to do a manual rebase.
The hard work was done by srghma. Thanks!
2019-03-04 00:33:53 +01:00
Robert Hensing
cf562d6234 Move build.service option to top 2019-03-04 00:13:57 +01:00
Robert Hensing
dc762a79bf Use the right string type 2019-03-04 00:13:01 +01:00
Robert Hensing
ccaac02a87 Add doc/manual, tweak README 2019-03-03 23:42:40 +01:00
Robert Hensing
c03ca68795 Move uid and customNixRootPath into config.host module
Also make the type of host.uid consistently int.
2019-02-13 18:36:10 +07:00
Robert Hensing
359c8b601d Move modules into modules/{composition,service} 2019-02-13 17:33:19 +07:00
Serhii Khoma
59f97876e3 feat: custom nix store 2019-02-13 11:04:17 +02:00
Serhii Khoma
57d5370e76 feat: docker-config -> add missing fields -> links, external_links, extra_hosts 2019-02-03 22:36:26 +02:00
Serhii Khoma
20651e8739 feat: docker-config -> add missing fields -> priviliged and hostname 2019-02-03 22:36:26 +02:00
Robert Hensing
2324223360
Merge pull request #17 from hercules-ci/fix-other-linux-bin-sh
Replace /bin/sh, /usr/bin/env mounts by symlinks
2019-01-28 16:09:50 +01:00
Robert Hensing
89f5622f2e Replace /bin/sh, /usr/bin/env mounts by symlinks
This makes the arion-base image compatible with hosts other than
NixOS.
2019-01-26 23:50:05 +01:00
Robert Hensing
c490768e29 Always ignore PATH docker-compose
Arion used to prefer an external docker-compose, but that exposes
users to potential incompatibilities.

For example, the docker-compose on Ubuntu 18.04 (LTS) doesn't seem
to handle Dockerfiles in the Nix store properly.
2019-01-26 23:41:42 +01:00
Robert Hensing
23ee554f2f Use the word 'composition' where applicable.
Also adds some documentation to celebrate that we can now - with ease - verbally
distinguish between composition-level modules and service-level modules.
2019-01-20 17:29:15 +01:00
Robert Hensing
8dfb1c01ce
Merge pull request #13 from hercules-ci/fix-import-from-derivation
Make import from derivation work again
2019-01-20 17:13:41 +01:00
Robert Hensing
313a65c914 Make import from derivation work again
Broken by f503e556ea
Fixes #12

Cause of the problem:
nix-instantiate uses the store in read-only mode by default, unlike
nix-build.
Import from derivation requires a read-write store, causing the
command to fail with a (bad) error message. This only happened when
the derivation wasn't already built. This did not occur often
because commands like arion up use nix-build and therefore typically
mask the problem on subsequent invocations.

To reproduce the problem, garbage collect, then arion ps.
2019-01-20 15:18:29 +01:00
Sergei Khoma
380ae56e4f feat: docker-config -> add missing fields 2019-01-13 16:24:56 +02:00
Robert Hensing
f503e556ea Do not build for commands that do not need images 2018-12-23 13:00:04 +01:00
Robert Hensing
0f6a1bd41f Doc improvements 2018-12-18 14:53:37 +01:00
zimbatm
980faa4ea0
fixes shellcheck issues
mainly escaping
2018-12-18 10:47:42 +01:00
Robert Hensing
dc294b034e Code taken from Hercules CI repo
- renamed to Arion
 - minor changes
 - readme WIP
2018-12-17 19:08:38 +01:00