-
Notifications
You must be signed in to change notification settings - Fork 38
SQL-2544: Merge on-prem-eap
branch into master
#337
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
base: master
Are you sure you want to change the base?
Conversation
* add eap to jar names; disable publishing to maven * fix s3 puts * remove silk * update bucket name * cleanup evg file * cleanup pt2 * remove final bucket ref * feedback
…mongodb#288) * SQL-2380: Initial evergreen attempt to fetch library files * SQL-2380: Do not use variables * SQL-2380: Fix variables * SQL-2380: Update build task to fetch all libraries * SQL-2380: Special case windows for now * SQL-2380: Remove debug code * SQL-2380: Debug code to check that files are included in jar * SQL-2380: Clean up debug code * SQL-2380: Restore unintended change * SQL-2380: Parse lib version from tag and use that for fetching * SQL-2380: Fix typo * SQL-2380: Properly export new variable * Update .evg.yml Co-authored-by: Natacha Bagnard <[email protected]> * Update .evg.yml Co-authored-by: Patrick Meredith <[email protected]> --------- Co-authored-by: Natacha Bagnard <[email protected]> Co-authored-by: Patrick Meredith <[email protected]>
…er (mongodb#290) * Add integration tests * Load library based on JVMplatform/os info --------- Co-authored-by: Oliver Bucaojit <[email protected]>
This reverts commit d3d606c.
…fetch function in JDBC (mongodb#291) * remove fetch mongosqltranslate windows * rename windows folder to be consistent with evergreen
* Release artifacts to translators-connectors-releases/eap/mongo-jdbc-driver-eap/ Co-authored-by: Oliver Bucaojit <[email protected]>
* Update logic to extract versions * Use correct input Co-authored-by: Oliver Bucaojit <[email protected]> --------- Co-authored-by: Oliver Bucaojit <[email protected]>
* SQL-2385: JDBC documentation * feedback and formatting
* Use property to flag tag triggered releases * Simplify logic * Fix typ * Adding useful build logs
* SQL-2387: upload jdbc docs * udpate name
* SQL-2423: correctly report db version * test length * spotless * rework to be more streamlined * SQL-2423: update logic * spotless * add logging * reset libmongosqltranslate * refactor * add comment * spotless
* SQL-2461: Add getCursorName * SQL-2461: Add getCursorName * SQL-2461: Add getCursorName
* SQL-2436: Split variables intialization for JDBC * SQL-2436: Move SSDLC variables to first logging command
* add handling for non-integer indexes * change null to empty string * add filter to stream to remove non-integer indexes * add boolean valueType to sortableBsonDoc
* SQL-2463: update release instructions * change pr base * remove files * add quotes * wording change * clarify tags * clarify versioning * clarifications
* Augment original uri for specific auth mech * remove redundant comments * Throw instead of returning Null when the augment the uri won't work * Don't forget to wrap the exception in a SQLException * Spotless
* Add THIRDPARTY-LICENSE notice * Clean-up
.evg.yml
Outdated
@@ -713,11 +832,21 @@ functions: | |||
script: | | |||
ARTIFACTS_DIR=artifacts | |||
S3_ARTIFACTS_DIR='mongo-jdbc-driver/artifacts/${version_id}/${build_variant}' | |||
export BUILD_TYPE="snapshot" |
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.
Added this BUILD_TYPE variable to use for the tasks to determine whether the eap or standard build is running.
mongosqlTranslate.getMongosqlTranslateVersion().version; | ||
if (!mongosqlTranslate.checkDriverVersion().compatible) { | ||
String version = MongoDriver.getVersion(); | ||
if (MongoDriver.isEapBuild()) { |
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.
Added check for build type based on whether the version contains libv
@@ -12,6 +12,8 @@ import com.github.jk1.license.render.TextReportRenderer | |||
|
|||
if (project.hasProperty('isTagTriggered')) { | |||
version = getAbbreviatedGitVersion() | |||
} else if (project.hasProperty('isEapBuild')){ |
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.
Added this property for integration tests to set the version to the eap
format.
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.
Really good work! I had one question/concern, and a request: Can you run an eap build to make sure it all functions?
.evg.yml
Outdated
@@ -167,6 +134,8 @@ tasks: | |||
- func: "run smoke test" | |||
|
|||
- name: "publish-maven" | |||
# TODO: remove this before merging eap branch back into main branch, to allow download center to update. |
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.
Wondering if we should put a check in the publish-maven task that prevents it from functioning if eap.
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.
Yeah, sure I added some checks for publish-maven, publish-s3, download center, and ssdlc tasks.
@terakilobyte Here's a run with the eap build:
The release has one smoke test failure, it looks like the version wasn't set to the EAP version I suspect because the git tag isn't set. I'll find something else I can set to fake that. |
The last commit fixes the issue I was seeing with trying to manually test the eap build with setting the env variables to BUILD_TYPE=eap. |
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.
Pretty good work getting all the way there already! 🔥
I reviewed as thoroughly as I could and noted a couple of things.
But I will likely have to pull it and use it to do the final review pass.
./gradlew :smoketest:test -Psmoketest | ||
EXITCODE=$? | ||
./resources/run_adf.sh stop | ||
exit $EXITCODE | ||
|
||
"export variables": | ||
- command: shell.exec |
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 think something happened and the commands have been duplicated/added to each other.
My guess it that you want to dedup this and tune the step where MDBJBC_VER and LIBMONGOSQLTRANSLATE are calculated.
if [[ "${triggered_by_git_tag}" == *"-libv"* ]]; then | ||
echo "Detected EAP tag format." | ||
export BUILD_TYPE="eap" | ||
else | ||
echo "Setting standard build." | ||
export BUILD_TYPE="standard" | ||
fi | ||
export MDBJDBC_VER=$(echo ${triggered_by_git_tag} | sed s/v//) | ||
else | ||
export MDBJDBC_VER=snapshot | ||
export BUILD_TYPE=snapshot |
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.
if [[ "${triggered_by_git_tag}" == *"-libv"* ]]; then | |
echo "Detected EAP tag format." | |
export BUILD_TYPE="eap" | |
else | |
echo "Setting standard build." | |
export BUILD_TYPE="standard" | |
fi | |
export MDBJDBC_VER=$(echo ${triggered_by_git_tag} | sed s/v//) | |
else | |
export MDBJDBC_VER=snapshot | |
export BUILD_TYPE=snapshot | |
if [[ "${triggered_by_git_tag}" == *"-libv"* ]]; then | |
echo "Detected EAP tag format." | |
export BUILD_TYPE="eap" | |
# tag should be formatted as 'v<JDBC major>.<minor>.<patch>-libv<libmongosqltranslate major>.<minor>.<patch> | |
export MDBJDBC_VER=$(echo ${triggered_by_git_tag} | awk -F'-libv' '{print $1}' | sed s/v// ) | |
export LIBMONGOSQLTRANSLATE_VER=$(echo ${triggered_by_git_tag} | awk -F'-libv' '{print $2}') | |
else | |
echo "Setting standard build." | |
export BUILD_TYPE="standard" | |
export MDBJDBC_VER=$(echo ${triggered_by_git_tag} | sed s/v//) | |
fi | |
else | |
export MDBJDBC_VER=snapshot | |
export LIBMONGOSQLTRANSLATE_VER=snapshot | |
export BUILD_TYPE=snapshot |
private int serverMajorVersion; | ||
private int serverMinorVersion; |
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.
Are these variables used?
GetNamespacesResult namespaceResult = | ||
mongoSQLTranslate.getNamespaces(currentDB.getName(), sql); | ||
|
||
logger.log(Level.FINE, "Namespaces: " + namespaceResult); |
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.
We want to keep the logs. It's probably because I pushed the PR after you started the merge work
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.
You don't want to revert the changes in src/main/java/com/mongodb/jdbc/mongosql
. I believe.
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.
Keep file from master here too.
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.
Keep file from master here too.
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.
Keep file from master here too.
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.
This one is trickier. You want to keep the first 186 lines from master, but incorporate the fixes for empty schemas done later in the file.
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.
Keep file from master here too.
Note: Still working through eap integration test and evergreen issues, other area can be reviewed.Merging the eap branch into master so that we only have one branch to manage and avoid needing to cherry-pick.
Added version check in MongoConnection to only allow eap builds to support direct connection.
Added gradle changes for running eap integration tests.
Added conditional logic for whether to run tasks or not based on the BUILD_TYPE env variable.