-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Encapsulate Redis Scan CursorId #2802
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
Changes from 4 commits
861e288
0072782
ad80933
36e50e7
e90caa0
4024815
54a33d6
ba4af60
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
ARG BASE | ||
FROM ${BASE} | ||
# Any ARG statements before FROM are cleared. | ||
ARG REDIS | ||
|
||
# Copy Spring Data Redis's Makefile into the container | ||
COPY ./Makefile / | ||
|
||
RUN set -eux; \ | ||
# sed -i -e 's/http/https/g' /etc/apt/sources.list ; \ | ||
apt-get update ; \ | ||
apt-get install -y build-essential ; \ | ||
make work/redis/bin/redis-cli work/redis/bin/redis-server REDIS_VERSION=${REDIS}; \ | ||
chmod -R o+rw work; \ | ||
apt-get clean; \ | ||
rm -rf /var/lib/apt/lists/*; |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,6 +14,7 @@ docker.mongodb.7.0.version=7.0.2 | |
|
||
# Supported versions of Redis | ||
docker.redis.6.version=6.2.13 | ||
docker.redis.7.version=7.2.4 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Mind updating the property in Spring Data Build as well? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. created the task already spring-projects/spring-data-build#2212 waiting for final review. |
||
|
||
# Supported versions of Cassandra | ||
docker.cassandra.3.version=3.11.16 | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,7 +18,7 @@ export JENKINS_USER=${JENKINS_USER_NAME} | |
export GRADLE_ENTERPRISE_ACCESS_KEY=${DEVELOCITY_ACCESS_KEY} | ||
|
||
# Execute maven test | ||
MAVEN_OPTS="-Duser.name=${JENKINS_USER} -Duser.home=/tmp/jenkins-home" ./mvnw -s settings.xml clean test -P${PROFILE} -DrunLongTests=${LONG_TESTS:-false} -U -B | ||
MAVEN_OPTS="-Duser.name=${JENKINS_USER} -Duser.home=/tmp/jenkins-home" ./mvnw -s settings.xml clean test -P${PROFILE} -DrunLongTests=${LONG_TESTS:-false} -Dgradle.cache.local.enabled=false -Dgradle.cache.remote.enabled=false -U -B | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @erichaagdev Can you provide guidance on how to not skip tests when running builds against different build stages where the only change is the Redis or JDK version? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This PR will cause all tests to re-run in builds with these Maven options since it disables the build cache. Test results come from cache when all inputs to the surefire/failsafe goal match a previous invocation in the cache. These inputs include the JDK version and the runtime classpath. So, assuming you have Redis in the classpath, these tests should re-execute on these sorts of changes even with the cache enabled. Have you seen different behavior than this? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
That is intended because we want to run integration tests against a different Redis version. Our Redis service is an externally managed service that does not affect the classpath. We would need to have to tell the caching inputs about a changed cache key somehow. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I see. Essentially, you want to represent the version of Redis as an input to the surefire/failsafe goals. The documentation for that can be found here. More specifically, you could either:
Either of these would invalidate the cache when the Redis version changes. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks for the detail. |
||
|
||
# Capture resulting exit code from maven (pass/fail) | ||
RESULT=$? | ||
|
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.
Something is off in indentation (tabs vs spaces).
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.
let me have a look at that.