big refactor
This commit is contained in:
73
flake.nix
73
flake.nix
@@ -1,8 +1,8 @@
|
||||
{
|
||||
description = "test";
|
||||
description = "Policy UI - Nuxt.js application";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
@@ -10,15 +10,68 @@
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
nodePkgs = pkgs.nodePackages;
|
||||
pname = "policy-ui";
|
||||
version = "1.0.0";
|
||||
src = ./.;
|
||||
in
|
||||
{
|
||||
packages.policy-ui = pkgs.stdenv.mkDerivation {
|
||||
inherit pname version src;
|
||||
|
||||
in {
|
||||
devShell =
|
||||
pkgs.mkShell {
|
||||
buildInputs = with pkgs;
|
||||
[
|
||||
nodejs
|
||||
vue-language-server
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
pkgs.pnpm
|
||||
pkgs.pnpmConfigHook
|
||||
pkgs.nodejs
|
||||
];
|
||||
|
||||
pnpmDeps = pkgs.fetchPnpmDeps {
|
||||
inherit pname version src;
|
||||
pnpm = pkgs.pnpm;
|
||||
fetcherVersion = 3;
|
||||
# Placeholder hash - run nix build to get the correct hash
|
||||
hash = "sha256-b9rYE09uEFLoiymS6PUkWJvOwMnniBbvPbFp6xu+PtM=";
|
||||
};
|
||||
|
||||
env.NUXT_TELEMETRY_DISABLED = 1;
|
||||
|
||||
buildPhase = ''
|
||||
pnpm build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r .output/* $out
|
||||
'';
|
||||
};
|
||||
|
||||
packages.dockerImage = pkgs.dockerTools.buildLayeredImage {
|
||||
name = "policy-ui";
|
||||
contents = [
|
||||
pkgs.nodejs
|
||||
self.packages.${system}.policy-ui
|
||||
];
|
||||
config = {
|
||||
Cmd = [ "node" "/server/index.mjs" ];
|
||||
Env = {
|
||||
NODE_ENV = "production";
|
||||
PORT = "3000";
|
||||
HOST = "0.0.0.0";
|
||||
NUXT_TELEMETRY_DISABLED = "1";
|
||||
};
|
||||
ExposedPorts = [ "3000/tcp" ];
|
||||
};
|
||||
};
|
||||
packages.default = self.packages.${system}.policy-ui;
|
||||
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
nodejs
|
||||
pnpm
|
||||
kubernetes-helm
|
||||
];
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user