Hi Yi, in the Edgent and PLC4X project we recently had a simple build (with Unit-Tests only and no Toolchain, no multiple OSes) run on Travis automatically. However this had proven to run very poorly with lots of false broken builds. I'm currently asking Infra to what options there are as this is also interesting for the other projects I'm involved in.
What I would suggest in general: - Have automated tests that are run for every commit - Have a daily (Well nightly build sort of depends on where you are) build that builds everything with the full set of tests (All OSes and all JDK versions) Doing "the works" for every commit would just cause the feedback on commits to come very delayed and cause unnecessary strain on the infrastructure. For my other projects usually what breaks things is simply people not running a full maven build before committing: Dependencies with new vulnerabilities, missing headers, compile errors, ... I guess the number of times something happens only on a few jdk and or platform combinations is quite low. Chris Am 02.01.19, 14:41 schrieb "徐毅" <[email protected]>: Hi, If someone wants to contribute codes to our project, he usually forks out project and create a pull request from his own repo. Is this more common for apache project? Also, If we merge all unit tests from different sub-modules into a single test, it is a little bit time-consuming(10+mintues)? And if some of these tests fail, we must re-run all unit tests? Thanks Yi Xu | | 徐毅 | | [email protected] | 签名由网易邮箱大师定制 On 1/2/2019 21:16,Christofer Dutz<[email protected]> wrote: Hi Yi, Re 1) If your PR is in the same repo, the multibranch pipeline plugin could automatically setup builds for every branch. If your PR is from the outside, I have seen this for other projects. I think there’s a dedicated build-type for that. Re 2) yes ASF should be able to provide you with that capability. Regarding the JDK versions: There’s a maven concept for this called “toolchains” we are using that in the Apache Edgent project to run our tests on multiple JDKs … so that’s quite easy. Regarding the OSes … I know we have Windows nodes on the ASF and I think there even was a Mac build node. We can setup the build to run multiple steps on different nodes (very easy to setup). I wouldn’t do this in multiple builds. But all on one … this way for example Sonar can see the code coverage for Unit-Tests and Integration-Tests .. how to merge the coverages for all JDK versions and OSes would be worth investigating. Chris Von: 徐毅 <[email protected]> Antworten an: "[email protected]" <[email protected]> Datum: Mittwoch, 2. Januar 2019 um 07:31 An: "[email protected]" <[email protected]> Betreff: Re:Re: Plans of January of 2019 Hi I have some questions about ASF's Jenkins. 1) Can anyone who forks our project use this jenkens when he creates a pull request from his forked project? 2) In our own jenkins, we create a pipeline to run unit test for every sub-module. Specially, for iotdb sub-module, we have two pipelines which run unit test and integration test. See the following picture, we run our tests on different os(now we have win10 and ubuntu, we will add osx soon) and different jdk versions(jdk8 and jdk11). Some of them are time-consuming and require lots of memory resources(our integration test takes 5 minutes for each run). So I wonder whether ASF's Jenkins can provide such capabilities to run multiple tests? [cid:43cdda76$1$1680d42579b$Coremail$xuyithuss$126.com] Thanks Yi Xu At 2019-01-02 01:28:26, "Christofer Dutz" <[email protected]> wrote: Hi all, a happy new year from me too ... I think we should add one or two more steps: (5) setup the Jenkins build on ASF's Jenkins (I'd be glad to help with that) Regarding the issues ... ever thought of programmatically migrating them to Jira? Sort of a run-once program, that pulls the issues from github and posts them in Jira? Done something like that several times before (however never for Apache projects) Chris Am 01.01.19, 16:53 schrieb "Xiangdong Huang" <[email protected]>: Hi all, Happy New Year! Thank all developers and Mentors (and the Champion) of IoTDB for your efforts in 2018. I think the most important things in January of 2019 is migrating all codes to Apache repository and finishing the website of IoTDB. Tasks of the website: - @Xinyi Zhao and @Yi Xu, can you organize contributors to finish the website, as well as the English documents? - By the way, I suggest that we write more documents/JavaDocs to help new developers to join our project. Tasks of migration to Apache repository: - There are 4 steps: (1) solving the problem of the IO speed of flushing WAL on disk. @Rui Liu, can you organize developers to solve it? (2) Merge the branch `kill_Thanos` into the master on thulab repository. @Gaofei Cao. (3) Add Apache header, change all package names, and add JavaDocs for each java file. (4) Migrating codes from thulab to Apache repository. - By the way, don't forget that there are more than 100 issues on github.com/thulab/iotdb/issues. To finish all the above, we need the effort of everyone in our community! Here's to a great 2019! Thanks, ----------------------------------- Xiangdong Huang School of Software, Tsinghua University 黄向东 清华大学 软件学院
