about summary refs log tree commit diff
path: root/tools/nixery/server
AgeCommit message (Collapse)AuthorFilesLines
2019-09-02 feat(server): Add configuration option for Nix build timeoutsVincent Ambo2-6/+11
Adds a NIX_TIMEOUT environment variable which can be set to a number of seconds that is the maximum allowed time each Nix builder can run. By default this is set to 60 seconds, which should be plenty for most use-cases as Nixery is not expected to be performing builds of uncached binaries in most production cases. Currently the errors Nix throws on a build timeout are not separated from other types of errors, meaning that users will see a generic 500 server error in case of a timeout. This fixes #47
2019-08-17 fix(server): Sort requested packages in image name & specVincent Ambo1-3/+13
Before this change, Nixery would pass on the image name unmodified to Nix which would lead it to cache-bust the manifest and configuration layers for images that are content-identical but have different package ordering. This fixes #38.
2019-08-16 feat(server): add iana-etc and cacert to the shell convenience packageFlorian Klink1-1/+1
These probably should be part of every container image by default, but adding it to the "shell" convenience name probably is our best bet for now.
2019-08-14 chore(server): Add 'go vet' to build processVincent Ambo1-0/+8
2019-08-14 fix(server): Print correct project name during startupVincent Ambo1-1/+1
They grow up so fast :')
2019-08-14 feat(builder): Implement build cache for manifests & layersVincent Ambo3-42/+152
Implements a cache that keeps track of: a) Manifests that have already been built (for up to 6 hours) b) Layers that have already been seen (and uploaded to GCS) This significantly speeds up response times for images that are full or partial matches with previous images served by an instance.
2019-08-14 refactor(server): Extract build logic into separate moduleVincent Ambo3-304/+365
This module is going to get more complex as the implementation of #32 progresses.
2019-08-14 style: Apply nixfmt to trivial Nix filesVincent Ambo1-2/+2
ALl the ones except for build-image.nix are considered trivial. On the latter, nixfmt makes some useful changes but by-and-large it is not ready for that code yet.
2019-08-14 refactor(server): Use wrapper script to avoid path dependencyVincent Ambo2-6/+16
Instead of requiring the server component to be made aware of the location of the Nix builder via environment variables, this commit introduces a wrapper script for the builder that can simply exist on the builders $PATH. This is one step towards a slightly nicer out-of-the-box experience when using `nix-build -A nixery-bin`.
2019-08-14 refactor: Move registry server to a subfolderVincent Ambo3-0/+619