Skip to content
Snippets Groups Projects
Verified Commit 42cefe9d authored by Volker Schukai's avatar Volker Schukai :alien:
Browse files

fix: wip new pipeline

parent 1a3e6378
No related branches found
No related tags found
No related merge requests found
...@@ -20,55 +20,52 @@ ...@@ -20,55 +20,52 @@
pkgs' = import nixpkgs { pkgs' = import nixpkgs {
inherit system; inherit system;
}; };
in {
packages = rec {
monster = let
commonPck = devFlakes.packages.${system}.common;
commonScript = commonPck + "/bin/common";
in
pkgs'.callPackage ./nix/packages/monster.nix {inherit commonScript;};
versionPath = version.packages.${system}.version; default = monster;
versionBin = versionPath + "/bin/version"; };
script-task = pkgs'.callPackage ./nix/scripts/go-task.nix {inherit commonScript versionBin;};
script-run-ci-tests = pkgs'.callPackage ./nix/scripts/run-ci-tests.nix {inherit commonScript;}; devShells = {
default = let
ciJobToken = builtins.getEnv "CI_JOB_TOKEN";
script-clean-up = pkgs'.callPackage ./nix/scripts/clean-up.nix {inherit commonScript;}; commonPck = devFlakes.packages.${system}.common;
script-deploy = pkgs'.callPackage ./nix/scripts/deploy.nix {inherit commonScript versionBin updateChangelogScript;}; commonScript = commonPck + "/bin/common";
script-update-changelog = pkgs'.callPackage ./nix/scripts/update-changelog.nix {inherit commonScript versionBin;};
updateChangelogScript = script-update-changelog + "/bin/update-changelog";
rootPath = ./.; versionPath = version.packages.${system}.version;
versionBin = versionPath + "/bin/version";
# commonPck = devFlakes.packages.${system}.common; script-task = pkgs'.callPackage ./nix/scripts/go-task.nix {inherit commonScript versionBin;};
commonScript = "/bin/common";
commonPackages = import ./nix/config/common-packages.nix {inherit pkgs';}; script-clean-up = pkgs'.callPackage ./nix/scripts/clean-up.nix {inherit commonScript;};
script-deploy = pkgs'.callPackage ./nix/scripts/deploy.nix {inherit commonScript versionBin updateChangelogScript;};
script-update-changelog = pkgs'.callPackage ./nix/scripts/update-changelog.nix {inherit commonScript versionBin;};
updateChangelogScript = script-update-changelog + "/bin/update-changelog";
extendedPackages = [ rootPath = ./.;
script-task
];
scriptPackages = [ commonPackages = import ./nix/config/common-packages.nix {inherit pkgs';};
versionPath
];
gitlabPackages = extendedPackages = [
[ script-task
script-run-ci-tests ];
];
shellPackages = let scriptPackages = [
lib = pkgs'.lib; versionPath
in ];
commonPackages
++ extendedPackages
++ scriptPackages;
in {
packages = rec {
monster = pkgs'.callPackage ./nix/packages/monster.nix {inherit commonScript;};
default = monster; shellPackages = let
}; lib = pkgs'.lib;
in
devShells = { commonPackages
default = let ++ extendedPackages
ciJobToken = builtins.getEnv "CI_JOB_TOKEN"; ++ scriptPackages;
in in
pkgs'.mkShell { pkgs'.mkShell {
nativeBuildInputs = shellPackages; nativeBuildInputs = shellPackages;
...@@ -107,33 +104,37 @@ ...@@ -107,33 +104,37 @@
gitlab = let gitlab = let
ciJobToken = builtins.getEnv "CI_JOB_TOKEN"; ciJobToken = builtins.getEnv "CI_JOB_TOKEN";
script-run-ci-tests = pkgs'.callPackage ./nix/scripts/run-ci-tests.nix {};
gitlabPackages = [
script-run-ci-tests
];
in in
pkgs'.mkShell { pkgs'.mkShell {
nativeBuildInputs = gitlabPackages;
nativeBuildInputs = gitlabPackages;
shellHook = '' shellHook = ''
if [ -z "''${CI_JOB_TOKEN}" ]; then if [ -z "''${CI_JOB_TOKEN}" ]; then
exit 1 exit 1
fi fi
cd ''${CI_PROJECT_DIR} || exit 1 cd ''${CI_PROJECT_DIR} || exit 1
# ${pkgs'.git}/bin/git config --global user.email "''${GITLAB_USER_EMAIL}" # ${pkgs'.git}/bin/git config --global user.email "''${GITLAB_USER_EMAIL}"
# ${pkgs'.git}/bin/git config --global user.name "''${GITLAB_USER_NAME}" # ${pkgs'.git}/bin/git config --global user.name "''${GITLAB_USER_NAME}"
# ${pkgs'.git}/bin/git config --global credential.helper '!f() { echo "username=gitlab-ci-token"; echo "password=''${CI_JOB_TOKEN}"; }; f' # ${pkgs'.git}/bin/git config --global credential.helper '!f() { echo "username=gitlab-ci-token"; echo "password=''${CI_JOB_TOKEN}"; }; f'
# ${pkgs'.git}/bin/git config --global pull.rebase true # ${pkgs'.git}/bin/git config --global pull.rebase true
# ${pkgs'.git}/bin/git config --global http.sslVerify "false" # ${pkgs'.git}/bin/git config --global http.sslVerify "false"
# #
# ${pkgs'.git}/bin/git remote set-url origin "''${CI_REPOSITORY_URL}" # ${pkgs'.git}/bin/git remote set-url origin "''${CI_REPOSITORY_URL}"
# #
# ${pkgs'.git}/bin/git fetch --all --tags --unshallow # ${pkgs'.git}/bin/git fetch --all --tags --unshallow
# ${pkgs'.git}/bin/git reset --hard origin/master # ${pkgs'.git}/bin/git reset --hard origin/master
# ${pkgs'.git}/bin/git clean -fd # ${pkgs'.git}/bin/git clean -fd
# ${pkgs'.git}/bin/git checkout $CI_COMMIT_REF_NAME # ${pkgs'.git}/bin/git checkout $CI_COMMIT_REF_NAME
# ${pkgs'.git}/bin/git pull origin $CI_COMMIT_REF_NAME # ${pkgs'.git}/bin/git pull origin $CI_COMMIT_REF_NAME
......
{ {
pkgs, pkgs,
lib, lib,
commonScript,
... ...
}: let }: let
gitlabToken = builtins.getEnv "GITLAB_TOKEN"; ciJobToken = builtins.getEnv "CI_JOB_TOKEN";
ciProjectDir = builtins.getEnv "CI_PROJECT_DIR";
in in
pkgs.writeShellScriptBin "run-ci-tests" '' pkgs.writeShellScriptBin "run-ci-tests" ''
source ${commonScript} echo "run ci tests"
echo_section "run ci tests" if [ -n "${ciJobToken}" ]; then
echo "You are in a CI environment, this shell is not intended for CI, but for local development"
if [ -z "${gitlabToken}" ]; then exit 1
echo_fail "Error: CI_JOB_TOKEN variable is not set."
echo_hint "This script is intended to be run in GitLab CI."
exit 1
fi fi
echo_hint "This script will run tests in the current working directory." cd ${ciProjectDir} || exit 1
echo_hint "The command is executed in the current working directory and not in a nix derivation."
cd_working_dir echo "This script will run tests in the project working directory: ${ciProjectDir}"
echo "The command is executed in the current working directory and not in a nix derivation."
TEST_PATH="./test" TEST_CASES_PATH="${ciProjectDir}/test/cases/"
TEST_CASES_PATH="''${TEST_PATH}/cases/"
if ! ${pkgs.nodePackages.mocha}/bin/mocha --colors --jobs 1 --bail --recursive $TEST_CASES_PATH if ! ${pkgs.nodePackages.mocha}/bin/mocha --colors --jobs 1 --bail --recursive $TEST_CASES_PATH
then then
echo_fail "Tests failed, check your JS!" echo "Tests failed, check your JS!"
exit 1 exit 1
fi fi
echo_ok "Tests passed!" echo "Tests passed!"
'' ''
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment