Skip to content

bin/plugin in Debian package ignores path.plugins from /etc/elasticsearch/elasticsearch.yml #3304

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

Closed
dottedmag opened this issue Jul 9, 2013 · 2 comments · Fixed by #3339
Assignees

Comments

@dottedmag
Copy link

bin/plugin script in Debian package does not pass -Des.default.config to ElasticSearch.

As a result, if path.plugins is changed in /etc/elasticsearch/elasticsearch.yml, bin/plugin will install plugins to the wrong path.

@ghost ghost assigned spinscale Jul 10, 2013
@spinscale
Copy link
Contributor

I think it is possible to peek in the configuration directories of the the rpm/deb first and then execute the rest, I will try that soon...

spinscale added a commit to spinscale/elasticsearch that referenced this issue Jul 10, 2013
In case you are running the plugin command from a packaged installation
like the debian or RPM package, a change of the path.plugins directory
in the elasticsearch.yml directory was ignored, because it was not loaded.

This change checks for the existence of /etc/elasticsearch/elasticsearch.yml
and the absence of $ES_HOME/config/elasticsearch.yml - in that case a package
installation is assumed and the -Des.default.config parameter is appended to
the JAVA_OPTS if it does not exist yet.

Closes elastic#3304
spinscale added a commit to spinscale/elasticsearch that referenced this issue Jul 15, 2013
This decision helps people who want to rollout the oracle java without having an openjdk java installed.

* Removed any hard dependency on Java in the debian package
* The debian init script does not check for a JAVA_HOME anymore
* Changed the debian init script to rely on the pid file instead of the argument name of process
* Added a useful error message in case no java binary is available (in elasticsearch shell script)

Closes elastic#3304
Closes elastic#3311
spinscale added a commit that referenced this issue Jul 15, 2013
This decision helps people who want to rollout the oracle java without having an openjdk java installed.

* Removed any hard dependency on Java in the debian package
* The debian init script does not check for an existing JAVA_HOME anymore
* Debian and RedHat initscripts now exit if they do not find a java binary (instead of starting elasticsearch in the background and swallowing the error as there is no way to log it in that case)
* Changed the debian init script to rely on the pid file instead of the argument name of process
* Added a useful error message in case no java binary is available (in elasticsearch shell script)

Closes #3304
Closes #3311
@spinscale
Copy link
Contributor

referenced the wrong issue, reopening, sorry

@spinscale spinscale reopened this Jul 15, 2013
spinscale added a commit that referenced this issue Aug 2, 2013
Currently the bin/plugin command did not allow one to set jvm parameters
for startup. Usually this parameters are not needed (no need to configure
heap sizes for such a short running process), but one could not set the
configuration path. And that one is important for plugins in order find
out, where the plugin directory is.

This is especially problematic when elasticsearch is installed as
debian/rpm package, because the configuration file is not placed in the
same directory structure the plugin shell script is put.

This pull request allows to call bin/plugin like this

bin/plugin -Des.default.config=/etc/elasticsearch/elasticsearch.yml -install mobz/elasticsearch-head

As a last small improvement, the PluginManager now outputs the directort
the plugin was installed to in order to avoid confusion.

Closes #3304
mute pushed a commit to mute/elasticsearch that referenced this issue Jul 29, 2015
This decision helps people who want to rollout the oracle java without having an openjdk java installed.

* Removed any hard dependency on Java in the debian package
* The debian init script does not check for an existing JAVA_HOME anymore
* Debian and RedHat initscripts now exit if they do not find a java binary (instead of starting elasticsearch in the background and swallowing the error as there is no way to log it in that case)
* Changed the debian init script to rely on the pid file instead of the argument name of process
* Added a useful error message in case no java binary is available (in elasticsearch shell script)

Closes elastic#3304
Closes elastic#3311
mute pushed a commit to mute/elasticsearch that referenced this issue Jul 29, 2015
Currently the bin/plugin command did not allow one to set jvm parameters
for startup. Usually this parameters are not needed (no need to configure
heap sizes for such a short running process), but one could not set the
configuration path. And that one is important for plugins in order find
out, where the plugin directory is.

This is especially problematic when elasticsearch is installed as
debian/rpm package, because the configuration file is not placed in the
same directory structure the plugin shell script is put.

This pull request allows to call bin/plugin like this

bin/plugin -Des.default.config=/etc/elasticsearch/elasticsearch.yml -install mobz/elasticsearch-head

As a last small improvement, the PluginManager now outputs the directort
the plugin was installed to in order to avoid confusion.

Closes elastic#3304
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants