44 lines
1.0 KiB
Nix
44 lines
1.0 KiB
Nix
{
|
|
description = "Repo delivery middleware";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
|
};
|
|
|
|
outputs = { self, nixpkgs }:
|
|
let
|
|
systems = [ "x86_64-linux" "aarch64-linux" ];
|
|
forAllSystems = f: nixpkgs.lib.genAttrs systems (system: f {
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
});
|
|
in
|
|
{
|
|
packages = forAllSystems ({ pkgs }: {
|
|
default = pkgs.buildGoModule {
|
|
pname = "repo-delivery-middleware";
|
|
version = "0.1.0";
|
|
src = ./src;
|
|
vendorHash = "sha256-CVycV7wxo7nOHm7qjZKfJrIkNcIApUNzN1mSIIwQN0g=";
|
|
};
|
|
docker-image = pkgs.dockerTools.streamLayeredImage {
|
|
name = "repo-delivery-middleware";
|
|
tag = "latest";
|
|
contents = [ self.packages.${pkgs.system}.default ];
|
|
config = {
|
|
Entrypoint = [ "${self.packages.${pkgs.system}.default}/bin/repo-delivery-middleware" ];
|
|
ExposedPorts."8080/tcp" = {};
|
|
};
|
|
};
|
|
});
|
|
|
|
devShells = forAllSystems ({ pkgs }: {
|
|
default = pkgs.mkShell {
|
|
packages = with pkgs; [
|
|
go
|
|
gopls
|
|
];
|
|
};
|
|
});
|
|
};
|
|
}
|