Kukla ile yapılandırılmış bir üretim ortamımız var ve geliştirme makinelerimizde benzer bir ortam kurmak istiyoruz: Red Hats, Ubuntus ve OSX karışımı. Tahmin edilebileceği gibi, OSX buradaki garip bir adam ve ne yazık ki, bunun işe yaramasıyla ilgili çok sorun yaşıyorum.
İlk denemem macports
şu beyanı kullanarak kullanmaktı:
package { 'rabbitmq-server':
ensure => installed,
provider => macports,
}
ancak bu ne yazık ki aşağıdaki hatayı oluşturur:
Error: /Stage[main]/Rabbitmq/Package[rabbitmq-server]: Could not evaluate: Execution of '/opt/local/bin/port -q installed rabbitmq-server' returned 1: usage: cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-s] [-d delim] [file ...]
while executing
"exec dscl -q . -read /Users/$env(SUDO_USER) NFSHomeDirectory | cut -d ' ' -f 2"
(procedure "mportinit" line 95)
invoked from within
"mportinit ui_options global_options global_variations"
Sıradaki, homebrew
denemek istediğimi düşündüm . Varsayılan olarak hiçbir paket sağlayıcısı yoktur, ancak kukla-homebrew umut verici görünüyordu. Burada çok daha uzağa gittim ve aslında kurulumu işe koymayı başardım.
package { 'rabbitmq':
ensure => installed,
provider => brew,
}
file { "plist":
path => "/Library/LaunchDaemons/homebrew.mxcl.rabbitmq.plist",
source => "/usr/local/opt/rabbitmq/homebrew.mxcl.rabbitmq.plist",
ensure => present,
owner => root,
group => wheel,
mode => 0644,
}
service { "homebrew.mxcl.rabbitmq":
enable => true,
ensure => running,
provider => "launchd",
require => [ File["/Library/LaunchDaemons/homebrew.mxcl.rabbitmq.plist"] ],
}
Burada herhangi bir hata almıyorum. Ancak RabbitMQ da başlamaz (ile manuel yük yaptığımda olduğu gibi launchctl
)
[... snip ...]
Debug: Executing '/bin/launchctl list'
Debug: Executing '/usr/bin/plutil -convert xml1 -o /dev/stdout
/Library/LaunchDaemons/homebrew.mxcl.rabbitmq.plist'
Debug: Executing '/usr/bin/plutil -convert xml1 -o /dev/stdout
/var/db/launchd.db/com.apple.launchd/overrides.plist'
Debug: /Schedule[weekly]: Skipping device resources because running on a host
Debug: /Schedule[puppet]: Skipping device resources because running on a host
Debug: Finishing transaction 2248294820
Debug: Storing state
Debug: Stored state in 0.01 seconds
Finished catalog run in 25.90 seconds
Neyi yanlış yapıyorum?
Düzenleme : Kayıt için, şimdi bunu OSX makinelerimizde Vagrant VM'lerle yapıyoruz, ancak yerel çözüm yine de tercih edilecektir.
sudo puppet apply manifest.pp
Kukla 3.0.1 üzerinde çalışıyor, Facter 1.6.16 @JohnSiu: Ne yazık ki orada da hiçbir şey yok.
puppet apply manifest.pp
?