command -v uv > /dev/null || pipx ensurepath
PATH=$PATH:$HOME/.local/bin
uv sync --frozen --all-extras
+# To avoid crashing older dispatchers
+ln -sf .venv virtualenv
# Install ansible collections
uv run ansible-galaxy install -r requirements.yml
#!/usr/bin/bash
set -e
-source /teuthology/virtualenv/bin/activate
+PATH=$PATH:/teuthology/.venv/bin
set -x
cat /run/secrets/id_rsa > $HOME/.ssh/id_rsa
if [ -n "$TEUTHOLOGY_TESTNODES" ]; then
if [ -n "$SSH_PRIVKEY_FILE" ]; then
echo "$SSH_PRIVKEY" > $HOME/.ssh/$SSH_PRIVKEY_FILE
fi
-source /teuthology/virtualenv/bin/activate
+PATH=$PATH:/teuthology/.venv/bin
set -x
if [ -n "$TESTNODES" ]; then
for node in $(echo $TESTNODES | tr , ' '); do
)
raise SkipJob()
- teuth_bin_path = os.path.join(teuth_path, 'virtualenv', 'bin')
+ teuth_bin_path = os.path.join(teuth_path, '.venv', 'bin')
if not os.path.isdir(teuth_bin_path):
raise RuntimeError("teuthology branch %s at %s not bootstrapped!" %
(teuthology_branch, teuth_bin_path))
)
assert got_config['teuthology_branch'] == 'main'
m_fetch_teuthology.assert_called_once_with(branch='main', commit='teuth_hash')
- assert teuth_bin_path == '/teuth/path/virtualenv/bin'
+ assert teuth_bin_path == '/teuth/path/.venv/bin'
m_fetch_qa_suite.assert_called_once_with('main', 'suite_hash')
assert got_config['suite_path'] == '/suite/path'
if returncode != 0:
for line in out.split("\n"):
log.warning(line.strip())
- venv_path = os.path.join(dest_path, 'virtualenv')
+ venv_path = os.path.join(dest_path, '.venv')
log.info("Removing %s", venv_path)
shutil.rmtree(venv_path, ignore_errors=True)
raise BootstrapError("Bootstrap failed!")