mirror of
https://gitlab.com/TECHNOFAB/nixible.git
synced 2026-02-02 11:25:08 +01:00
Compare commits
2 commits
76c6d39100
...
0a0d354962
| Author | SHA1 | Date | |
|---|---|---|---|
| 0a0d354962 | |||
| 4e6694ca64 |
3 changed files with 25 additions and 21 deletions
|
|
@ -152,11 +152,9 @@
|
|||
};
|
||||
optionsDoc = doclib.mkOptionDocs {
|
||||
module = {
|
||||
_module.args.pkgs = pkgs;
|
||||
imports = [
|
||||
nblib.module
|
||||
{
|
||||
_module.args.pkgs = pkgs;
|
||||
}
|
||||
];
|
||||
};
|
||||
roots = [
|
||||
|
|
|
|||
|
|
@ -26,32 +26,27 @@
|
|||
}:
|
||||
buildPythonPackage rec {
|
||||
pname = "ansible-core";
|
||||
version = "2.18.6";
|
||||
version = "2.19.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "ansible_core";
|
||||
inherit version;
|
||||
hash = "sha256-JbsgzhUWobcweDGyY872hAQ7NyBxFGa9nUFk5f1XZVc=";
|
||||
hash = "sha256-h/y7xJLtFutq2wN5uuCtv2nzzoioRA5+iODc76n4pUw=";
|
||||
};
|
||||
|
||||
# ansible_connection is already wrapped, so don't pass it through
|
||||
# the python interpreter again, as it would break execution of
|
||||
# connection plugins.
|
||||
postPatch = ''
|
||||
substituteInPlace lib/ansible/executor/task_executor.py \
|
||||
--replace "[python," "["
|
||||
|
||||
patchShebangs --build packaging/cli-doc/build.py
|
||||
|
||||
SETUPTOOLS_PATTERN='"setuptools[0-9 <>=.,]+"'
|
||||
PYPROJECT=$(cat pyproject.toml)
|
||||
if [[ "$PYPROJECT" =~ $SETUPTOOLS_PATTERN ]]; then
|
||||
echo "setuptools replace: ''${BASH_REMATCH[0]}"
|
||||
echo "''${PYPROJECT//''${BASH_REMATCH[0]}/'"setuptools"'}" > pyproject.toml
|
||||
else
|
||||
exit 2
|
||||
fi
|
||||
WHEEL_PATTERN='"wheel[0-9 <>=.,]+"'
|
||||
echo "Patching pyproject.toml"
|
||||
# print replaced patterns to stdout
|
||||
sed -r -i -e 's/'"$SETUPTOOLS_PATTERN"'/"setuptools"/w /dev/stdout' \
|
||||
-e 's/'"$WHEEL_PATTERN"'/"wheel"/w /dev/stdout' pyproject.toml
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
@ -86,6 +81,12 @@ buildPythonPackage rec {
|
|||
|
||||
pythonRelaxDeps = ["resolvelib"];
|
||||
|
||||
postInstall = ''
|
||||
export HOME="$(mktemp -d)"
|
||||
packaging/cli-doc/build.py man --output-dir=man
|
||||
installManPage man/*
|
||||
'';
|
||||
|
||||
# internal import errors, missing dependencies
|
||||
doCheck = false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
unsetOr = typ:
|
||||
(types.either unsetType typ)
|
||||
// {
|
||||
description = typ.description;
|
||||
inherit (typ) description getSubOptions;
|
||||
};
|
||||
|
||||
filterUnset = value:
|
||||
|
|
@ -36,7 +36,7 @@
|
|||
mkOption args
|
||||
// {
|
||||
type = unsetOr args.type;
|
||||
default = unset;
|
||||
default = args.default or unset;
|
||||
defaultText = literalExpression "unset";
|
||||
};
|
||||
|
||||
|
|
@ -59,7 +59,7 @@
|
|||
};
|
||||
};
|
||||
tasksType = types.submodule {
|
||||
freeformType = types.attrsOf (types.attrsOf types.anything);
|
||||
freeformType = types.attrsOf types.anything;
|
||||
options = {
|
||||
name = mkUnsetOption {
|
||||
type = types.str;
|
||||
|
|
@ -118,7 +118,7 @@
|
|||
};
|
||||
};
|
||||
playType = types.submodule {
|
||||
freeformType = types.attrsOf (types.attrsOf types.anything);
|
||||
freeformType = types.attrsOf types.anything;
|
||||
options = {
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
|
|
@ -278,12 +278,17 @@ in {
|
|||
cli = pkgs.writeShellApplication {
|
||||
name = "nixible";
|
||||
runtimeInputs = config.dependencies;
|
||||
text = ''
|
||||
text = let
|
||||
inventoryStr =
|
||||
if config.inventory != {}
|
||||
then "-i ${config.inventoryFile}"
|
||||
else "";
|
||||
in ''
|
||||
set -euo pipefail
|
||||
export ANSIBLE_COLLECTIONS_PATH=${config.installedCollections}
|
||||
|
||||
git_repo=$(git rev-parse --show-toplevel 2>/dev/null || true)
|
||||
${config.ansiblePackage}/bin/ansible-playbook -i ${config.inventoryFile} ${config.playbookFile} -e "pwd=$(pwd)" -e "git_root=$git_repo" "$@"
|
||||
${config.ansiblePackage}/bin/ansible-playbook ${inventoryStr} ${config.playbookFile} -e "pwd=$(pwd)" -e "git_root=$git_repo" "$@"
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue