Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance Continious Integration Process. #1265

Closed
sbernard31 opened this issue Jun 10, 2022 · 9 comments
Closed

Enhance Continious Integration Process. #1265

sbernard31 opened this issue Jun 10, 2022 · 9 comments
Labels
build / ci All about Build or Continious Integration

Comments

@sbernard31
Copy link
Contributor

Currently, we are using only CI Eclipse infrastructure (jenkins) : https://ci.eclipse.org/leshan/.

It allow us to :

  • build master to automatically deploy leshan sandbox.
  • build and release master and 1.x branch to deploy nightly build on eclipse repo. (more details)
  • release stable and milestone release on maven central.

This is good but we also need some CI to do some automatic check on PR.
We should probably do that using Github Actions.

First step will probably be to check for each PR on master if :

  • code compile
  • unit tests are ✔️
  • integration tests are ✔️

Then next steps should be :

  • check code format.
  • check organize import ?
  • check PR does not contain merge commit.

And maybe more ? 🤔

@sbernard31 sbernard31 added the build / ci All about Build or Continious Integration label Jun 10, 2022
@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 10, 2022

Here a very simple way for build + tests at : sbernard31#2

❌ Replaced by #1265 (comment)

@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 10, 2022

Here some idea about formatting : sbernard31#3

✔️ Done and Integrated in master (see #1281)

@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 10, 2022

Some idea about organize import : sbernard31#4

✔️ Done and Integrated in master (see #1282)

@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 14, 2022

See how to check that PR does not contains "merge commit" : sbernard31#5

✔️ Done and Integrated in master (see #1267)

@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 16, 2022

A better way to add build + tests using :

  • composite actions
  • add comment in case of error.

See sbernard31#7 (this is a better version of sbernard31#2)

✔️ Done and integrated in master (see #1266)

@sbernard31
Copy link
Contributor Author

sbernard31 commented Jun 17, 2022

We could eventually use sortpom to ensure pom.xml are well formatted.
But it seems that java 11 is required. (Ekryd/sortpom#225)

And there is maybe a bug : Ekryd/sortpom#229

See : sbernard31#11

✔️ Finally done and Integrated in master(see #1285)

@sbernard31
Copy link
Contributor Author

@adamsero, @JaroslawLegierski, I currently added this kind of tools to help new user to provide better PR.

The goal is to detect issues but also to provide some documentation to solve it.

I would really appreciate that you help me about this, providing feedback about that when you push PR.
(e.g. if documentation is not clear enough or how we could enhance it, etc etc ...)

@sbernard31
Copy link
Contributor Author

@sbernard31
Copy link
Contributor Author

I don't plan to add more at short term.

Maybe later with more checkstyle rules or code analysis tools.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build / ci All about Build or Continious Integration
Projects
None yet
Development

No branches or pull requests

1 participant