Commit graph

221 commits

Author SHA1 Message Date
Robert Hensing
52dfbeccb1 Adapt to 20.03
- Migrate tests to python-based runner for newer nixpkgs.
 - Adaptations for newer nginx module used in tests
 - Increase memory size for tests
2020-03-19 12:12:09 +01:00
Matt Schreiber
5bd7ea2aa3 Clean up "work" directory before "arion up"
to ensure that the subtests defined in tests/arion-test/default.nix do
not inadvertently re-use the arion-compose.nix, arion-pkgs.nix, etc. set
up during the _previous_ subtest.

Previously, each subtest attempted to clean itself up by doing
the following:

    cd work && [...snip...] && rm -rf work

This removes the directory "work/work", while leaving "work" itself
intact.  Subsequent subtests would then run:

    cp -r ${../../examples/some-example} work

thereby copying the contents of "some-example" into "work/work" rather
than into "work".

As a result, all subtests but the first simply reapplied the Arion
configuration set up by the first subtest, because this configuration
persisted within the "work" directory used as the working directory for
"arion up", etc.

This commit corrects the issue by:

    1. Removing "work" rather than "work/work", and
    2. Adding certain flags to the "cp" invocation to ensure it reliably
       copies files into "work" rather than "work/work": (a) "-f"
       ("--force"), to overwrite destination files if they already
       exist, and (b) "-T" ("--no-target-directory") to copy the
       *contents* of the source directory to "work" rather than copying
       the source directory itself as a subdirectory of "work".

Additionally, this commit factors out code common to all subtests into a
reusable subtest generator coderef.
2020-03-19 12:04:04 +01:00
Robert Hensing
41d3fb490c sources.nixpkgs: 19.03 -> 20.03 2020-03-19 12:04:04 +01:00
Robert Hensing
1778d76117 arion-base: buildLayeredImage -> buildImage to avoid build error
buildLayeredImage doesn't work when the number of nix store layers is 0.
This may be fixed by pull https://github.com/NixOS/nixpkgs/pull/80921/files
but meanwhile, plain buildImage will do the job.
2020-02-24 00:46:26 +01:00
Robert Hensing
77b89cb424 Merge branch 'fix-doc-formatting' 2019-10-29 13:02:49 +01:00
Robert Hensing
0a8f8e7fb8 Fix doc formatting 2019-10-29 12:52:00 +01:00
Robert Hensing
24503bcbe5 Fix warnings 2019-10-29 11:04:25 +01:00
Robert Hensing
697b3a27bb
Update index.adoc 2019-10-28 23:52:59 +01:00
Domen Kožar
8f2b953701
Merge pull request #87 from hercules-ci/enable-darwin-build
ci.nix: Enable darwin build
2019-10-27 11:50:38 +01:00
Robert Hensing
c38c374fa6 Work around Nix enforcing cross-system fetch bug
https://github.com/hercules-ci/hercules-ci-agent/issues/168
2019-10-27 11:42:40 +01:00
Robert Hensing
dda66e104e Fix test 2019-10-26 15:37:24 +02:00
Robert Hensing
4cc75b7cc5 ci.nix: Enable darwin build 2019-10-26 15:27:32 +02:00
Robert Hensing
3580fef52e
Update README.asciidoc 2019-10-25 13:29:11 +02:00
bors[bot]
1ed2161bcd
Merge #85
85: Use antora for documentation r=roberth a=domenkozar

Fixes #10

Co-authored-by: Domen Kožar <domen@dev.si>
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
Co-authored-by: Robert Hensing <robert@roberthensing.nl>
2019-10-24 23:13:58 +00:00
Robert Hensing
4a12286e92 docs: Fake repo for CI 2019-10-25 01:10:01 +02:00
Robert Hensing
da83692996 docs: Use lib.evalModules 2019-10-25 01:10:01 +02:00
Robert Hensing
60f3f34527 Rename module-composition -> modules 2019-10-25 00:32:59 +02:00
Robert Hensing
2856bbbe7f
Update antora-playbook.yml 2019-10-25 00:13:41 +02:00
Robert Hensing
09f324bfe0
Update README.asciidoc 2019-10-25 00:13:13 +02:00
Domen Kožar
5140cf0a09
Use antora for documentation 2019-10-25 00:11:35 +02:00
Domen Kožar
4444cf1856
nix/overlay.nix: fix eval 2019-10-24 16:25:57 +02:00
Robert Hensing
9fedd0e152
Merge pull request #74 from hercules-ci/release-prep
Release prep, release
2019-10-07 11:27:59 +02:00
Robert Hensing
cc07068beb Bump to v0.1.0.0 2019-10-04 20:18:25 +02:00
Robert Hensing
e21b1b4e75 Add nixos-19.09 2019-10-04 19:29:09 +02:00
Robert Hensing
0ab8ad6bdd Update changelog 2019-10-04 19:09:52 +02:00
Robert Hensing
7749eb2ef9 Add cabal check to ci, build strictly (once) 2019-10-04 19:09:29 +02:00
Robert Hensing
41d4fefd64 Add releaser 2019-10-04 17:24:01 +02:00
Robert Hensing
80a4dbe8b9 Build matrix 2019-10-04 17:16:41 +02:00
Robert Hensing
6fb0b1ec66 Update nixpkgs via added niv 2019-10-04 16:37:39 +02:00
Robert Hensing
535feae97a
Merge pull request #73 from hercules-ci/various-cleanups
Various cleanups
2019-10-04 12:14:35 +02:00
Robert Hensing
c8f7f5a6d3 Rename, refactor, hide build.imagesToLoad
imagesToLoad is not the right api for non-service images.
2019-10-03 21:55:58 +02:00
Robert Hensing
c3a5f8c13f Assertions, warnings, renames 2019-10-03 21:30:14 +02:00
Robert Hensing
6abcc26a76 Add run-arion-quick + HACKING.md 2019-10-03 17:56:06 +02:00
Robert Hensing
5f56a0846a Make service.{host, composition} readOnly 2019-10-03 17:54:48 +02:00
Robert Hensing
d0815c4393 Add lib and pkgs to repl
Side effect: expose them in eval-composition.
2019-10-03 17:54:07 +02:00
Robert Hensing
83a9d4668f Use proper submodule for services 2019-10-03 17:53:13 +02:00
Robert Hensing
8d3e68c167
Merge pull request #60 from hercules-ci/arion-hs
Arion hs
2019-09-30 10:49:49 +02:00
Robert Hensing
c88d2bb9cf docker load arion-base-image 2019-09-29 23:53:55 +02:00
Robert Hensing
02d319acf6 Expose composition to services 2019-09-29 23:53:55 +02:00
Robert Hensing
a90190fc9e Fix stderr streaming
Just good old-fashioned handles.
2019-09-29 22:44:33 +02:00
Robert Hensing
286d0ae084 Rewire nix 2019-09-28 16:27:07 +02:00
Robert Hensing
adc2e34deb Remove the bash implementation 2019-09-28 15:27:19 +02:00
Robert Hensing
3918799b9a Fix live-* script cabal file references 2019-09-28 14:53:46 +02:00
Robert Hensing
0474544d0b Implement defaultExec 2019-09-28 14:25:41 +02:00
Robert Hensing
02c0f80b02 Implement uid parameter 2019-09-28 00:53:11 +02:00
Robert Hensing
77c492fa86 Wrap arion binary
PATH+=docker-compose, unset PYTHONPATH
2019-09-28 00:42:03 +02:00
Robert Hensing
1fe10c076d Implement image loading, use it instead of arion-base 2019-09-27 23:59:08 +02:00
Robert Hensing
fcf270c80c Make arion repl work 2019-09-27 21:45:06 +02:00
Robert Hensing
b9488b7f49 Make some commands work 2019-09-27 21:01:57 +02:00
Robert Hensing
c0e995043a Fix unit tests to reflect updated master 2019-09-27 12:44:24 +02:00