* Add workflow to upgrade Maven Wrapper
This GHA workflow checks for new Maven Warper scripts and upgrades Maven to
latest GA release (currently 3.x).
It runs once a week and creates a PR for possible changes.
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* Add workflow to resolve itest dependencies
Automate the process of building with option -DwithResolver
and possibly opening a PR.
This might not always be intended as the resolver does not do
minimalistic changes, but removes older dependency versions and adds
new ones at the end of the bndrun file. But it mitigates the problem that
itests fail silently due to missing dependencies (which is still the
case with bndtools 7.2.1).
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* Move triggering rebuild on label to separate workflow
* Grant permissions for removing label
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* This restores functionality we had before we migrated the PR builds
to GitHub Actions.
* Implement rebuild in ci_build workflow to make PR validation pass
* Remove label rebuild at the end of the workflow
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* Speedup Build
* GitHub Action for build and test is split up:
* build: spotless, build, test, itest
* sat: build, sat (checkstyle, pmd, spotbugs)
* javadoc: build javadoc to make sure it does not break
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
* pin external action stCarolas/setup-maven to specific SHA
* set global timeout
* comments
* restore broken registration of problem matchers
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
The GitHub Actions build workflow includes external Actions from
3rd party repositories.
The functionality of tj-actions/verify-changed-files was used to
detect modifications of files during the build process.
The external action is removed and replaced by custom code.
This is less flexible, but does not require an external action in the
build toolchain.
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
This fixes the following deprecation warning:
> Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20
Signed-off-by: Wouter Born <github@maindrain.net>
* Raise source level to Java 17 (except for model classes)
* Remove Nashorn script engine
* Upgrade spotless and add jvm options
See https://github.com/diffplug/spotless/issues/834
* Add suppression for findBugs false positive error
* Upgrade xtext to 2.29.0
* Adjust JNA
* Resolve itests
Signed-off-by: Jan N. Klug <github@klug.nrw>
* Upgrade actions to latest versions
* Upgrade Maven to 3.8.6
* Use Temurin JDK instead of Zulu JDK
The Temurin JDK is preinstalled in the [Ubuntu image](https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md#java) whereas the Zulu JDK first need to be downloaded.
It should also perform better because the Temurin JDK is linked to glibc 2.12 whereas the Zulu JDK is linked to glibc 2.5.
Signed-off-by: Wouter Born <github@maindrain.net>
Issues will be marked as stale after 60 days of inactivity when the "awaiting feedback" label is set. 180 days later the issue will be automatically closed. stale bot is limited to issues, not PR and will not consider issues that are marked with either "security", "pinned" or "PR pending" label.
Signed-off-by: Jan N. Klug <github@klug.nrw>
Fixes that the wrong build step was made conditional in #2817.
It should conditionally add annotations.
Signed-off-by: Wouter Born <github@maindrain.net>
This adds Java 17 to the GitHub Actions CI build matrix so we can make sure the build keeps working with both Java 11 and Java 17.
It also updates the required Java version range used by the enforcer plugin so it is also possible to build with the supported Java versions.
Furthermore it prevents duplicate error annotations being added by only adding these in the Java 11 matrix build.
Signed-off-by: Wouter Born <github@maindrain.net>
* Checkout merged branches for pull requests
* Echo the mvn command used for builds
* Use more functions in maven-build so it is similar to what will be used for add-on builds
Signed-off-by: Wouter Born <github@maindrain.net>
This PR adds a CI build using GitHub Actions.
Besides having a backup for Jenkins, it will also make it easy for contributors to use a GitHub Actions build with their fork.
It features the following:
* Uncluttered simple build progress like we used with Travis CI
* Uploads the full build log and SAT summary report so they can be downloaded for further analysis
* Uses a Maven repository cache to speed up builds (first build takes a bit longer)
* Has some maven.wagon configuration options to prevent Maven Central artifact download issues from Azure
* Uses a matrix so we can easily add builds for other OS-es or newer Java LTS versions in the future
Signed-off-by: Wouter Born <github@maindrain.net>