Discussion:
Unable to set custom test command for pybuild
Add Reply
John Paul Adrian Glaubitz
2024-10-31 18:10:01 UTC
Reply
Permalink
Hi Julian,
(Please CC me as I'm not subscribed to this list)
Hello,
I need to override the standard test for pybuild and according to the manpage [1]
this is achieved by passing "--test-custom" to pybuild. Unfortunately, it's actually
not saying where exactly the parameter needs to go.
I tried setting it via "export PYBUILD_OPTION=" but that didn't work.
export PYBUILD_TEST_CUSTOM = 1
export PYBUILD_TEST_ARGS = <custom test command>
Thanks a lot. I would have never guessed that.

Meanwhile, I found the following alternative approach in the README.rst [1]:

dh_auto_test -- --system=custom --test-args='{interpreter} setup.py test'

Your suggestion looks cleaner. If it works, I'll use it. If not, I'll stick to the
approach above as it actually works. Took me forever to figure this all out.

I think this information could be added to the Pybuild page on the Debian wiki [2].

Adrian
[1] https://github.com/p1otr/dh-python/blob/c5a56cdf8cf24b11ac68c980937cf0ef0921d2e0/README.rst#L104
[2] https://wiki.debian.org/Python/Pybuild
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Julian Gilbey
2024-10-31 18:30:01 UTC
Reply
Permalink
(Please CC me as I'm not subscribed to this list)
Hello,
I need to override the standard test for pybuild and according to the manpage [1]
this is achieved by passing "--test-custom" to pybuild. Unfortunately, it's actually
not saying where exactly the parameter needs to go.
I tried setting it via "export PYBUILD_OPTION=" but that didn't work.
export PYBUILD_TEST_CUSTOM = 1
export PYBUILD_TEST_ARGS = <custom test command>

Best wishes,

Julian
John Paul Adrian Glaubitz
2024-10-31 19:10:02 UTC
Reply
Permalink
Post by John Paul Adrian Glaubitz
Thanks a lot. I would have never guessed that.
(see "Most options can be set (in addition to command line) via
environment variables." in "OPTIONS")
Yes, but it doesn't show the actual syntax.

It would have been more clear if it included examples:

"--test-custom" can be set as "PYBUILD_TEST_CUSTOM", for example.

In any case, I have figured it out now. Finally. ;-)

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Julian Gilbey
2024-10-31 21:00:01 UTC
Reply
Permalink
Hi Adrian,
Post by John Paul Adrian Glaubitz
Hi Julian,
[...]
Thanks a lot. I would have never guessed that.
dh_auto_test -- --system=custom --test-args='{interpreter} setup.py test'
Your suggestion looks cleaner. If it works, I'll use it. If not, I'll stick to the
approach above as it actually works. Took me forever to figure this all out.
I think this information could be added to the Pybuild page on the Debian wiki [2].
Sounds a great idea; please feel free to edit the page to include
this!

Best wishes,

Julian
Matthias Klose
2024-11-01 07:40:01 UTC
Reply
Permalink
Post by Julian Gilbey
Hi Adrian,
Post by John Paul Adrian Glaubitz
Hi Julian,
[...]
Thanks a lot. I would have never guessed that.
dh_auto_test -- --system=custom --test-args='{interpreter} setup.py test'
Your suggestion looks cleaner. If it works, I'll use it. If not, I'll stick to the
approach above as it actually works. Took me forever to figure this all out.
I think this information could be added to the Pybuild page on the Debian wiki [2].
Sounds a great idea; please feel free to edit the page to include
this!
sorry, but this feels like a bullshit comment. pun intended.

the pybuild information really is not adequate. but requesting people
having questions to just add another tiny improvement to this kind of
documentation is not helping very much. So maybe the people already
knowing all the quirks could come up with a way to rewrite the docs?

We even could have that as the first topic for a Python BoF, before
starting any other topic ...

Matthias
Julian Gilbey
2024-11-03 12:50:01 UTC
Reply
Permalink
Post by Matthias Klose
Post by Julian Gilbey
Hi Adrian,
[...]
Post by John Paul Adrian Glaubitz
I think this information could be added to the Pybuild page on the Debian wiki [2].
Sounds a great idea; please feel free to edit the page to include
this!
sorry, but this feels like a bullshit comment. pun intended.
the pybuild information really is not adequate. but requesting people having
questions to just add another tiny improvement to this kind of documentation
is not helping very much. So maybe the people already knowing all the
quirks could come up with a way to rewrite the docs?
We even could have that as the first topic for a Python BoF, before starting
any other topic ...
Apologies if my comment caused offense; I had not read the Wiki page
so have no views on its quality or usefulness. I was going on the
general principle that the Wiki is an editable document, and if there
is a way to improve it, that is generally a good thing to do. But if
the whole page needs a major rewrite instead, and that is feasible,
then that would obviously be a better thing to do. (I am no pybuild
expert, mind you!)

Best wishes,

Julian

Antonio Terceiro
2024-11-01 19:00:02 UTC
Reply
Permalink
Post by John Paul Adrian Glaubitz
Hi Julian,
(Please CC me as I'm not subscribed to this list)
Hello,
I need to override the standard test for pybuild and according to the manpage [1]
this is achieved by passing "--test-custom" to pybuild. Unfortunately, it's actually
not saying where exactly the parameter needs to go.
I tried setting it via "export PYBUILD_OPTION=" but that didn't work.
export PYBUILD_TEST_CUSTOM = 1
export PYBUILD_TEST_ARGS = <custom test command>
Thanks a lot. I would have never guessed that.
dh_auto_test -- --system=custom --test-args='{interpreter} setup.py test'
Your suggestion looks cleaner. If it works, I'll use it. If not, I'll stick to the
approach above as it actually works. Took me forever to figure this all out.
Note that when you use the PYBUILD_* variables, they also apply when
running under autopkgtest, so that is better than overiding the
dh_auto_test call.
Loading...