#6478 Create a new "tests" namespace to share test code
Closed: Fixed 6 years ago Opened 6 years ago by psss.

While working on adding CI tests for bash using the Standard Test Interface a need arised to have a shared git repository where tests for compatible shells (bash, ksh, mksh, zsh and dash) could be stored. From the discussion with developers is seems the best location would be this:

https://src.fedoraproject.org/tests/shell/

Could you please create the new "tests" namespace and "shell" repository under it? We believe there will be more components for which such a shared repository could be useful to prevent duplication of the test code. Thanks. For more context and motivation see the Share Test Code proposal on the fedora ci list.


@tflink what do you think here?

I'd like to make sure this sort of thing is the way we want to go before we go setting up a bunch of them.

Do we really need a new namespace here? I looked at the mentioned PR and it doesn't seem to go into detail around why this proposed solution is better than a shared repo on pagure.

Why is a new namespace a better solution?

Note while I think of it: if we go the test namespace approach we should nuke the old repos first :]

I suppose this is probably a better discussion for the ci list but won't this disrupt the plan of keeping tests with the code so that everything is in one place?

@tflink Keeping tests with the code would in this case mean to maintain the same tests at multiple places because we have multiple shell interpreters covered by the same tests. The shared tests need to be maintained at a single place. IMO it does not really matter if we create a shared repo on pagure or somewhere else (although if we are going to create more such repos, it would be better to create them systematically).

Plus one for keeping similar shared test repos at one place in a
consistent way rather then having them scattered across different
locations. It could possibly also allow us to enable automation if
desired in the future (e.g. spawn ci jobs upon test code update).

I've summarized the idea and the motivation behind it
in the Share Test Code proposal on the fedora ci list.
Please, review and comment. Thanks.

@tflink have you had time to go through this email? What are your thoughts on this?

@psss sent a call for discussion and feedback on the devel list https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/TDPLBSXPFQJCUKX6X77BSFU3NRAW2ERQ/

From my side, adding support for this should be as simple as adjusting pagure's config file and reloading apache.

I believe fedrepo_req should then be able to process requests coming in for this namespace as it does for the others.

This hybrid approach seems reasonable to me.

It's about a month since the proposal was sent to Fedora CI list
and about a week since the announcement on the Devel list. There
were no objections and the little feedback we got was positive.
So I suggest we move forward and create the namespace.

@nirik, what do you think about this request?

Server side we may want to make a tarball of the test namespaces we currently have, just in case. After that, update pagure's config and that should be it.

FTR, I got the all clear to proceed w/ backups and changes yesterday from @nirik

I am currently making the tarball of the different existing test-* namespaces, test-docker and test-modules are done, test-rpms is in progress and I believe there should be a test-container to do afterward.

Namespace has been created, the shell project as well: https://src.fedoraproject.org/tests/shell/

@psss you should have commit access to it now :)

(Remember that we still have the limitations that only packagers can push to it)

Metadata Update from @pingou:
- Issue close_status updated to: Fixed

6 years ago

Login to comment on this ticket.

Metadata