You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@dolphinscheduler.apache.org by Xiaochun Liu <li...@apache.org> on 2019/12/09 12:47:31 UTC

[Proposal] Improve CI / CD process

Hi,
  all, the CI / CD process in DolphinScheduler only has build check and license check. The other parts are missing now.

Here is my proposal:
The overall idea of ​​CI / CD is shown in the following graph. There are two main triggering methods, submitting PR / MR trigger and night time trigger. The night time trigger triggers to run once a day, and the task is relatively heavy.

The content of CI / CD to be tested or checked is shown in the graph below.



The above is my overall thinking. The details of the CI / CD plan for the next version are as follows:
  1) The ut needs to be improved. The goal of the proportion of UT is to reach 60%. At least the newly added PR cannot be lower than this. If it feels unreasonable, we can vote to discuss it. The modules involved in this supplementary UT are api server, common, alert, and some master and worker UTs.
  2) checkstyle check, there are two kinds of google and Alibaba, personal preference is alibaba (more comprehensive), this can be discussed separately
  3) spotbugs check
  4) Front-end eslint check
  5) Coveralls code coverage report. When submitting a PR, it will be automatically displayed in the comments, showing the impact of the new part on the current code coverage, and the current test coverage will be displayed on the github home page.

If have other ideas, we can discuss together ~~ Thank you

Xiaochun Liu
liuxiaochun@apache.org




Re: [Proposal] Improve CI / CD process

Posted by Xiaochun Liu <li...@apache.org>.
1、A series of integration tests will be done in the github action. But there are some tests such as browser compatibility tests, and some UI tests can be done using the demo environment. While letting more users experience the new feature in the demo environment, they can help us complete some of the tests.

2、If this method is not possible(push image to registry), I can trigger the automatic deployment process of the cloud host through the API, and it can be used directly as a demo environment after deployment.

Xiaochun Liu
liuxiaochun@apache.org



> 在 2019年12月9日,下午9:06,Sheng Wu <wu...@gmail.com> 写道:
> 
> As following today's ASF requirement, I think you can't do image push in nightly build, because that is not an official release.
> But in the CI/CD, you could build a local image in GitHub Action. 
> 
> SkyWalking is doing this, even we deploy minikube, istio, envoy for test preparation.
> 
> Sheng Wu 吴晟
> Twitter, wusheng1108
> 
> 
> Xiaochun Liu <liuxiaochun@apache.org <ma...@apache.org>> 于2019年12月9日周一 下午8:47写道:
> 
> Hi,
>   all, the CI / CD process in DolphinScheduler only has build check and license check. The other parts are missing now.
> 
> Here is my proposal:
> The overall idea of ​​CI / CD is shown in the following graph. There are two main triggering methods, submitting PR / MR trigger and night time trigger. The night time trigger triggers to run once a day, and the task is relatively heavy.
> 
> The content of CI / CD to be tested or checked is shown in the graph below.
> 
> 
> 
> The above is my overall thinking. The details of the CI / CD plan for the next version are as follows:
>   1) The ut needs to be improved. The goal of the proportion of UT is to reach 60%. At least the newly added PR cannot be lower than this. If it feels unreasonable, we can vote to discuss it. The modules involved in this supplementary UT are api server, common, alert, and some master and worker UTs.
>   2) checkstyle check, there are two kinds of google and Alibaba, personal preference is alibaba (more comprehensive), this can be discussed separately
>   3) spotbugs check
>   4) Front-end eslint check
>   5) Coveralls code coverage report. When submitting a PR, it will be automatically displayed in the comments, showing the impact of the new part on the current code coverage, and the current test coverage will be displayed on the github home page.
> 
> If have other ideas, we can discuss together ~~ Thank you
> 
> Xiaochun Liu
> liuxiaochun@apache.org <ma...@apache.org>
> 
> 
> 


Re: [Proposal] Improve CI / CD process

Posted by Sheng Wu <wu...@gmail.com>.
As following today's ASF requirement, I think you can't do image push in
nightly build, because that is not an official release.
But in the CI/CD, you could build a local image in GitHub Action.

SkyWalking is doing this, even we deploy minikube, istio, envoy for test
preparation.

Sheng Wu 吴晟
Twitter, wusheng1108


Xiaochun Liu <li...@apache.org> 于2019年12月9日周一 下午8:47写道:

>
> Hi,
>   all, the CI / CD process in DolphinScheduler only has build check and
> license check. The other parts are missing now.
>
> Here is my proposal:
> The overall idea of ​​CI / CD is shown in the following graph. There are
> two main triggering methods, submitting PR / MR trigger and night time
> trigger. The night time trigger triggers to run once a day, and the task is
> relatively heavy.
> The content of CI / CD to be tested or checked is shown in the graph below.
>
>
> The above is my overall thinking. The details of the CI / CD plan for the
> next version are as follows:
>   1) The ut needs to be improved. The goal of the proportion of UT is to
> reach *60%*. At least the newly added PR cannot be lower than this. If it
> feels unreasonable, we can vote to discuss it. The modules involved in this
> supplementary UT are api server, common, alert, and some master and worker
> UTs.
>   2) checkstyle check, there are two kinds of google and Alibaba, personal
> preference is alibaba (more comprehensive), this can be discussed separately
>   3) spotbugs check
>   4) Front-end eslint check
>   5) Coveralls code coverage report. When submitting a PR, it will be
> automatically displayed in the comments, showing the impact of the new part
> on the current code coverage, and the current test coverage will be
> displayed on the github home page.
>
> If have other ideas, we can discuss together ~~ Thank you
>
> Xiaochun Liu
> liuxiaochun@apache.org
>
>
>
>