Re: Continuous integration

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: Continuous integration

Karl Heinz Marbaise-3
Hi Elliotte,

On 26.12.19 12:23, Elliotte Rusty Harold wrote:
> The various Maven repos don't seem to have any automatic continuous
> integration presubmit checks.

Informations on the repos is not yet done for all the repos...I've
improved a few of them in the meantime ...(for example
maven-install-plugin)...

> > I found a Jenkins service but it's
> somewhat out of date, doesn't cover most of our important repos, and
> does not appear to integrate with Github:

The reason for not being integrated into GitHub is simply a security
reason cause if a Pull Request could trigger a build on the ASF Jenkins
you could inject any kind of code there...which is a thing which no one
would like to have...

As Enrico already pointed out we have some experiments with GitHub
Actions or Travis build for a kind of pre check that should be improved...

Based on my experience with GitHub actions[1] and long expreience with
Travis CI would prefer GitHub actions cause all the builds are driven by
Docker images where as on Travis each build is running on a CI within a
docker machine (image as well)...in travis there are some limitations
for Maven versions, Windows Support and MacOs is very limited support
which is also a reason for going into GitHub Actions and also using ASF
Jenkins...


Also you can see on [2] the results of the master of each job ...

[1]: https://github.com/apache/maven-dependency-plugin/actions
[2]:
https://builds.apache.org/view/M-R/view/Maven/job/dist-tool-plugin/site/dist-tool-master-jobs.html
>
> https://builds.apache.org/view/M-R/view/Maven/


if you take a look at: "Maven TLP" you will see all repositories which
are needed in there ...

https://builds.apache.org/view/M-R/view/Maven/job/maven-box/

>
> The two products I've used for this in the past on Github repos are
> TravisCI and CircleCI. Both work well enough and are fee for open
> source products, though I'm slightly more familiar with Travis
> personally.
>
> If this is something folks are interested in, I'm happy to pitch in on
> setting this up. However there might be contractual issues between the
> vendors and the Apache Foundation. Does anyone happen to know if this
> is something Apache does? Or if there's a another type of CI other
> projects are using for Github?
>
I've started with GitHub actions and I would like to continue with
GitHub actions cause it's supports at the moment more things compared to
travis ci.

We could go for pre check on GitHub actions to get a good feedback for
contributors first and afterwards for a committers in neeeds to be done
on a branch and run on ASF enviroments...(I think this should be made
simpler to make it easier for committers to integration PR's..).

I think the hardest thing could become the build of maven core including
running integration tests...If you like to start that I would happy to
help ...


See as an example the following GitHub Actions:

https://github.com/khmarbaise/maven-it-extension/blob/master/.github/workflows/jdkbuilds.yml
https://github.com/khmarbaise/maven-it-extension/blob/master/.github/workflows/main.yml


Kind regards
Karl Heinz Marbaise

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]