aboutsummaryrefslogtreecommitdiffstats
path: root/shell.nix
blob: b07495aed40c34cb2a9441ce8e5111f986f56c39 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
  pkgs ? import <nixpkgs> { },
}:

let
  python = pkgs.python3.withPackages (ps: [
    ps.ansible
    ps.docker
    ps.molecule
    ps.molecule-plugins
    ps.pytest
    ps.pytest-testinfra
    ps.requests
  ]);
in
pkgs.mkShell {
  packages = [
    python
    pkgs.docker
    pkgs.rsync
    pkgs.python311Packages.requests
  ];

  shellHook = ''
    export ANSIBLE_ALLOW_BROKEN_CONDITIONALS=True
    export PYTHONDONTWRITEBYTECODE=1 # Keep Python from writing .pyc files


    echo "=========================================================="
    echo "🚀 Ansible Molecule Development Environment is ready"
    echo "=========================================================="
    echo "Installed Versions:"
    python --version
    ansible --version | head -n 1
    molecule --version | head -n 1
    echo "=========================================================="
    echo "Using ANSIBLE_ALLOW_BROKEN_CONDITIONALS=True for molecule-plugins/docker"
    echo "Run: molecule test -s default"
  '';
}