michaelklishin / cassandra-chef-cookbook

Chef cookbook for Apache Cassandra, DataStax Enterprise (DSE) and DataStax agent

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Can't configure DSE's config directory

rehevkor5 opened this issue · comments

When using the recipe to install DSE, the value of node['cassandra']['conf_dir'] has to be customized to /etc/dse/cassandra to match the installation location of DSE. However, that causes the following error:

ERROR: link[/etc/dse/cassandra] (cassandra-dse::datastax line 174) had an error: Errno::EISDIR: Is a directory - /etc/dse/cassandra

That's due to the recipe trying to symlink the configured conf_dir to the default conf_dir and failing because the configured conf_dir already exists (the DSE installation created it).

Either this link should not be done, or the symlink should be the other way around.

@rehevkor5, I have never run into this issue. What type of install were you performing?

Resources can be made conditional in Chef, so not linking if a directory already exists is certainly an option. Feel free to look into a pull request ;)

@cmlicata It installs the dse-full package via yum, which is the same as how you would install DSE if you weren't using Chef. It uses /etc/dse/cassandra as described on http://docs.datastax.com/en/cassandra/3.0/cassandra/configuration/configCassandra_yaml.html "DataStax Enterprise package installations: /etc/dse/cassandra".

@michaelklishin Sounds like a reasonable approach, I'll see what I can do.

@michaelklishin I'm rather puzzled as to why I get this error when I run bundle install:

$ ruby --version
ruby 2.2.5p319 (2016-04-26 revision 54774) [x86_64-darwin15]
$ gem list --local

*** LOCAL GEMS ***

bigdecimal (default: 1.2.6)
bundler (1.13.7)
bundler-unload (1.0.2)
executable-hooks (1.3.2)
gem-wrappers (1.2.7)
io-console (default: 0.4.3)
json (default: 1.8.1)
psych (default: 2.0.8)
rake (default: 10.4.2)
rdoc (default: 4.2.0)
rubygems-bundler (1.4.4)
rvm (1.11.3.9)
$ bundle install
Fetching gem metadata from https://rubygems.org/...........
Fetching version metadata from https://rubygems.org/...
Fetching dependency metadata from https://rubygems.org/..
You have requested:
  ruby_dep = 1.3.1

The bundle currently has ruby_dep locked at 1.5.0.
Try running `bundle update ruby_dep`

If you are updating multiple gems in your Gemfile at once,
try passing them all to `bundle update`

Do you have any advice? I did not modify Gemfile at all.

Never mind... I see now that Gemfile.lock is not in source control (in fact it's in .gitignore). Maybe you have a good reason for that, but it's not what I expected... the lock file is what makes sure that everyone uses the same version of things.