Hi Paul,
Each integration test in general probes three things - the API, the DB and remote server/host (using a ssh client). APIs are assumed to be strictly backward compatible so any test that tests an API should be backward compatible with previous CloudStack versions. Though, each CloudStack version can have a different schema which is why integration tests which probe DB are tied to a branch. Similary, ssh-client based remote verification (such as those in VR etc.) may also be tied to a branch/version. We may tag/annotate each test case in various integration tests with cloudstack version, but several tests may still be tied to a branch/version. When we build rpms/deb, we can bundle and upload the tests in the same directory (or parent) where the rpms/debs are and then CI systems such as Travis, Bubble and Trillian can get the bundle of tests from the URL where they are getting rpms/deb from as well. The tests may also be bundled as an RPM or deb, to solve the issue of getting and running tests for a specific CloudStack version/package. Regards. ________________________________ From: Paul Angus <paul.an...@shapeblue.com> Sent: 18 July 2016 16:36:51 To: dev@cloudstack.apache.org Subject: RE: [VOTE] Split Marvin to its own repository Would it make sense to have tests include cloudstack versions along with 'other' requirements in their meta-data, so that they don't *have* to be tied to a branch. Kind regards, Paul Angus paul.an...@shapeblue.com www.shapeblue.com<http://www.shapeblue.com> 53 Chandos Place, Covent Garden, London WC2N 4HSUK @shapeblue rohit.ya...@shapeblue.comĀ www.shapeblue.com 53 Chandos Place, Covent Garden, London WC2N 4HSUK @shapeblue -----Original Message----- From: Rohit Yadav [mailto:bhais...@apache.org] Sent: 18 July 2016 10:44 To: dev@cloudstack.apache.org Subject: [VOTE] Split Marvin to its own repository All, Based on a recent discussion thread [1], I want to start a voting thread to gather consensus around splitting Marvin from the CloudStack repository. On successful voting, we would extract and maintain Marvin as a separate library in a separate repository (example repository [2]) and various build/test systems such as Travis [3] can install it directly for usage with pip+git etc. Background: During the build process, a commands.xml generated to build apidocs is also used to generate CloudStack Cmd and Request classes are auto-generated, which is the only dependency why we needed Marvin and CloudStack together. The auto-generated cloudstackAPI module can be also generated against a live running CloudStack mgmt server which has api discovery (listApis) enabled. The integration tests will still be tied to a branch and will remain withing the repository. A PR [3] was sent to show that we can still execute tests using this approach, and this would finally allow us to build, release and use Marvin as an independent library. Vote will be open for 72 hours. For sanity in tallying the vote, can PMC members please be sure to indicate "(binding)" with their vote? [ ] +1 approve [ ] +0 no opinion [ ] -1 disapprove (and reason why) [1] http://markmail.org/thread/kiezqhjpz44hvrau [2] https://github.com/rhtyd/marvin [3] https://github.com/apache/cloudstack/pull/1599 Regards, Rohit Yadav