Skip to content

Commit

Permalink
use flake for compliment
Browse files Browse the repository at this point in the history
  • Loading branch information
AwesomeQubic committed Feb 16, 2024
1 parent 94f4ac1 commit c56c3ff
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 6 deletions.
16 changes: 10 additions & 6 deletions bin/complement
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,16 @@ RESULTS_FILE="$3"

OCI_IMAGE="complement-conduit:dev"

env \
-C "$(git rev-parse --show-toplevel)" \
docker build \
--tag "$OCI_IMAGE" \
--file complement/Dockerfile \
.
#env \
# -C "$(git rev-parse --show-toplevel)" \
# docker build \
# --tag "$OCI_IMAGE" \
# --file complement/Dockerfile \
# .

nix build .#complement-image
docker load < result


# It's okay (likely, even) that `go test` exits nonzero
set +o pipefail
Expand Down
52 changes: 52 additions & 0 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -193,11 +193,63 @@
];
};
};

createComplementImage = pkgs: base:
pkgs.dockerTools.buildImage {
name = "complement-conduit:dev";
tag = "dev";

fromImage = base;

copyToRoot = pkgs.stdenv.mkDerivation {
name = "complement_data";
src = nix-filter {
root = ./.;
include = [
"complement/caddy.json"
"complement/conduwuit-complement.toml"
];
};
phases = [ "unpackPhase" "installPhase" ];
installPhase = ''
mkdir -p $out
cp $src/complement/conduwuit-complement.toml $out/conduit.toml
cp $src/complement/caddy.json $out/caddy.json
'';
};

config = {

Cmd = [
"${pkgs.bash}/bin/sh"
"-c"
''${pkgs.lib.getExe pkgs.gnused} -i "s/#server_name = \"your.server.name\"/server_name = \"''${SERVER_NAME}\"/g" conduit.toml &&''
''${pkgs.lib.getExe pkgs.gnused} -i "s/your.server.name/''${SERVER_NAME}/g" caddy.json &&''
"${pkgs.lib.getExe pkgs.caddy} start --config caddy.json > /dev/null &&"
] ++ base.buildArgs.config.Cmd;

Volumes = { "/complement" = { }; };

Env = [
"SSL_CERT_FILE=/complement/ca/ca.crt"
"SERVER_NAME=localhost"
"CONDUIT_CONFIG=/conduit.toml"
];

ExposedPorts = {
"8008/tcp" = {};
"8448/tcp" = {};
};

};

};
in
{
packages = {
default = package pkgsHost;
oci-image = mkOciImage pkgsHost self.packages.${system}.default;
complement-image = createComplementImage pkgsHost self.packages.${system}.oci-image;
}
//
builtins.listToAttrs
Expand Down

0 comments on commit c56c3ff

Please sign in to comment.