Coder Social home page Coder Social logo

puppet-zookeeper's Introduction

Zookeeper Puppet Module for Boxen

Build Status

Apache Zookeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.

Usage

include zookeeper

Required Puppet Modules

  • boxen
  • homebrew

Development

Write code. Run script/cibuild to test it. Check the script directory for other useful tools.

puppet-zookeeper's People

Contributors

gii-brian-johnson avatar mattheath avatar mattoddie avatar obeattie avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

puppet-zookeeper's Issues

Outputs several errors on subsequent boxen runs

Ensuring all traces are removed

[/opt/boxen]$ find . | grep zk
./homebrew/Cellar/zsh/5.0.5/share/zsh/functions/zkbd
./homebrew/share/zsh/functions/zkbd
[/opt/boxen]$ find . | grep zookeeper
./homebrew/Library/Formula/zookeeper.rb
[/opt/boxen]$ sudo launchctl stop dev.zookeeper
[/opt/boxen]$ sudo launchctl remove dev.zookeeper                                                                          ruby:2.1.2
[/opt/boxen]$ sudo launchctl list | grep zoo

Without puppet-zookeeper

[/opt/boxen]$ boxen
Boxen is up-to-date.
Notice: Compiled catalog for digby3.local in environment production in 5.85 seconds
Notice: Package[tmux](provider=homebrew): Updating homebrew formulas
Error: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Wrapped exception:
Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Error: /Stage[main]/Crowdtap::Dotfiles/Package[tmux]/ensure: change from 1.9a to 1.8 failed: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Notice: /Stage[main]/Crowdtap::Environment/Ruby_gem[tap-rails]/ensure: created

Adding puppet-zookeeper to Puppetfile and including

[/opt/boxen]$ cd repo
[/opt/boxen/repo]$ git stash apply
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   Puppetfile
    modified:   Puppetfile.lock
    modified:   modules/crowdtap/manifests/environment.pp

no changes added to commit (use "git add" and/or "git commit -a")
[/opt/boxen/repo]$ git diff | cat
diff --git a/Puppetfile b/Puppetfile
index 1108bf0..5672ff3 100644
--- a/Puppetfile
+++ b/Puppetfile
@@ -67,6 +67,7 @@ github "mongodb",       "1.2.1"
 github "packer",        "1.3.0"
 github "tokumx",        "2.0.0", :repo => "crowdtap/puppet-tokumx"
 github "redis",         "2.1.0"
+github "zookeeper",     "1.0.4"

 github "chrome",  "1.1.0"
 github "hipchat", "1.1.0"
diff --git a/Puppetfile.lock b/Puppetfile.lock
index 75d477d..9b42b86 100644
--- a/Puppetfile.lock
+++ b/Puppetfile.lock
@@ -134,6 +134,11 @@ GITHUBTARBALL
     xquartz (1.2.1)

 GITHUBTARBALL
+  remote: boxen/puppet-zookeeper
+  specs:
+    zookeeper (1.0.4)
+
+GITHUBTARBALL
   remote: boxen/puppet-zsh
   specs:
     zsh (1.0.0)
@@ -202,5 +207,6 @@ DEPENDENCIES
   sudo (= 1.0.0)
   tokumx (= 2.0.0)
   xquartz (= 1.2.1)
+  zookeeper (= 1.0.4)
   zsh (= 1.0.0)

diff --git a/modules/crowdtap/manifests/environment.pp b/modules/crowdtap/manifests/environment.pp
index 2d7890e..d069d57 100644
--- a/modules/crowdtap/manifests/environment.pp
+++ b/modules/crowdtap/manifests/environment.pp
@@ -5,6 +5,7 @@ class crowdtap::environment {
   include packer
   include rabbitmq
   include xquartz
+  include zookeeper

   package { 'imagemagick': }
   package { 'parallel': }
[/opt/boxen/repo]$ cd ../

First run

[/opt/boxen]$ boxen
Boxen has a dirty tree, won't auto-update!
Notice: Compiled catalog for digby3.local in environment production in 4.62 seconds
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/config/zookeeper]/ensure: created
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/config/zookeeper/defaults]/ensure: defined content as '{md5}d4ec0aa9006d60d20862798cf5b4f5c2'
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/config/zookeeper/log4j.properties]/ensure: defined content as '{md5}2cf9d70d5a8650b6d671712fc785e0a7'
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/log/zookeeper]/owner: owner changed 'root' to 'donaldg'
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/config/zookeeper/zoo.cfg]/ensure: defined content as '{md5}72c6461818426bfdf203efc67059776e'
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/data/zookeeper]/ensure: created
Notice: /Stage[main]/Zookeeper/File[/opt/boxen/env.d/zookeeper.sh]/ensure: defined content as '{md5}ce7016eb09bae73902f6cd0dabe4de71'
Notice: Package[zookeeper](provider=homebrew): Updating homebrew formulas
Notice: /Stage[main]/Zookeeper/Package[zookeeper]/ensure: created
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCli]/File[/opt/boxen/homebrew/bin/zkCli]/ensure: defined content as '{md5}92e846e35897739a340216d77bfad48a'
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkServer]/File[/opt/boxen/homebrew/bin/zkServer]/ensure: defined content as '{md5}48b6fe48edd8122c33b87b012065887c'
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCleanup]/File[/opt/boxen/homebrew/bin/zkCleanup]/ensure: defined content as '{md5}f683212c8a4cccc855f687dfab988231'
Error: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Wrapped exception:
Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Error: /Stage[main]/Crowdtap::Dotfiles/Package[tmux]/ensure: change from 1.9a to 1.8 failed: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Notice: /Stage[main]/Zookeeper/Service[dev.zookeeper]/ensure: ensure changed 'stopped' to 'running'
Notice: /Stage[main]/Crowdtap::Environment/Ruby_gem[tap-rails]/ensure: created
[/opt/boxen]$ echo 'ruok' | nc localhost 12181
imok%

Subsequent run:

[/opt/boxen]$ boxen
Boxen has a dirty tree, won't auto-update!
Notice: Compiled catalog for digby3.local in environment production in 4.00 seconds
Notice: /Stage[main]/Zookeeper/Package[boxen/brews/zookeeper]/ensure: removed
Notice: Package[zookeeper](provider=homebrew): Updating homebrew formulas
Error: Could not update: Execution of 'brew install zookeeper --build-from-source' returned 1: ==> Downloading http://www.apache.org/dyn/closer.cgi?path=zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
Already downloaded: /opt/boxen/cache/homebrew/zookeeper-3.4.6.tar.gz
==> Downloading https://issues.apache.org/jira/secure/attachment/12673210/ZOOKEEPER-2049.noprefix.branch-3.4.patch
Already downloaded: /opt/boxen/cache/homebrew/zookeeper--patch-ff0e971c028050ccebd8cc7caa348ab14716d664.patch
==> Patching
patching file src/c/include/recordio.h
patching file src/c/src/recordio.c
patching file src/c/src/zookeeper.c
patching file src/c/tests/ZKMocks.cc
==> ./configure --prefix=/opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1 --without-cppunit
==> make install
==> Caveats
To have launchd start zookeeper at login:
    ln -sfv /opt/boxen/homebrew/opt/zookeeper/*.plist ~/Library/LaunchAgents
Then to load zookeeper now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.zookeeper.plist
Or, if you don't want/need launchctl, you can just run:
    zkServer start
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /opt/boxen/homebrew
Could not symlink bin/zkCleanup
Target /opt/boxen/homebrew/bin/zkCleanup
already exists. You may want to remove it:
  rm '/opt/boxen/homebrew/bin/zkCleanup'

To force the link and overwrite all conflicting files:
  brew link --overwrite zookeeper

To list all files that would be deleted:
  brew link --overwrite --dry-run zookeeper

Possible conflicting files are:
/opt/boxen/homebrew/bin/zkCleanup
/opt/boxen/homebrew/bin/zkCli
/opt/boxen/homebrew/bin/zkServer
==> Not running post_install as we're building a bottle
You can run it manually using `brew postinstall zookeeper`
==> Summary
๐Ÿบ  /opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1: 207 files, 13M, built in 17 seconds
Wrapped exception:
Execution of 'brew install zookeeper --build-from-source' returned 1: ==> Downloading http://www.apache.org/dyn/closer.cgi?path=zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
Already downloaded: /opt/boxen/cache/homebrew/zookeeper-3.4.6.tar.gz
==> Downloading https://issues.apache.org/jira/secure/attachment/12673210/ZOOKEEPER-2049.noprefix.branch-3.4.patch
Already downloaded: /opt/boxen/cache/homebrew/zookeeper--patch-ff0e971c028050ccebd8cc7caa348ab14716d664.patch
==> Patching
patching file src/c/include/recordio.h
patching file src/c/src/recordio.c
patching file src/c/src/zookeeper.c
patching file src/c/tests/ZKMocks.cc
==> ./configure --prefix=/opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1 --without-cppunit
==> make install
==> Caveats
To have launchd start zookeeper at login:
    ln -sfv /opt/boxen/homebrew/opt/zookeeper/*.plist ~/Library/LaunchAgents
Then to load zookeeper now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.zookeeper.plist
Or, if you don't want/need launchctl, you can just run:
    zkServer start
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /opt/boxen/homebrew
Could not symlink bin/zkCleanup
Target /opt/boxen/homebrew/bin/zkCleanup
already exists. You may want to remove it:
  rm '/opt/boxen/homebrew/bin/zkCleanup'

To force the link and overwrite all conflicting files:
  brew link --overwrite zookeeper

To list all files that would be deleted:
  brew link --overwrite --dry-run zookeeper

Possible conflicting files are:
/opt/boxen/homebrew/bin/zkCleanup
/opt/boxen/homebrew/bin/zkCli
/opt/boxen/homebrew/bin/zkServer
==> Not running post_install as we're building a bottle
You can run it manually using `brew postinstall zookeeper`
==> Summary
๐Ÿบ  /opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1: 207 files, 13M, built in 17 seconds
Error: /Stage[main]/Zookeeper/Package[zookeeper]/ensure: change from absent to 3.4.6_1 failed: Could not update: Execution of 'brew install zookeeper --build-from-source' returned 1: ==> Downloading http://www.apache.org/dyn/closer.cgi?path=zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
Already downloaded: /opt/boxen/cache/homebrew/zookeeper-3.4.6.tar.gz
==> Downloading https://issues.apache.org/jira/secure/attachment/12673210/ZOOKEEPER-2049.noprefix.branch-3.4.patch
Already downloaded: /opt/boxen/cache/homebrew/zookeeper--patch-ff0e971c028050ccebd8cc7caa348ab14716d664.patch
==> Patching
patching file src/c/include/recordio.h
patching file src/c/src/recordio.c
patching file src/c/src/zookeeper.c
patching file src/c/tests/ZKMocks.cc
==> ./configure --prefix=/opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1 --without-cppunit
==> make install
==> Caveats
To have launchd start zookeeper at login:
    ln -sfv /opt/boxen/homebrew/opt/zookeeper/*.plist ~/Library/LaunchAgents
Then to load zookeeper now:
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.zookeeper.plist
Or, if you don't want/need launchctl, you can just run:
    zkServer start
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /opt/boxen/homebrew
Could not symlink bin/zkCleanup
Target /opt/boxen/homebrew/bin/zkCleanup
already exists. You may want to remove it:
  rm '/opt/boxen/homebrew/bin/zkCleanup'

To force the link and overwrite all conflicting files:
  brew link --overwrite zookeeper

To list all files that would be deleted:
  brew link --overwrite --dry-run zookeeper

Possible conflicting files are:
/opt/boxen/homebrew/bin/zkCleanup
/opt/boxen/homebrew/bin/zkCli
/opt/boxen/homebrew/bin/zkServer
==> Not running post_install as we're building a bottle
You can run it manually using `brew postinstall zookeeper`
==> Summary
๐Ÿบ  /opt/boxen/homebrew/Cellar/zookeeper/3.4.6_1: 207 files, 13M, built in 17 seconds
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCli]/File[/opt/boxen/homebrew/bin/zkCli]: Dependency Package[zookeeper] has failures: true
Warning: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCli]/File[/opt/boxen/homebrew/bin/zkCli]: Skipping because of failed dependencies
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkServer]/File[/opt/boxen/homebrew/bin/zkServer]: Dependency Package[zookeeper] has failures: true
Warning: /Stage[main]/Zookeeper/Zookeeper::Shim[zkServer]/File[/opt/boxen/homebrew/bin/zkServer]: Skipping because of failed dependencies
Notice: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCleanup]/File[/opt/boxen/homebrew/bin/zkCleanup]: Dependency Package[zookeeper] has failures: true
Warning: /Stage[main]/Zookeeper/Zookeeper::Shim[zkCleanup]/File[/opt/boxen/homebrew/bin/zkCleanup]: Skipping because of failed dependencies
Error: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Wrapped exception:
Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Error: /Stage[main]/Crowdtap::Dotfiles/Package[tmux]/ensure: change from 1.9a to 1.8 failed: Could not update: Execution of 'brew boxen-upgrade tmux' returned 1: Error: tmux 1.9a already installed
Notice: /Stage[main]/Zookeeper/File[/Library/LaunchDaemons/dev.zookeeper.plist]: Dependency Package[zookeeper] has failures: true
Warning: /Stage[main]/Zookeeper/File[/Library/LaunchDaemons/dev.zookeeper.plist]: Skipping because of failed dependencies
Notice: /Stage[main]/Zookeeper/Service[dev.zookeeper]: Dependency Package[zookeeper] has failures: true
Warning: /Stage[main]/Zookeeper/Service[dev.zookeeper]: Skipping because of failed dependencies
Notice: /Stage[main]/Crowdtap::Environment/Ruby_gem[tap-rails]/ensure: created
[/opt/boxen]$

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.