Hi,
When I play with jenkins setup I face one issue with rspec modules that
is newly written ( thanks gabi, vmoravec and mfilka for being explorer
). Issue is that some modules have heavy dependencies and idea of
jenkins is to have minimal stable installation so it doesn't need
regular updates like old one.
There is four possible solutions with this issue:
1) mock everything outside of your module.
Pros:
- testing only your module
- more presure to stable API
- only ruby-bindings on jenkins
Cons:
- in todays modules it can be a lot of work to mock all stuff, so it
can discourage developers from writting tests
2) mock everything except yast2
Pros:
- tests also yast2 which almost doesn't have external dependencies
like SCR calls to system
- less work as mocking only non-framework dependencies ( like mock
users in ldap module )
Cons:
- yast2 must be on jenkins and it effective break idea to have one
node to test all maintenance branches
3) install everything on jenkins node
Pros:
- no mocking
Cons:
- need to keep it uptodate ( to be honest then we need different
volunteer to maintain yast jenkins node )
4) skip running rspec tests before osc:build and run it only during osc
build as part of test if package build
Pros:
- no dependencies, even ruby bindings is not part, only yast-rake
Cons:
- if rspec test fail, then it will be later in build, so no fail fast
My preffered solution is 4 because it reduce maintain of yast jenkins
node and contra is not so big.
Lets discussion start. If there is no objections I change yast-rake to
not run test:unit before osc:build at the end of week.
Josef
--
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]