Medium sized job: map autobuild and selftest envs inside selftest
Andrew Bartlett
abartlet at samba.org
Fri Sep 17 22:53:21 UTC 2021
I recently posted about work needed on our oss-fuzz code, and I was so
pleased when Uri picked that up.
In thanking him we got talking about the challenge with making a small
contribution to Samba - so many changes either require you to know a
lot about much of the codebase, or are potentially long.
So I wanted to start a theme (which should be a wiki page eventually)
on Samba tasks that like the oss-fuzz task don't have too many
dependencies and which have a clear finish.
Even the oss-fuzz issue had a couple of tidy-ups still needed, but
essentially it was all done in just a week, with nothing more still
needed.
"Samba tasks without fish-hooks"
On that theme:
Mapping autobuild jobs to selftest jobs and gitlab-ci jobs
We have spilt up 'make test' to make it parallel, but the mechanism has
become over-burdened. At the start, the '--exclude-envs' and '
--include-envs' was a simple hack, with only a couple of environments
split out.
Now we have a massive list in autobuild.py, and we have had jobs go
'missing' with copy-and-paste errors.
What I would like is that --include-envs and --exclude-envs be replaced
with --autobuild-task.
And then put that mapping (mapping a list of autobuild jobs to a list
of selftest envrionments) in selftest.pl, along with an assertion that
all environments need to be in that list (abort if a test is declared
without an autobuild_task for it to go with, and abort if an autobuild
task is called that isn't in the list).
That would allow make_test() in script/autobuild.pl to instead output
--exclude-env=${NAME}
instead of the --include-env/--exclude-env pair, and so ensure that
every test always runs in some autobuild environment (well, a whole
environment could be missed/typos, but it will be harder.
I'm very happy to help/advise, but can't jump into this right now.
(The main downside is the need to wrangle the Perl in selftest).
Andrew Bartlett
--
Andrew Bartlett (he/him) https://samba.org/~abartlet/
Samba Team Member (since 2001) https://samba.org
Samba Team Lead, Catalyst IT https://catalyst.net.nz/services/samba
Samba Development and Support, Catalyst IT - Expert Open Source
Solutions
More information about the samba-technical
mailing list