Commit graph

139 commits

Author SHA1 Message Date
Robert Hensing
14b8d91ce0 Merge remote-tracking branch 'origin/main' into fix/boot-tmpfs 2023-12-05 17:40:21 +01:00
Jasper Chan
6881b440b6 add support for stop_grace_period 2023-11-06 21:58:30 -08:00
MartinNikov
e9ebb6f79f
fix(modules/service/nixos-init): Use boot.tmp.useTmpfs option instead of boot.tmpOnTmpfs
This change fixes the following warning:

```
trace: Obsolete option `boot.tmpOnTmpfs' is used. It was renamed to `boot.tmp.useTmpfs'.
```

This option was renamed in this PR:
https://github.com/NixOS/nixpkgs/pull/204534
2023-08-22 14:25:38 +03:00
LoveIsGrief
3588b01e13
test: Add tests for using build.context
These are simple tests to make sure that the generated docker-compose.json
looks like it should. This means has a build.context and does NOT
have an image defined - the image is built when starting the service.
2023-08-20 16:42:48 +02:00
LoveIsGrief
638c4b8e55
fix: services.<name>.service.build.context
One could declare it, but it was unceremoniously ignored.
A "localhost/" image was created with pretty much nothing in it
 and it couldn't be launched.

The cause was services.<name>.service.image being always set
 and subsequently thugs services.<name>.image.nixBuild being truthy.
That would build an image and write the services.<name>.image field
 in the docker-compose.json. It leads to the build.context being
ignored and the service failing.

This was solved by only writing services.<name>.service.image when
 services.<name>.service.build.context is not set.
services.<name>.image.nixBuild is additionally set to false when
the context is set.

Related to #208
2023-08-20 15:20:34 +02:00
Nikita Pedorich
16f9888732
Add missing link_local_ips and priority 2023-07-20 00:17:02 +09:00
Nikita Pedorich
b175f45613
Improve service.networks 2023-07-20 00:12:09 +09:00
Robert Hensing
2ef502c912 Fix doc links 2023-07-19 15:50:08 +02:00
Qaif Shaikh
5ba2990f72 Try with lib.types.unspecified 2023-03-02 13:41:53 -06:00
Qaif Shaikh
cb13795408 Use service submodule for volumes type 2023-02-28 16:52:18 -06:00
Qaif Shaikh
de9930171a Add support for volumes to mount host paths 2023-02-23 13:04:59 -06:00
Robert Hensing
a38db89ef8 Add image.fakeRootCommands 2023-02-21 00:37:56 +01:00
Robert Hensing
d1cc2b2a7d Touch up the option docs to be proper markdown 2023-01-13 18:07:34 +01:00
Robert Hensing
3ac9c63a01 Remove generated committed code, update 2023-01-13 18:06:55 +01:00
Robert Hensing
cfec8ff678 Restore compatibility with lens-aeson <1.2 2022-12-06 15:45:05 +01:00
Robert Hensing
b9525cef7c aeson: 1 -> 2 2022-12-02 11:34:29 +00:00
Robert Hensing
890f9d9428 flake.nix: Update nixpkgs 2022-12-02 10:25:01 +00:00
Robert Hensing
8d9824c622 Remove builtins.trace calls 2022-06-09 02:04:51 +02:00
Robert Hensing
037c87837f Add default network with name = project.name 2022-06-09 01:47:16 +02:00
Robert Hensing
ca785e548b Add options below networks 2022-06-09 01:47:16 +02:00
Robert Hensing
c8944a2871 Extract dockerComposeRef and link into new lib.nix 2022-06-09 01:20:09 +02:00
Robert Hensing
42146bb0b2 Adjust docs 2022-06-09 01:18:22 +02:00
Robert Hensing
d90c7dc326 project.name: nullOr str -> str 2022-06-01 00:06:33 +02:00
t4ccer
fb5ab7b76f
Move healthcheck options to healthcheck submodule 2022-04-27 19:43:16 -06:00
t4ccer
69b9109dea
Define module for detailed depends_on options 2022-04-27 14:23:25 -06:00
t4ccer
cf20442a7a
Add service.healthcheck.start_period option 2022-04-27 13:54:12 -06:00
t4ccer
ec8ef96d52
Add service.healthcheck and extend service.depends_on 2022-04-26 18:35:08 -06:00
Robert Hensing
0ee76740d0 image.name: Default to localhost/$name 2022-04-23 23:20:33 +02:00
Robert Hensing
2c10b297ad Disable _module.args docs 2022-04-08 00:03:13 +02:00
Robert Hensing
baa515d88e Fix warnings 2022-04-07 22:55:22 +02:00
Robert Hensing
e263614045 Add NixOS module 2021-11-02 12:25:00 +01:00
Tom Prince
ab13e0a3f4 Fix pkgs of evaluated configuration. 2021-08-25 01:52:02 -06:00
Robert Hensing
2b46a9b5f6 Format 2021-05-31 16:53:57 +02:00
Robert Hensing
dcc5b1e3ce Test and fix that we only load images when needed 2021-05-31 16:53:57 +02:00
Robert Hensing
144864d61c Drop NixOS 19.03 2021-05-31 16:53:57 +02:00
Robert Hensing
1a24fe9639 Warn when DynamicUser is used without SYS_ADMIN 2021-05-31 16:53:57 +02:00
Robert Hensing
286d56a83c Add test with podman docker socket backend 2021-05-31 16:53:57 +02:00
Robert Hensing
e0e7531f7d Add image.enableRecommendedContents for /bin/sh and such 2021-05-31 16:53:57 +02:00
Robert Hensing
48d3d4b0d7 Use image.includeStorePaths = false, no more "arion base image"
The arion base image was a poor substitute for the customization
layer that only worked for some images.

By modifying dockerTools to export only the customization layer,
we can support arbitrary root contents.
2021-05-31 16:53:57 +02:00
Robert Hensing
ad41d1e39b Use streamLayeredImage for base image 2021-05-24 12:28:32 +02:00
lunik1
aed2c40e77
Add service.dns 2021-04-10 00:51:40 +01:00
Robert Hensing
bb23a55c8a Improve labels example 2021-01-22 10:39:34 +01:00
Robert Hensing
35cb7adfb5 service.labels: Bad example 2021-01-20 18:20:07 +01:00
Robert Hensing
38048ada2c Add service.labels 2021-01-20 18:11:52 +01:00
Robert Hensing
700297748d Support --no-ansi, --compatibility, --log-level options 2020-10-11 12:47:28 +02:00
Robert Hensing
b959ab492d Move name -> project.name 2020-10-11 12:02:58 +02:00
Robert Hensing
92c389fab5 Fix tests 2020-10-10 22:14:22 +02:00
Robert Hensing
df0ec2eb50 Add name option for project/composition name 2020-10-10 22:09:35 +02:00
Robert Hensing
067ce26177 Use dockerTools.streamLayeredImage if available
Technically this opens a new attack vector, but if you don't trust
the code you're deploying, you should already have taken precautions
because of nix-shell, direnv etc. This just adds arion to that list.
2020-10-02 11:52:35 +02:00
Robert Hensing
88c361c81c Rename getDockerImages 2020-10-02 11:52:35 +02:00