-
Notifications
You must be signed in to change notification settings - Fork 50
Update maven installer to not use search.maven.org
#1611
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
Conversation
… the search service. This covers both determining the latest version and downloading the actual artifact.
✅ 22/22 passed, 1 skipped, 32s total Running from acceptance #863 |
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.
LGTM
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.
@asnare while testing this manually this worked correctly by identifying the new release as 0.3.0 unlike the old search but
os.rename(self._product_path, backup_path) failed with a non empty directory error.
I noticed the same. Examining the published JAR, it looks like it contains |
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.
LGTM
* main: Drop post-install support for Java-based transpilers (#1616) Distinguish errors from warnings in the output query header (#1620) configure synapse credentials (#1535) Fix timestamp in morpheus transpiler state file (#1615) Telemetry (#1618) Patch Prompt Question with Default (#1617) Modify Analyzer CLI (#1609) Update maven installer to not use `search.maven.org` (#1611) # Conflicts: # src/databricks/labs/remorph/cli.py # src/databricks/labs/remorph/install.py
Changes
What does this PR do?
This PR updates
MavenInstaller
so that it no longer usessearch.maven.org
to either:Relevant implementation details
The installer now fetches the metadata needed for detecting the version, as well as the artefact itself, from the maven central repository directly. This is the CDN-backed service where artefacts are supposed to be fetched from, and it is much more reliable than the search service.
In addition to this, the installer had some logic that could abort the installation if a file already exists at the target location on the local filesystem. This check now happens before the download so that it aborts immediately rather than first performing the (ultimately futile) download.
Caveats/things to watch out for when reviewing:
In addition to using the repository directly, this PR starts plumbing through support for providing the artefact classifier.
Another PR will be needed to:1. Expose the classifier as a parameter.2. Updateinstall_morpheus()
to provide the classifier.(Without these the normal installer will fail even after we publish morpheus because we're not currently specifying the classifier.)[It looks like we're not publishing with a classifier, so this isn't needed.]
Linked issues
Resolves #1602
Functionality
databricks labs remorph install-transpile
Tests