Commit graph

9 commits

Author SHA1 Message Date
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
c3a5f8c13f Assertions, warnings, renames 2019-10-03 21:30:14 +02:00
Robert Hensing
77c492fa86 Wrap arion binary
PATH+=docker-compose, unset PYTHONPATH
2019-09-28 00:42:03 +02:00
Robert Hensing
b94174f4d3 Add arion.build, arion.eval passthru functions 2019-03-26 14:06:50 +01:00
Robert Hensing
2232038631 Execute a shell on arion exec <service>; 2019-03-21 15:15:28 +01:00
Robert Hensing
35a309097a Add support for NixOS inside containers 2019-03-05 19:41:54 +01:00
Robert Hensing
e92a0dce06 Fix integration test 2019-01-27 01:08:51 +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
c39d7db5cd Add integration test
Tests the minimal example, up command, network connectivity.
Introduces overlay.
2019-01-02 09:54:46 +01:00