Re: Proposal to Implement New GitHub Actions Workflows for CI/CD

2023-10-20 Thread Murray Altheim

Hi,

I'm not sure I see the benefit of this exactly, particularly since we do
currently have a functioning build system, and the existing members here
understand and have experience with Jenkins. If fulfilled we'd have a
team of people with varying experience with GH actions; e.g., I myself
have none, and I'd be curious if others do. Maybe I'm the outlier (and
frankly I've not been very active anyway so my vote is less important).
But that does raise the question: who else on the team does have
experience with Github actions?

So I guess I'm not against the proposal, with one caveat as described by
Juan Pablo: namely, that any new build system would not replace Jenkins
until *all* the steps are completed, without compromise. Until then it
would remain a proposal.

I know from decades' experience that with any volunteer group there is
always the danger in proposals not quite fulfilling their promises.
Sometimes there is an unforeseen technical or licensing barrier or
impossibility, sometimes the main driver runs out of steam or has
professional or personal priorities that supersede finishing, etc. etc.

I tend to be rather cautious with replacing existing things that work.

Cheers,

Murray

On 21/10/23 07:58, Juan Pablo Santos Rodríguez wrote:

Hi Arturo!

My 2c,

I'm ok with the change, with a caveat:

If we switch to GH actions, let's ditch the Jenkins build entirely, in
order to not have two different build/ci systems. This implies a number of
things

- SQ analysis should be done from one of the pipelines, perhaps the codeql
one? So it would have to be renamed to qa.yaml or something like that

- Also, currently, if the ci build is successful and we have a SNAPSHOT
version, we automatically deploy to repository.a.o, one of the pipelines
should also take care of that, not sure which.

- Last, a successful build also triggers the build on charge of deploying
the static site and associated assets (javadocs, japicmp reports). IIRC,
infra provides support for these actions when working with either Jenkins
or GH actions, but don't have any pointer on how to do it on the latter.

Of course we can keep the Jenkins build until all of these steps are
completed, but always having the final picture in mind (i.e., one build/ci
system).

Said that a couple questions/wishes on the GH actions builds:

1) what kind of errors display the windows builds? I suspect that most
probably there's a problem with the test execution order (at least that's
what happened in other similar situations). Could we get a lot of any of
those builds?

2) would it be possible to also run the integration tests? They can be run
on headless mode, so we'd only need an additional chrome binary on the
build path. Don't know if it's possible though.


Thx + best regards,
juan pablo

El jue, 19 oct 2023, 22:08, Arturo Bernal  escribió:


Dear Team,

I'd like to propose the addition of three new GitHub Actions workflows to
enhance our CI/CD pipeline for the Apache JSPWiki project. Below are the
details:

1.

*Java CI Workflow*: Provides continuous integration support across
multiple OS (Ubuntu, macOS) and Java versions (11, 17). It also caches
Maven dependencies for optimized build times.
2.

*Dependency Review Workflow*: Triggered on pull requests to review and
ensure that dependencies are safe.
3.

*CodeQL Workflow*: Provides continuous integration and code quality
checks.

These workflows are designed to automate and streamline our development
process, making it more efficient. They will run on every push to the
master branch and on every pull request, ensuring that our code is
continuously tested and dependencies are reviewed.

I've already created a pull request with these changes, which you can
review here .

Here are the key files to be added:

- CodeQL (codeql.yml) for continuous integration and code quality
checks.
- Dependency Review (dependency-review.yml) for dependency checks.
- Java CI (maven.yml) for continuous integration across multiple OS and
Java versions.

I'd appreciate your thoughts and feedback on this proposal. Are there any
concerns or suggestions you'd like to share?

Best regards,
Arturo





--

...
Murray Altheim= =  ===
http://www.altheim.com/murray/ ===  ===
   = =  ===
In the evening
The rice leaves in the garden
Rustle in the autumn wind
That blows through my reed hut.
   -- Minamoto no Tsunenobu



Re: Proposal to Implement New GitHub Actions Workflows for CI/CD

2023-10-20 Thread Juan Pablo Santos Rodríguez
Hi Arturo!

My 2c,

I'm ok with the change, with a caveat:

If we switch to GH actions, let's ditch the Jenkins build entirely, in
order to not have two different build/ci systems. This implies a number of
things

- SQ analysis should be done from one of the pipelines, perhaps the codeql
one? So it would have to be renamed to qa.yaml or something like that

- Also, currently, if the ci build is successful and we have a SNAPSHOT
version, we automatically deploy to repository.a.o, one of the pipelines
should also take care of that, not sure which.

- Last, a successful build also triggers the build on charge of deploying
the static site and associated assets (javadocs, japicmp reports). IIRC,
infra provides support for these actions when working with either Jenkins
or GH actions, but don't have any pointer on how to do it on the latter.

Of course we can keep the Jenkins build until all of these steps are
completed, but always having the final picture in mind (i.e., one build/ci
system).

Said that a couple questions/wishes on the GH actions builds:

1) what kind of errors display the windows builds? I suspect that most
probably there's a problem with the test execution order (at least that's
what happened in other similar situations). Could we get a lot of any of
those builds?

2) would it be possible to also run the integration tests? They can be run
on headless mode, so we'd only need an additional chrome binary on the
build path. Don't know if it's possible though.


Thx + best regards,
juan pablo

El jue, 19 oct 2023, 22:08, Arturo Bernal  escribió:

> Dear Team,
>
> I'd like to propose the addition of three new GitHub Actions workflows to
> enhance our CI/CD pipeline for the Apache JSPWiki project. Below are the
> details:
>
>1.
>
>*Java CI Workflow*: Provides continuous integration support across
>multiple OS (Ubuntu, macOS) and Java versions (11, 17). It also caches
>Maven dependencies for optimized build times.
>2.
>
>*Dependency Review Workflow*: Triggered on pull requests to review and
>ensure that dependencies are safe.
>3.
>
>*CodeQL Workflow*: Provides continuous integration and code quality
>checks.
>
> These workflows are designed to automate and streamline our development
> process, making it more efficient. They will run on every push to the
> master branch and on every pull request, ensuring that our code is
> continuously tested and dependencies are reviewed.
>
> I've already created a pull request with these changes, which you can
> review here .
>
> Here are the key files to be added:
>
>- CodeQL (codeql.yml) for continuous integration and code quality
> checks.
>- Dependency Review (dependency-review.yml) for dependency checks.
>- Java CI (maven.yml) for continuous integration across multiple OS and
>Java versions.
>
> I'd appreciate your thoughts and feedback on this proposal. Are there any
> concerns or suggestions you'd like to share?
>
> Best regards,
> Arturo
>