Conversation
Signed-off-by: Zack Cerza <zack@cerza.org> Conflicts: requirements.txt setup.cfg
Signed-off-by: Zack Cerza <zack@cerza.org> Conflicts: requirements.txt
Signed-off-by: Zack Cerza <zack@cerza.org>
To a version that support python 3.13 Signed-off-by: Zack Cerza <zack@cerza.org>
Much of this is simply removing things we don't have to be doing now that we're using uv. It also consolidates the different sections for RPM-based distros. Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Zack Cerza <zack@cerza.org>
Conflicts:
bootstrap
For now, use a very narrow ruleset. We should expand to use more later. Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@clyso.com>
Because the teuthology code is building in container after copying source code from local directory, but no corresponding git repo copied, the setuptools-scm cannot determine teuthology version. So in order to produce the package we just provide dummy version 0.0.0 using environment variable: SETUPTOOLS_SCM_PRETEND_VERSION_FOR_TEUTHOLOGY Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@clyso.com>
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
And also drop an unnecessary tr invocation. Signed-off-by: Zack Cerza <zack@cerza.org>
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@clyso.com>
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@clyso.com>
|
That's just a rebase branch of the one in #2081 |
|
@zmc have you had a chance to look at this PR? |
Not in as much detail yet as I'd like; I did schedule a test run: https://pulpito-ng.ceph.com/runs/zack-2026-03-27_23:19:02-smoke-main-distro-default-trial |
bootstrap
Outdated
| deps=(qemu-utils python3-dev libssl-dev python3-pip python3-wheel python3-venv libev-dev libvirt-dev libffi-dev libyaml-dev build-essential jq curl) | ||
| has_pkg="dpkg -s" | ||
| deps=(qemu-utils python3-dev libssl-dev libev-dev libvirt-dev libffi-dev libyaml-dev pipx build-essential jq curl) | ||
| has_pkg="dpkg -C" |
There was a problem hiding this comment.
dpkg -C is ->
-C|--audit [...] Check for broken package(s)
in practice dpkg -C still exits 0 even when the package is missing (it prints “not installed” to stderr). I verified this in the environment: both an installed and a bogus package name lead the bootstrap loop to treat the dependency as present.
There was a problem hiding this comment.
@zmc what did you have in mind when changing to -s to -C?
There was a problem hiding this comment.
I think I just wanted a quieter -s, but I will amend this to use -s and drop stdout/err. Good catch!!
There was a problem hiding this comment.
or, @kshtsk, if you'd rather just push a small fix to this branch that works as well.
bootstrap
Outdated
| PYTHON=${PYTHON:-"python3"} | ||
| deps=("$PYTHON" "$PYTHON-devel" "$PYTHON-pipx" libev-devel libffi-devel libvirt-devel) | ||
| has_pkg="rpm -q --whatprovides" | ||
| install_pkg="sudo zypper install" |
There was a problem hiding this comment.
This being non-interactive , I think bootstrap can get stuck here.
There was a problem hiding this comment.
Not sure I understand what is the problem here. What is your suggestion change. By design bootstrap should stop immediately when it finds some of the system dependencies are missing.
In this case it just reports users so they can install missing dependencies manually and try again. The "sudo zipper install" is interactive and needs "-y" to auto accept all the packages. Since it is a manual step, guess it is a user choice how to proceed.
Could you please elaborate.
Btw, this works for me on the latest tumbleweed.
There was a problem hiding this comment.
There are two paths: plain ./bootstrap already exits when deps are missing—that’s fine. The wrinkle is ./bootstrap install, which runs the package manager for you. On SUSE that’s zypper install without -y, so in non-interactive contexts (like cloud-init, CI or any other automations) it can block on prompts, unlike apt/dnf which already pass -y. Suggest adding non-interactive only for that install path so scripted runs don’t hang; interactive users can still install manually after a plain ./bootstrap.
There was a problem hiding this comment.
Oh, thanks, I'll add -y then.
|
Tested this with dispatcher running old code and the repo having PR changes -- trigger went just fine. |
Signed-off-by: Kyrylo Shatskyy <kyrylo.shatskyy@gmail.com>
Signed-off-by: Kyrylo Shatskyy <kyrylo.shatskyy@gmail.com>
Signed-off-by: Kyrylo Shatskyy <kyrylo.shatskyy@gmail.com>
|
When we merge this branch, we should wait for the queue to run through jobs scheduled before the merge before updating the dispatcher |
No description provided.