-
Notifications
You must be signed in to change notification settings - Fork 2.3k
1.8 build issues #297
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
1.8 build issues #297
Conversation
Moving apache-rat to a different execution to avoid needing to setup another ignore list (i.e. .repository)
Also output invoker errors on CI
Update groovy version (uses an ASM version that supports java 14) Pre Java 14 "AES/GCM/PKCS5Padding" was basically an alias to "AES/GCM/NoPadding" this is no longer the case https://www.oracle.com/java/technologies/javase/14-relnote-issues.html#JDK-8180392 back-port: #231
This version will produce inline errors for better CI debugging
| steps { | ||
| echo 'Running tests' | ||
| sh 'mvn verify -Prun-its' | ||
| sh 'mvn verify -Prun-its ${MVN_LOCAL_REPO_OPT} -Dinvoker.streamLogsOnFailures=true' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we stick the invoker.streamLogsOnFailures=true in the pom?
<streamLogsOnFailures>true</streamLogsOnFailures>There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, because you don't want them on your PC, probably. You have build.log files there. That's what I find much more comfortable than scrolling through a console or even copy lots from there.
crypto/cipher/src/main/java/org/apache/shiro/crypto/AesCipherService.java
Show resolved
Hide resolved
| <easymock.version>4.1</easymock.version> | ||
| <gmaven.version>1.8.0</gmaven.version> | ||
| <groovy.version>2.5.8</groovy.version> | ||
| <groovy.version>2.5.14</groovy.version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
newer groovy uses an ASM version that supports Java 14
| <groupId>org.apache.shiro</groupId> | ||
| <artifactId>shiro-web</artifactId> | ||
| <version>1.7.1-SNAPSHOT</version> | ||
| <version>@project.version@</version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll double-check main to make sure this is also in place
Jenkinsfile-jdk11
Outdated
| steps { | ||
| echo 'Building' | ||
| sh 'mvn -U -B -e clean install -DskipTests apache-rat:check' | ||
| sh 'mvn -U -B -e apache-rat:check' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A bit of a cheat, execute "rat" using the global repo (shared with all builds) ~/.m2/repository
Other maven executions use .repository in the clean checkout directory.
Alternatively, I can configure the rat plugin to ignore .repository and add it to .gitignore?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sigh. That's why maven has a per-workspace repo. That shouldn't be needed and became a little better through the matrix build on main.
Or just do the rat check on jdk11 only.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 for this, but I'm going to move it in its own stage for now, and try to remove the duplication between these files on main.
Hopefully something like this in each Jenkins file:
const jdkVersion = 'jdk_8_latest'
const deploy = false
const rat = false
const supportedBranch = (env.BRANCH_NAME == "1.7.x" || env.BRANCH_NAME == "1.8.x" || env.BRANCH_NAME == "main") // we have a lot of this in the individual files
load('Jenkinsfile-common')I'm not sure that will work (given the scope of those globals 🤮), but I'll poke around with it
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh, this is already resolved on main with a matrix build 😄
* Move RAT to it's own stage * remove 1.6.x add 1.8.x * rename master with main (not this last bit could be replaced with just 1.8.x for this branch, but it will be easier to keep in sync with main this way
* Set shiro.previousVersion to 1.7.1 (less critical, as main is a MAJOR change, but it will help track diffs and create a migration guide) * combine branch checks into single const Merged-from: #297
* Set shiro.previousVersion to 1.7.1 (less critical, as main is a MAJOR change, but it will help track diffs and create a migration guide) * combine branch checks into single const Merged-from: #297
Fix version and build issues on 1.8 branch