refactor(nixery): Adapt Nix build instructions for readTree
This does not fully change the build structure of Nixery to be depot-compatible yet, but should allow most targets to be built in depot CI. This contains some hacks to work around surface incompatibilities which we'll clear away later. Change-Id: I84e7734334abbe299983956f528c0897f49fa8c2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5485 Tested-by: BuildkiteCI Reviewed-by: tazjin <tazjin@tvl.su>
This commit is contained in:
parent
e459a6cf3b
commit
70779f4e65
2 changed files with 11 additions and 7 deletions
|
@ -12,7 +12,14 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
{ pkgs ? import ./nixpkgs-pin.nix
|
# This function header aims to provide compatibility between builds of
|
||||||
|
# Nixery taking place inside/outside of the TVL depot.
|
||||||
|
#
|
||||||
|
# In the future, Nixery will transition to using //nix/buildGo for its
|
||||||
|
# build system and this will need some major adaptations to support
|
||||||
|
# that.
|
||||||
|
{ depot ? { nix.readTree.drvTargets = x: x; }
|
||||||
|
, pkgs ? import <nixpkgs> {}
|
||||||
, preLaunch ? ""
|
, preLaunch ? ""
|
||||||
, extraPackages ? []
|
, extraPackages ? []
|
||||||
, maxLayers ? 20
|
, maxLayers ? 20
|
||||||
|
@ -27,7 +34,8 @@ let
|
||||||
# Current Nixery commit - this is used as the Nixery version in
|
# Current Nixery commit - this is used as the Nixery version in
|
||||||
# builds to distinguish errors between deployed versions, see
|
# builds to distinguish errors between deployed versions, see
|
||||||
# server/logs.go for details.
|
# server/logs.go for details.
|
||||||
nixery-commit-hash = args.commitHash or pkgs.lib.commitIdFromGitRepo ./.git;
|
gitDir = if builtins.pathExists ./.git then ./.git else ../../.git;
|
||||||
|
nixery-commit-hash = args.commitHash or pkgs.lib.commitIdFromGitRepo gitDir;
|
||||||
|
|
||||||
# Go implementation of the Nixery server which implements the
|
# Go implementation of the Nixery server which implements the
|
||||||
# container registry interface.
|
# container registry interface.
|
||||||
|
@ -46,7 +54,7 @@ let
|
||||||
"-ldflags=-s -w -X main.version=${nixery-commit-hash}"
|
"-ldflags=-s -w -X main.version=${nixery-commit-hash}"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
in rec {
|
in depot.nix.readTree.drvTargets rec {
|
||||||
# Implementation of the Nix image building logic
|
# Implementation of the Nix image building logic
|
||||||
nixery-prepare-image = import ./prepare-image { inherit pkgs; };
|
nixery-prepare-image = import ./prepare-image { inherit pkgs; };
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
import (builtins.fetchTarball {
|
|
||||||
url = "https://github.com/NixOS/nixpkgs/archive/2deb07f3ac4eeb5de1c12c4ba2911a2eb1f6ed61.tar.gz";
|
|
||||||
sha256 = "0036sv1sc4ddf8mv8f8j9ifqzl3fhvsbri4z1kppn0f1zk6jv9yi";
|
|
||||||
}) {}
|
|
Loading…
Reference in a new issue