Skip to content

Conversation

@jjfalling
Copy link

I removed the lockfile as it is not used anywhere and the service manager should take care of the locking. I also added SLES 11 support.
Tested on RHEL 6.7 and SLES 11 SP3

This fixes #6798 and #9366

@electrical
Copy link

@spinscale @tlrx ping

@clintongormley clintongormley added :Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >feature labels Aug 5, 2015
@spinscale
Copy link
Contributor

I only have a SP1 version to tests this against, and that one fails because of the RPM signature issue... no chance of automating this, unless there is a working SP3 vagrant VM

@electrical
Copy link

@spinscale SP3 will fail as well with the signed RPM.
We will need a second rpm repo with the V3 signature signed repo.

@salyh
Copy link

salyh commented Mar 21, 2016

+1 (lot of customers with SLES 11 are complaining about start scripts not working properly). The support matrix however lists SLES as a supported OS (talking about ES 2.2)

@jjfalling
Copy link
Author

I've updated the pr to include all of the changes in master. Should be ready to test.

retval=''
if [ $SUSE ]; then
# SLES uses startproc
startproc -u $ES_USER $exec -p $pidfile -d -Des.default.path.home=$ES_HOME -Des.default.path.logs=$LOG_DIR -Des.default.path.data=$DATA_DIR -Des.default.path.conf=$CONF_DIR &
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is passing incorrect parameters to the Elasticsearch start process; we use -E now.

rc_status -v
else
# For non-SLES usually something like "daemon $exec"
daemon --user $ES_USER --pidfile $pidfile $exec -p $pidfile -d -Des.default.path.home=$ES_HOME -Des.default.path.logs=$LOG_DIR -Des.default.path.data=$DATA_DIR -Des.default.path.conf=$CONF_DIR
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This stomps the previous change to the init script to pass parameters using -E.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops, good catch

@dakrone
Copy link
Member

dakrone commented Apr 6, 2016

@jasontedor you were the last to comment on this, do you want to review this?

@jasontedor
Copy link
Member

@jasontedor you were the last to comment on this, do you want to review this?

@dakrone This is not readily reviewable and can not be merged until we have Vagrant tests for SLES.

@clintongormley
Copy link
Contributor

We can't support RPM installation on SLES11-SP4 (old version of RPM, see #17470) so I'm going to close this.

@TomyLobo
Copy link

Great, after 5 PRs closed in favor of newer PRs, you finally decide to not take any of these simple patches to make elasticsearch work on SLES11.
It's a shitty, old OS, yes, but some people are forced to use it, have you ever thought about that before throwing away someone's work and making people's lives needlessly more difficult?

@clintongormley
Copy link
Contributor

@TomyLobo We won't pretend to support something that we can't by merging PRs that may or may not work on systems that we can't test. On top of that, the tooling we have available in master for building RPMs do not build RPMs that are installable on SLES11. Sorry, but doing so would make our developers' lives needlessly more difficult, and would potentially do the same for our users who are frustrated when things don't work as expected.

@TomyLobo
Copy link

No one is asking you to pretend anything.
There's a difference between pretending to support something and making your best effort without giving any guarantees.

Getting SLES is a little hard, I know, but does this even run on any SUSE linux version? openSUSE Leap 42.1, for instance, the latest lts version?
According to this article, you're supposed to use rc_status, not status:
https://en.opensuse.org/openSUSE:Packaging_init_scripts#Status_Functions

http://rpmfind.net/linux/RPM/opensuse/updates/leap/42.1/oss/x86_64/aaa_base-13.2+git20140911.61c1681-13.1.x86_64.html
This package contains openSUSE Leap 42.1's version of rc.status and it looks like this function is still called rc_status, with no alias to status.

So everything here suggests that this RPM won't run on a modern SUSE either and that if you fix it there, the init.d script will work on SLES11 and SLES12 as well.

@clintongormley
Copy link
Contributor

There's a difference between pretending to support something and making your best effort without giving any guarantees.

Unfortunately, users don't see it this way in practice. We've been bitten by this expectation before. We only support what we can test. We can't install the RPMs on SLES 11 so we can't support it.

Getting SLES is a little hard, I know, but does this even run on any SUSE linux version? openSUSE Leap 42.1, for instance, the latest lts version?

We test the RPMs on openSUSE 13 and on SLES 12, see https://elasticsearch-ci.elastic.co/view/All/job/elastic+elasticsearch+master+packaging-tests/

We don't currently test on Leap as nobody has asked for it thus far. Please open an issue if you would like us to support it.

@TomyLobo
Copy link

right, i forgot they switched to systemd with opensuse 12.1/sles12, so this script would no longer even be used on those systems.
So this really is a sles11-only problem.

@mark-vieira mark-vieira added the Team:Delivery Meta label for Delivery team label Nov 11, 2020
elasticsearchmachine pushed a commit that referenced this pull request Mar 26, 2025
omricohenn pushed a commit to omricohenn/elasticsearch that referenced this pull request Mar 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >feature Team:Delivery Meta label for Delivery team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

RPM-Installation not complete

9 participants