File: runme.sh

package info (click to toggle)
ansible-core 2.19.0~beta6-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 32,628 kB
  • sloc: python: 180,313; cs: 4,929; sh: 4,601; xml: 34; makefile: 21
file content (24 lines) | stat: -rwxr-xr-x 788 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env bash

set -eux

# Ensure that when a non-distro 'distro' package is in PYTHONPATH, we fallback
# to our bundled one.
new_pythonpath="$OUTPUT_DIR/pythonpath"
mkdir -p "$new_pythonpath/distro"
touch "$new_pythonpath/distro/__init__.py"

export PYTHONPATH="$new_pythonpath:$PYTHONPATH"

# Sanity test to make sure the above worked
set +e
distro_id_fail="$(python -c 'import distro; distro.id' 2>&1)"
set -e
grep -q "AttributeError:.*has no attribute 'id'" <<< "$distro_id_fail"

# ansible.module_utils.common.sys_info imports distro, and itself gets imported
# in DataLoader, so all we have to do to test the fallback is run `ansible`.
ansirun="$(ansible -i ../../inventory -a "echo \$PYTHONPATH" localhost)"
grep -q "$new_pythonpath" <<< "$ansirun"

rm -rf "$new_pythonpath"