[chef] Re: Re: Need to copy a file after installation to another place


Chronological Thread 
  • From: Russell Bateman < >
  • To:
  • Subject: [chef] Re: Re: Need to copy a file after installation to another place
  • Date: Wed, 04 Sep 2013 12:09:33 -0600

Thanks, many have tried that, but the OS will not be fooled. It must be a copy.

On 9/4/2013 12:07 PM, Nic Grayson wrote:
" type="cite">
You could just create a symlink in the location you want.

Nic


On Wed, Sep 4, 2013 at 1:06 PM, Russell Bateman < " target="_blank"> > wrote:
I'm creating a node in a MongoDB replica set that furnishes a) an arbiter, b) a configsvr and c) a sharding router. Unfortunately, as the binary that implements the arbiter and the configsvr are one and the same (mongod) and it cannot be multiply loaded, the customary action is to make a copy of it. This sort of thing is only done on testing instances (not in production).

So, one recipe installs MongoDB via the Debian package. mongod is on the path /usr/bin/mongod and I want to make a copy of it on the path /data/mongodb/bin/mongd. My configsvr.rb recipe ends with this:

# Copy /usr/bin/mongod to /data/mongodb/bin/mongod because a separate copy
# must exist in order for the configuration server's mongod instance not
# to conflict with the arbiter's instance. This copy will be referenced by
# /etc/init/mongodb-configsvr.conf.
file "/data/mongodb/bin/mongod" do
  action :create
  owner "mongodb"
  group "mongodb"
  mode 00755
  content IO.read( "/usr/bin/mongod" )
end

Sadly, this only creates a zero-length file.

I'm guessing this will be a Chef anti-pattern and I do want to hear the cat-calls, but I'd also like a solution.

Profuse thanks for reading this.

Best,

Russ





Archive powered by MHonArc 2.6.16.

§