Thanks for the info Dominic. Some further questions:

On 3 November 2016 at 13:19, Dominic Cleal <[email protected]> wrote:

> Foreman already has a test suite for its plugin interfaces which is run
> on every pull request. If those tests are insufficient, expand them.
>

Is that in
https://github.com/theforeman/foreman/blob/develop/test/unit/plugin_test.rb?

I see we have a section in the wiki on Jenkins for the plugins themselves,
but
nothing about these tests - it's probably worth adding a section about (a)
how
to be aware/notified of potential breakage (release notes, and failures in
these tests),
and (b) if, as an author, you extend something not covered by these tests,
then
consider sending a PR to core to make sure it's covered. I'm happy to do
that, if
that makes sense.


> Deprecations affecting plugins are listed in release notes today, though
> some plugin authors don't seem to bother changing things until the
> interfaces are later removed.
>

We can't force authors to update, sure. The release notes go out with the
RCs right?

> 1) Test resources - do we have enough to run this on every PR? Do we
> > want to, or should it be less frequent?
>
> There's no need. The Foreman plugin interface is already tested on every
> PR, and plugin tests themselves are run at least weekly - authors should
> be aware of issues quickly.
>

Yeah, that makes sense. I wasn't aware of those tests - so long as something
is testing the interfaces, that's fine.


> You should file a bug against Foreman immediately if you see that a
> plugin interface has been broken, so we can ensure the change isn't
> released and a fix can be written.
>

Fair enough - in this case it's an interface that wasn't tested and a user
has found
it subsequently (#17203 in set_hostgroup_defaults), so I think the
not-releasing-it
option is gone. I'll open an issue to write some tests for that interface,
though.

More generally, does it make sense for someone to do an audit of the most
common
places that plugins hook in, and make sure we have tests for them?

Cheers
Greg

-- 
You received this message because you are subscribed to the Google Groups 
"foreman-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to