Medium sized job: map autobuild and selftest envs inside selftest

Andrew Bartlett abartlet at
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

"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, 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, 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/ to instead output

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)
Samba Team Member (since 2001)
Samba Team Lead, Catalyst IT

Samba Development and Support, Catalyst IT - Expert Open Source

More information about the samba-technical mailing list