-
Notifications
You must be signed in to change notification settings - Fork 24.8k
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
Package ingest-geoip as a module #36898
Package ingest-geoip as a module #36898
Conversation
This commit moves ingest-geoip from being a plugin to being a module that is packaged with Elasticsearch distributions.
Pinging @elastic/es-core-infra |
Pinging @elastic/es-core-features |
@@ -222,6 +222,10 @@ void execute(Terminal terminal, String pluginId, boolean isBatch, Environment en | |||
throw new UserException(ExitCodes.USAGE, "plugin id is required"); | |||
} | |||
|
|||
if ("ingest-geoip".equals(pluginId)) { |
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 change will be backported to 6.x to avoid breaking users there, and a note will be added to the migration guide. A follow-up will remove this handling in master so that 7.x will indeed report the usual error message.
@@ -231,6 +235,12 @@ void execute(Terminal terminal, String pluginId, boolean isBatch, Environment en | |||
install(terminal, isBatch, extractedZip, env); | |||
} | |||
|
|||
private static void handleInstallIngestGeoIp() throws UserException { | |||
throw new UserException( | |||
ExitCodes.OK, |
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 is deliberately status code zero so as to avoid failing automation that relies on installing this plugin during deployment.
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.
Looks good but one question
@@ -84,6 +84,12 @@ void execute(Terminal terminal, Environment env, String pluginName, boolean purg | |||
throw new UserException(ExitCodes.USAGE, "plugin name is required"); | |||
} | |||
|
|||
if ("ingest-geoip".equals(pluginName)) { |
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.
Don't they still need to be able to remove? What if they upgrade before removing the old plugin, then without the remove command working it would have to be done manually to avoid errors later?
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.
Good call @rjernst. I pushed a commit to address this. Let me know what you think.
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
e, | ||
hasToString(Matchers.containsString( | ||
"ingest-geoip is no longer a plugin but instead a module packaged with this distribution of Elasticsearch"))); | ||
} |
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.
Can you please add a test here for the case the plugin is installed and it still gets removed?
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 pushed 503b055.
qa/vagrant/src/test/resources/packaging/tests/70_sysv_initd.bats
Outdated
Show resolved
Hide resolved
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.
👍
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
Relates #36949 |
* master: (31 commits) Move ingest-geoip default databases out of config (elastic#36949) [ILM][DOCS] add extra scenario to policy update docs (elastic#36871) [Painless] Add String Casting Tests (elastic#36945) SQL: documentation improvements and updates (elastic#36918) [DOCS] Merges list of discovery and cluster formation settings (elastic#36909) Only compress responses if request was compressed (elastic#36867) Remove duplicate paragraph (elastic#36942) Fix URI to cluster stats endpoint on specific nodes (elastic#36784) Fix typo in unitTest task (elastic#36930) RecoveryMonitor#lastSeenAccessTime should be volatile (elastic#36781) [CCR] Add `ccr.auto_follow_coordinator.wait_for_timeout` setting (elastic#36714) Scripting: Remove deprecated params.ctx (elastic#36848) Refactor the REST actions to clarify what endpoints are deprecated. (elastic#36869) Add JDK 12 to CI rotation (elastic#36915) Improve error message for 6.x style realm settings (elastic#36876) Send clear session as routable remote request (elastic#36805) [DOCS] Remove redundant ILM attributes (elastic#36808) SQL: Fix bug regarding histograms usage in scripting (elastic#36866) Update index mappings when ccr restore complete (elastic#36879) Docs: Bump version to alpha2 after release ...
This commit moves ingest-geoip from being a plugin to being a module that is packaged with Elasticsearch distributions.
Thank you for reviewing @jakelandis, @martijnvg, and @rjernst! |
This commit moves ingest-geoip from being a plugin to being a module that is packaged with Elasticsearch distributions.