corl 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. data/Gemfile +5 -10
  2. data/Gemfile.lock +13 -11
  3. data/README.rdoc +1 -1
  4. data/Rakefile +3 -3
  5. data/VERSION +1 -1
  6. data/bin/corl +2 -54
  7. data/bootstrap/bootstrap.sh +91 -0
  8. data/bootstrap/lib/shell/LICENSE.txt +674 -0
  9. data/bootstrap/lib/shell/command.sh +214 -0
  10. data/bootstrap/lib/shell/filesystem.sh +139 -0
  11. data/bootstrap/lib/shell/load.sh +73 -0
  12. data/bootstrap/lib/shell/os.sh +67 -0
  13. data/bootstrap/lib/shell/script.sh +160 -0
  14. data/bootstrap/lib/shell/starter.sh +64 -0
  15. data/bootstrap/lib/shell/validators.sh +50 -0
  16. data/bootstrap/os/ubuntu/00_base.sh +5 -0
  17. data/bootstrap/os/ubuntu/01_git.sh +5 -0
  18. data/bootstrap/os/ubuntu/05_ruby.sh +7 -0
  19. data/bootstrap/os/ubuntu/06_puppet.sh +38 -0
  20. data/bootstrap/os/ubuntu/10_corl.sh +9 -0
  21. data/corl.gemspec +61 -124
  22. data/lib/{corl → CORL}/action/bootstrap.rb +13 -7
  23. data/lib/CORL/action/exec.rb +39 -0
  24. data/lib/CORL/action/image.rb +31 -0
  25. data/lib/{corl → CORL}/action/images.rb +1 -1
  26. data/lib/CORL/action/lookup.rb +34 -0
  27. data/lib/{corl → CORL}/action/machines.rb +1 -1
  28. data/lib/CORL/action/provision.rb +31 -0
  29. data/lib/{corl → CORL}/action/seed.rb +3 -3
  30. data/lib/{corl → CORL}/action/spawn.rb +2 -2
  31. data/lib/CORL/action/start.rb +31 -0
  32. data/lib/CORL/action/stop.rb +31 -0
  33. data/lib/{corl → CORL}/configuration/file.rb +1 -1
  34. data/lib/{corl → CORL}/event/puppet.rb +1 -1
  35. data/lib/{corl → CORL}/extension/puppetloader.rb +1 -1
  36. data/lib/{corl → CORL}/machine/fog.rb +3 -3
  37. data/lib/{corl → CORL}/machine/physical.rb +2 -2
  38. data/lib/{corl → CORL}/network/default.rb +1 -1
  39. data/lib/{corl → CORL}/node/aws.rb +0 -4
  40. data/lib/{corl → CORL}/node/google.rb +0 -4
  41. data/lib/{corl → CORL}/node/local.rb +1 -1
  42. data/lib/{corl → CORL}/node/rackspace.rb +0 -4
  43. data/lib/{corl → CORL}/provisioner/puppetnode.rb +1 -14
  44. data/lib/{corl → CORL}/provisioner/puppetnode/resource.rb +0 -0
  45. data/lib/{corl → CORL}/provisioner/puppetnode/resource_group.rb +0 -0
  46. data/lib/{corl → CORL}/template/environment.rb +1 -1
  47. data/lib/core/facade.rb +49 -0
  48. data/lib/{corl_core → core}/mixin/action/keypair.rb +10 -10
  49. data/lib/{corl_core → core}/mixin/lookup.rb +0 -0
  50. data/lib/{corl_core → core}/mod/hiera_backend.rb +0 -0
  51. data/lib/{corl_core/mixin/action/node.rb → core/plugin/action.rb} +66 -33
  52. data/lib/{corl_core → core}/plugin/configuration.rb +2 -2
  53. data/lib/{corl/node → core/plugin}/fog.rb +5 -1
  54. data/lib/{corl_core → core}/plugin/machine.rb +2 -2
  55. data/lib/{corl_core → core}/plugin/network.rb +4 -4
  56. data/lib/{corl_core → core}/plugin/node.rb +11 -9
  57. data/lib/{corl_core → core}/plugin/provisioner.rb +2 -2
  58. data/lib/{corl_core → core}/util/ssh.rb +1 -1
  59. data/lib/corl.rb +53 -112
  60. data/lib/puppet/parser/functions/ensure.rb +0 -4
  61. data/locales/en.yml +55 -148
  62. metadata +84 -222
  63. data/lib/corl/action/add.rb +0 -69
  64. data/lib/corl/action/clone.rb +0 -40
  65. data/lib/corl/action/create.rb +0 -55
  66. data/lib/corl/action/exec.rb +0 -41
  67. data/lib/corl/action/extract.rb +0 -49
  68. data/lib/corl/action/image.rb +0 -30
  69. data/lib/corl/action/lookup.rb +0 -35
  70. data/lib/corl/action/provision.rb +0 -37
  71. data/lib/corl/action/remove.rb +0 -51
  72. data/lib/corl/action/save.rb +0 -53
  73. data/lib/corl/action/start.rb +0 -37
  74. data/lib/corl/action/stop.rb +0 -30
  75. data/lib/corl/action/update.rb +0 -37
  76. data/lib/corl/command/shell.rb +0 -164
  77. data/lib/corl/event/regex.rb +0 -52
  78. data/lib/corl/project/git.rb +0 -465
  79. data/lib/corl/project/github.rb +0 -108
  80. data/lib/corl/template/json.rb +0 -16
  81. data/lib/corl/template/wrapper.rb +0 -16
  82. data/lib/corl/template/yaml.rb +0 -16
  83. data/lib/corl/translator/json.rb +0 -27
  84. data/lib/corl/translator/yaml.rb +0 -27
  85. data/lib/corl_core/codes.rb +0 -107
  86. data/lib/corl_core/config.rb +0 -337
  87. data/lib/corl_core/config/collection.rb +0 -57
  88. data/lib/corl_core/config/options.rb +0 -70
  89. data/lib/corl_core/core.rb +0 -59
  90. data/lib/corl_core/corl.rb +0 -254
  91. data/lib/corl_core/errors.rb +0 -84
  92. data/lib/corl_core/facade.rb +0 -126
  93. data/lib/corl_core/gems.rb +0 -72
  94. data/lib/corl_core/manager.rb +0 -425
  95. data/lib/corl_core/mixin/action/commit.rb +0 -58
  96. data/lib/corl_core/mixin/action/project.rb +0 -53
  97. data/lib/corl_core/mixin/action/push.rb +0 -52
  98. data/lib/corl_core/mixin/config/collection.rb +0 -53
  99. data/lib/corl_core/mixin/config/ops.rb +0 -53
  100. data/lib/corl_core/mixin/config/options.rb +0 -39
  101. data/lib/corl_core/mixin/macro/object_interface.rb +0 -361
  102. data/lib/corl_core/mixin/macro/plugin_interface.rb +0 -380
  103. data/lib/corl_core/mixin/settings.rb +0 -46
  104. data/lib/corl_core/mixin/sub_config.rb +0 -148
  105. data/lib/corl_core/mod/hash.rb +0 -29
  106. data/lib/corl_core/plugin/action.rb +0 -381
  107. data/lib/corl_core/plugin/base.rb +0 -374
  108. data/lib/corl_core/plugin/command.rb +0 -98
  109. data/lib/corl_core/plugin/event.rb +0 -53
  110. data/lib/corl_core/plugin/extension.rb +0 -12
  111. data/lib/corl_core/plugin/project.rb +0 -927
  112. data/lib/corl_core/plugin/template.rb +0 -80
  113. data/lib/corl_core/plugin/translator.rb +0 -38
  114. data/lib/corl_core/util/cli.rb +0 -352
  115. data/lib/corl_core/util/data.rb +0 -404
  116. data/lib/corl_core/util/disk.rb +0 -114
  117. data/lib/corl_core/util/git.rb +0 -47
  118. data/lib/corl_core/util/interface.rb +0 -319
  119. data/lib/corl_core/util/liquid.rb +0 -17
  120. data/lib/corl_core/util/package.rb +0 -93
  121. data/lib/corl_core/util/shell.rb +0 -239
  122. data/spec/corl_core/interface_spec.rb +0 -489
@@ -0,0 +1,160 @@
1
+ #!/bin/bash
2
+ #
3
+ # script.sh
4
+ #
5
+ #-------------------------------------------------------------------------------
6
+ # Install a script package from a remote repository.
7
+ #
8
+ # USAGE:> install_script_package [ --force ] [ --install ]
9
+ # [ --github-acct $GITHUB_ACCT ]
10
+ # [ --proj-dir $PROJ_DIR ]
11
+ # $REPOSITORY
12
+ # $PROJ_NAME
13
+ # $PUBLIC_SCRIPT (For checking existence of package)
14
+ #
15
+ function install_script_package()
16
+ {
17
+ local PARAMS=`normalize_params "$@"`
18
+ local FORCE_ENABLED=''
19
+ local INSTALL_ENABLED=''
20
+
21
+ local PKG_GITHUB_ACCT="$GITHUB_ACCT"
22
+ local PKG_PROJ_DIR="$SCRIPT_PROJ_DIR"
23
+
24
+ parse_flag '-f|--force' FORCE_ENABLED || return 1
25
+ parse_flag '-i|--install' INSTALL_ENABLED || return 2
26
+ parse_option '-g|--github-acct' PKG_GITHUB_ACCT validate_string "GitHub account can not be an empty string." || return 3
27
+ parse_option '-p|--proj-dir' PKG_PROJ_DIR validate_directory "Path {} must be an existing directory." || return 4
28
+
29
+ local ARGS=`get_args "$PARAMS"`
30
+ local REPOSITORY="${ARGS[0]}"
31
+ local PROJ_NAME="${ARGS[1]}"
32
+ local PUBLIC_SCRIPT="${ARGS[2]}"
33
+
34
+ if [ "$PUBLIC_SCRIPT" -o ! `which "$PUBLIC_SCRIPT"` ]
35
+ then
36
+ PKG_REPO="git://github.com/$GITHUB_ACCT/$REPOSITORY.git"
37
+ PKG_DIR="$PKG_PROJ_DIR/$PROJ_NAME"
38
+
39
+ echo "Library $PROJ_NAME not found. Downloading from source."
40
+
41
+ if [ "$FORCE_ENABLED" ]
42
+ then
43
+ rm -Rf "$PKG_DIR" || exit 5
44
+ fi
45
+
46
+ mkdir -p "$PKG_PROJ_DIR" || exit 6
47
+ git clone "$PKG_REPO" "$PKG_DIR" || exit 7
48
+
49
+ echo "Initializing shared lib at $SERVER_ADMIN_DIR."
50
+ chmod 755 "$PKG_DIR/init.sh" || exit 8
51
+ $PKG_DIR/init.sh "$FORCE_ENABLED" "$INSTALL_ENABLED" || exit 9
52
+ fi
53
+ }
54
+
55
+ #-------------------------------------------------------------------------------
56
+ # Create symbolic links in a specified searchable bin directory for all public
57
+ # scripts under a base directory.
58
+ #
59
+ # USAGE:> init_script_package [ --sudo ] [ --force ]
60
+ # [ --script-ext $SCRIPT_EXT ]
61
+ # [ --public-ext $PUBLIC_EXT ]
62
+ # [ --bin-dir $BIN_DIR ]
63
+ # $INIT_DIR
64
+ # $LIB_DIR
65
+ #
66
+ function init_script_package()
67
+ {
68
+ local PARAMS=`normalize_params "$@"`
69
+ local SUDO_ENABLED=''
70
+ local FORCE_ENABLED=''
71
+
72
+ local PKG_SCRIPT_EXT="$SCRIPT_EXT"
73
+ local PKG_PUBLIC_EXT="$PUBLIC_EXT"
74
+ local PKG_BIN_DIR="$COMMON_BIN_DIR"
75
+
76
+ parse_flag '-s|--sudo' SUDO_ENABLED || return 1
77
+ parse_flag '-f|--force' FORCE_ENABLED || return 2
78
+ parse_option '-e|--script-ext' PKG_SCRIPT_EXT validate_string "Script extension can not be an empty string." || return 3
79
+ parse_option '-p|--public-ext' PKG_PUBLIC_EXT validate_string "Public script extension can not be an empty string." || return 4
80
+ parse_option '-b|--bin-dir' PKG_BIN_DIR validate_directory "Path {} must be an existing directory." || return 5
81
+
82
+ local ARGS=`get_args "$PARAMS"`
83
+ local INIT_DIR="${ARGS[0]}"
84
+ local LIB_DIR="${ARGS[1]}"
85
+
86
+ echo "[ 1/3 ] - Transfering script package."
87
+ transfer_directory "$SUDO_ENABLED" "$FORCE_ENABLED" "$INIT_DIR" "$LIB_DIR" || return 6
88
+
89
+ echo "[ 2/3 ] - Adjusting permissions for script package."
90
+ init_script_package_access "$SUDO_ENABLED" "$LIB_DIR" "$PKG_SCRIPT_EXT" || return 7
91
+
92
+ echo "[ 3/3 ] - Linking public utilities and property files."
93
+ link_public_scripts "$SUDO_ENABLED" "$LIB_DIR" "$PKG_BIN_DIR" "$PKG_PUBLIC_EXT" || return 8
94
+ return 0
95
+ }
96
+
97
+ #-------------------------------------------------------------------------------
98
+ # Initialize access settings for a script package.
99
+ #
100
+ # USAGE:> init_script_package_access [ --sudo ] $LIB_DIR $SCRIPT_EXT
101
+ #
102
+ function init_script_package_access()
103
+ {
104
+ local PARAMS=`normalize_params "$@"`
105
+ local SUDO_ENABLED=''
106
+
107
+ parse_flag '-s|--sudo' SUDO_ENABLED || return 1
108
+
109
+ local ARGS=`get_args "$PARAMS"`
110
+ local PKG_LIB_DIR="${ARGS[0]}"
111
+ local PKG_SCRIPT_EXT="${ARGS[1]}"
112
+
113
+ directory_access "$SUDO_ENABLED" "$PKG_LIB_DIR" 755 || return 2
114
+ file_access "$SUDO_ENABLED" "$PKG_LIB_DIR" 644 || return 3
115
+ pattern_access "$SUDO_ENABLED" "$PKG_LIB_DIR" "'*.$PKG_SCRIPT_EXT'" 755 || return 4
116
+ return 0
117
+ }
118
+
119
+ #-------------------------------------------------------------------------------
120
+ # Create symbolic links in a specified searchable bin directory for all public
121
+ # scripts under a base directory.
122
+ #
123
+ # USAGE:> link_public_scripts [ --sudo ] $BASE_DIR $PUBLIC_BIN_DIR $PUBLIC_EXT
124
+ #
125
+ function link_public_scripts()
126
+ {
127
+ local PARAMS=`normalize_params "$@"`
128
+ local SUDO_ENABLED=''
129
+
130
+ parse_flag '-s|--sudo' SUDO_ENABLED || return 1
131
+
132
+ local ARGS=`get_args "$PARAMS"`
133
+ local BASE_DIR="${ARGS[0]}"
134
+ local PUBLIC_BIN_DIR="${ARGS[1]}"
135
+ local PUBLIC_EXT="${ARGS[2]}"
136
+
137
+ for PUBLIC_SCRIPT in `find "$BASE_DIR" -name "*.$PUBLIC_EXT"`
138
+ do
139
+ #echo "$PUBLIC_SCRIPT"
140
+
141
+ SCRIPT_DIR=`dirname "$PUBLIC_SCRIPT"`
142
+ SCRIPT_FILE=`basename "$PUBLIC_SCRIPT"`
143
+ SCRIPT_NAME=${SCRIPT_FILE//.$PUBLIC_EXT/} # No extension
144
+
145
+ #echo "$SCRIPT_DIR"
146
+ #echo "$SCRIPT_FILE"
147
+ #echo "$SCRIPT_NAME"
148
+
149
+ if [ "$SUDO_ENABLED" ]
150
+ then
151
+ echo "Linking to $SCRIPT_DIR/$SCRIPT_FILE from $PUBLIC_BIN_DIR/$SCRIPT_NAME (as admin)."
152
+ sudo ln -f -s "$PUBLIC_SCRIPT" "$PUBLIC_BIN_DIR/$SCRIPT_NAME" || return 2
153
+ else
154
+ echo "Linking to $SCRIPT_DIR/$SCRIPT_FILE from $PUBLIC_BIN_DIR/$SCRIPT_NAME."
155
+ ln -f -s "$PUBLIC_SCRIPT" "$PUBLIC_BIN_DIR/$SCRIPT_NAME" || return 2
156
+ fi
157
+ done
158
+ return 0
159
+ }
160
+
@@ -0,0 +1,64 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+ #
4
+ # script_name
5
+ #
6
+ #-------------------------------------------------------------------------------
7
+ # Help
8
+
9
+ if [ -z "$HELP" ]
10
+ then
11
+ export HELP="
12
+ This script does something useful (hopefully).
13
+
14
+ --------------------------------------------------------------------------------
15
+ Tested under: Whatever you're using to develop
16
+ Licensed under: GPLv3
17
+
18
+ See the project page at: http://domain/project
19
+ Report issues here: http://domain/issue_tracker
20
+ "
21
+ fi
22
+
23
+ if [ -z "$USAGE" ]
24
+ then
25
+ export USAGE="
26
+ usage: script_name [ -h | --help ] | Show usage information
27
+ --------------------------------------------------------------------------------
28
+ "
29
+ fi
30
+
31
+ #-------------------------------------------------------------------------------
32
+ # Parameters
33
+
34
+ STATUS=0
35
+ SCRIPT_DIR="$(cd "$(dirname "$([ `readlink "$0"` ] && echo "`readlink "$0"`" || echo "$0")")"; pwd -P)"
36
+ SHELL_LIB_DIR="$SCRIPT_DIR/lib/shell"
37
+
38
+ source "$SHELL_LIB_DIR/load.sh" || exit 1
39
+
40
+ #---
41
+
42
+ PARAMS=`normalize_params "$@"`
43
+
44
+ parse_flag '-h|--help' HELP_WANTED
45
+
46
+ # Standard help message.
47
+ if [ "$HELP_WANTED" ]
48
+ then
49
+ echo "$HELP"
50
+ echo "$USAGE"
51
+ exit 0
52
+ fi
53
+ if [ $STATUS -ne 0 ]
54
+ then
55
+ echo "$USAGE"
56
+ exit $STATUS
57
+ fi
58
+
59
+ ARGS=`get_args "$PARAMS"`
60
+
61
+ #-------------------------------------------------------------------------------
62
+ # Start
63
+
64
+ exit $STATUS
@@ -0,0 +1,50 @@
1
+ #!/bin/bash
2
+ #
3
+ # validators.sh
4
+ #
5
+ #-------------------------------------------------------------------------------
6
+ # Validate a string. (Must be non empty.)
7
+ #
8
+ # USAGE:> validate_string $STR
9
+ #
10
+ function validate_string()
11
+ {
12
+ if [ ! "$1" ]
13
+ then
14
+ return 1
15
+ else
16
+ return 0
17
+ fi
18
+ }
19
+
20
+
21
+ #-------------------------------------------------------------------------------
22
+ # Validate an existing file.
23
+ #
24
+ # USAGE:> validate_file $FILE
25
+ #
26
+ function validate_file()
27
+ {
28
+ if [ ! "$1" ] || [ ! -f "$1" ]
29
+ then
30
+ return 1
31
+ else
32
+ return 0
33
+ fi
34
+ }
35
+
36
+
37
+ #-------------------------------------------------------------------------------
38
+ # Validate an existing directory.
39
+ #
40
+ # USAGE:> validate_directory $DIR
41
+ #
42
+ function validate_directory()
43
+ {
44
+ if [ ! "$1" ] || [ ! -d "$1" ]
45
+ then
46
+ return 1
47
+ else
48
+ return 0
49
+ fi
50
+ }
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+
4
+ # Install basic build packages.
5
+ apt-get -y install build-essential || exit 1
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+
4
+ # Install Git.
5
+ apt-get -y install git || exit 10
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+
4
+ # Install Ruby.
5
+ apt-get -y install ruby1.9.1 ruby1.9.1-dev || exit 50
6
+ update-alternatives --set ruby /usr/bin/ruby1.9.1 || exit 51
7
+ update-alternatives --set gem /usr/bin/gem1.9.1 || exit 52
@@ -0,0 +1,38 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+
4
+ # Set up Puppet Apt repositories
5
+ apt-key adv --recv-key --keyserver pgp.mit.edu 4BD6EC30 || exit 60
6
+
7
+ ( cat <<'EOP'
8
+ deb http://apt.puppetlabs.com precise main dependencies
9
+ deb-src http://apt.puppetlabs.com precise main dependencies
10
+ EOP
11
+ ) > /etc/apt/sources.list.d/coral_puppet.list || exit 61
12
+ chmod 0644 /etc/apt/sources.list.d/coral_puppet.list || exit 62
13
+
14
+ # Install Puppet
15
+ apt-get -y update || exit 63
16
+ apt-get -y install puppet || exit 64
17
+ gem install libshadow || exit 65
18
+
19
+ # Set up Hiera configuration
20
+ mkdir -p /var/coral/config || exit 66
21
+
22
+ ( cat <<'EOP'
23
+ ---
24
+ :merge_behavior: deeper
25
+ :backends:
26
+ - yaml
27
+ - json
28
+ :yaml:
29
+ :datadir: /var/coral/config
30
+ :json:
31
+ :datadir: /var/coral/config
32
+ :hierarchy:
33
+ - common
34
+ EOP
35
+ ) > /etc/hiera.yaml || exit 67
36
+ chmod 0440 /etc/hiera.yaml || exit 68
37
+
38
+ cp /etc/hiera.yaml /etc/puppet/hiera.yaml || exit 69
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+ #-------------------------------------------------------------------------------
3
+
4
+ # Install the corl gem
5
+ rm -Rf /tmp/corl
6
+ mkdir /tmp/corl || exit 100
7
+
8
+ git clone --branch 0.4 git://github.com/coralnexus/corl.git /tmp/corl || exit 101
9
+ gem install /tmp/corl/corl-*.gem || exit 102
data/corl.gemspec CHANGED
@@ -5,12 +5,12 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "corl"
8
- s.version = "0.4.0"
8
+ s.version = "0.4.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Adrian Webb"]
12
- s.date = "2014-02-20"
13
- s.description = "= CORL (Cluster Orchestration and Research Library)\n\nComing soon!\n\nNote: This library is still very early in development!\n\n== Contributing to CORL\n \n* Check out the latest {major}.{minor} branch to make sure the feature hasn't \n been implemented or the bug hasn't been fixed yet.\n* Check out the issue tracker to make sure someone already hasn't requested \n it and/or contributed it.\n* Fork the project.\n* Start a feature/bugfix branch.\n* Commit and push until you are happy with your contribution.\n* Make sure to add tests for it. This is important so I don't break it in a \n future version unintentionally.\n* Please try not to mess with the Rakefile, version, or history. If you want \n to have your own version, or is otherwise necessary, that is fine, but \n please isolate to its own commit so I can cherry-pick around it.\n\n== Copyright\n\nLicensed under GPLv3. See LICENSE.txt for further details.\n\nCopyright (c) 2013 Adrian Webb <adrian.webb@coralnexus.com>\nCoral Technology Group LLC"
12
+ s.date = "2014-02-23"
13
+ s.description = "Framework that provides a simple foundation for growing organically in the cloud"
14
14
  s.email = "adrian.webb@coralnexus.com"
15
15
  s.executables = ["corl"]
16
16
  s.extra_rdoc_files = [
@@ -27,97 +27,59 @@ Gem::Specification.new do |s|
27
27
  "Rakefile",
28
28
  "VERSION",
29
29
  "bin/corl",
30
+ "bootstrap/bootstrap.sh",
31
+ "bootstrap/lib/shell/LICENSE.txt",
32
+ "bootstrap/lib/shell/command.sh",
33
+ "bootstrap/lib/shell/filesystem.sh",
34
+ "bootstrap/lib/shell/load.sh",
35
+ "bootstrap/lib/shell/os.sh",
36
+ "bootstrap/lib/shell/script.sh",
37
+ "bootstrap/lib/shell/starter.sh",
38
+ "bootstrap/lib/shell/validators.sh",
39
+ "bootstrap/os/ubuntu/00_base.sh",
40
+ "bootstrap/os/ubuntu/01_git.sh",
41
+ "bootstrap/os/ubuntu/05_ruby.sh",
42
+ "bootstrap/os/ubuntu/06_puppet.sh",
43
+ "bootstrap/os/ubuntu/10_corl.sh",
30
44
  "corl.gemspec",
45
+ "lib/CORL/action/bootstrap.rb",
46
+ "lib/CORL/action/exec.rb",
47
+ "lib/CORL/action/image.rb",
48
+ "lib/CORL/action/images.rb",
49
+ "lib/CORL/action/lookup.rb",
50
+ "lib/CORL/action/machines.rb",
51
+ "lib/CORL/action/provision.rb",
52
+ "lib/CORL/action/seed.rb",
53
+ "lib/CORL/action/spawn.rb",
54
+ "lib/CORL/action/start.rb",
55
+ "lib/CORL/action/stop.rb",
56
+ "lib/CORL/configuration/file.rb",
57
+ "lib/CORL/event/puppet.rb",
58
+ "lib/CORL/extension/puppetloader.rb",
59
+ "lib/CORL/machine/fog.rb",
60
+ "lib/CORL/machine/physical.rb",
61
+ "lib/CORL/network/default.rb",
62
+ "lib/CORL/node/aws.rb",
63
+ "lib/CORL/node/google.rb",
64
+ "lib/CORL/node/local.rb",
65
+ "lib/CORL/node/rackspace.rb",
66
+ "lib/CORL/provisioner/puppetnode.rb",
67
+ "lib/CORL/provisioner/puppetnode/resource.rb",
68
+ "lib/CORL/provisioner/puppetnode/resource_group.rb",
69
+ "lib/CORL/template/environment.rb",
70
+ "lib/core/facade.rb",
71
+ "lib/core/mixin/action/keypair.rb",
72
+ "lib/core/mixin/lookup.rb",
73
+ "lib/core/mod/hiera_backend.rb",
74
+ "lib/core/plugin/action.rb",
75
+ "lib/core/plugin/configuration.rb",
76
+ "lib/core/plugin/fog.rb",
77
+ "lib/core/plugin/machine.rb",
78
+ "lib/core/plugin/network.rb",
79
+ "lib/core/plugin/node.rb",
80
+ "lib/core/plugin/provisioner.rb",
81
+ "lib/core/util/ssh.rb",
31
82
  "lib/corl.rb",
32
- "lib/corl/action/add.rb",
33
- "lib/corl/action/bootstrap.rb",
34
- "lib/corl/action/clone.rb",
35
- "lib/corl/action/create.rb",
36
- "lib/corl/action/exec.rb",
37
- "lib/corl/action/extract.rb",
38
- "lib/corl/action/image.rb",
39
- "lib/corl/action/images.rb",
40
- "lib/corl/action/lookup.rb",
41
- "lib/corl/action/machines.rb",
42
- "lib/corl/action/provision.rb",
43
- "lib/corl/action/remove.rb",
44
- "lib/corl/action/save.rb",
45
- "lib/corl/action/seed.rb",
46
- "lib/corl/action/spawn.rb",
47
- "lib/corl/action/start.rb",
48
- "lib/corl/action/stop.rb",
49
- "lib/corl/action/update.rb",
50
- "lib/corl/command/shell.rb",
51
- "lib/corl/configuration/file.rb",
52
- "lib/corl/event/puppet.rb",
53
- "lib/corl/event/regex.rb",
54
- "lib/corl/extension/puppetloader.rb",
55
- "lib/corl/machine/fog.rb",
56
- "lib/corl/machine/physical.rb",
57
- "lib/corl/network/default.rb",
58
- "lib/corl/node/aws.rb",
59
- "lib/corl/node/fog.rb",
60
- "lib/corl/node/google.rb",
61
- "lib/corl/node/local.rb",
62
- "lib/corl/node/rackspace.rb",
63
- "lib/corl/project/git.rb",
64
- "lib/corl/project/github.rb",
65
- "lib/corl/provisioner/puppetnode.rb",
66
- "lib/corl/provisioner/puppetnode/resource.rb",
67
- "lib/corl/provisioner/puppetnode/resource_group.rb",
68
- "lib/corl/template/environment.rb",
69
- "lib/corl/template/json.rb",
70
- "lib/corl/template/wrapper.rb",
71
- "lib/corl/template/yaml.rb",
72
- "lib/corl/translator/json.rb",
73
- "lib/corl/translator/yaml.rb",
74
- "lib/corl_core/codes.rb",
75
- "lib/corl_core/config.rb",
76
- "lib/corl_core/config/collection.rb",
77
- "lib/corl_core/config/options.rb",
78
- "lib/corl_core/core.rb",
79
- "lib/corl_core/corl.rb",
80
- "lib/corl_core/errors.rb",
81
- "lib/corl_core/facade.rb",
82
- "lib/corl_core/gems.rb",
83
- "lib/corl_core/manager.rb",
84
- "lib/corl_core/mixin/action/commit.rb",
85
- "lib/corl_core/mixin/action/keypair.rb",
86
- "lib/corl_core/mixin/action/node.rb",
87
- "lib/corl_core/mixin/action/project.rb",
88
- "lib/corl_core/mixin/action/push.rb",
89
- "lib/corl_core/mixin/config/collection.rb",
90
- "lib/corl_core/mixin/config/ops.rb",
91
- "lib/corl_core/mixin/config/options.rb",
92
- "lib/corl_core/mixin/lookup.rb",
93
- "lib/corl_core/mixin/macro/object_interface.rb",
94
- "lib/corl_core/mixin/macro/plugin_interface.rb",
95
- "lib/corl_core/mixin/settings.rb",
96
- "lib/corl_core/mixin/sub_config.rb",
97
- "lib/corl_core/mod/hash.rb",
98
- "lib/corl_core/mod/hiera_backend.rb",
99
- "lib/corl_core/plugin/action.rb",
100
- "lib/corl_core/plugin/base.rb",
101
- "lib/corl_core/plugin/command.rb",
102
- "lib/corl_core/plugin/configuration.rb",
103
- "lib/corl_core/plugin/event.rb",
104
- "lib/corl_core/plugin/extension.rb",
105
- "lib/corl_core/plugin/machine.rb",
106
- "lib/corl_core/plugin/network.rb",
107
- "lib/corl_core/plugin/node.rb",
108
- "lib/corl_core/plugin/project.rb",
109
- "lib/corl_core/plugin/provisioner.rb",
110
- "lib/corl_core/plugin/template.rb",
111
- "lib/corl_core/plugin/translator.rb",
112
- "lib/corl_core/util/cli.rb",
113
- "lib/corl_core/util/data.rb",
114
- "lib/corl_core/util/disk.rb",
115
- "lib/corl_core/util/git.rb",
116
- "lib/corl_core/util/interface.rb",
117
- "lib/corl_core/util/liquid.rb",
118
- "lib/corl_core/util/package.rb",
119
- "lib/corl_core/util/shell.rb",
120
- "lib/corl_core/util/ssh.rb",
121
83
  "lib/facter/corl_config_ready.rb",
122
84
  "lib/facter/corl_exists.rb",
123
85
  "lib/facter/corl_network.rb",
@@ -145,7 +107,6 @@ Gem::Specification.new do |s|
145
107
  "lib/puppet/parser/functions/render.rb",
146
108
  "lib/puppet/parser/functions/value.rb",
147
109
  "locales/en.yml",
148
- "spec/corl_core/interface_spec.rb",
149
110
  "spec/corl_mock_input.rb",
150
111
  "spec/corl_test_kernel.rb",
151
112
  "spec/spec_helper.rb"
@@ -157,25 +118,17 @@ Gem::Specification.new do |s|
157
118
  s.required_ruby_version = Gem::Requirement.new(">= 1.8.1")
158
119
  s.rubyforge_project = "corl"
159
120
  s.rubygems_version = "1.8.11"
160
- s.summary = "Provides core data elements and utilities used in other CORL gems"
121
+ s.summary = "Cluster Orchestration and Research Library"
161
122
 
162
123
  if s.respond_to? :specification_version then
163
124
  s.specification_version = 3
164
125
 
165
126
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
166
- s.add_runtime_dependency(%q<log4r>, ["~> 1.1"])
167
- s.add_runtime_dependency(%q<i18n>, ["~> 0.6"])
168
- s.add_runtime_dependency(%q<deep_merge>, ["~> 1.0"])
169
- s.add_runtime_dependency(%q<celluloid>, ["~> 0.15"])
127
+ s.add_runtime_dependency(%q<nucleon>, ["~> 0.1"])
170
128
  s.add_runtime_dependency(%q<sshkey>, ["~> 1.6"])
171
- s.add_runtime_dependency(%q<hiera>, ["~> 1.3"])
172
- s.add_runtime_dependency(%q<multi_json>, ["~> 1.7"])
173
- s.add_runtime_dependency(%q<grit>, ["~> 2.5"])
174
- s.add_runtime_dependency(%q<octokit>, ["~> 2.7"])
175
- s.add_runtime_dependency(%q<netrc>, ["~> 0.7"])
176
129
  s.add_runtime_dependency(%q<fog>, ["~> 1.20"])
177
- s.add_runtime_dependency(%q<rgen>, ["~> 0.6"])
178
130
  s.add_runtime_dependency(%q<facter>, ["~> 1.7"])
131
+ s.add_runtime_dependency(%q<hiera>, ["~> 1.3"])
179
132
  s.add_runtime_dependency(%q<puppet>, ["~> 3.2"])
180
133
  s.add_development_dependency(%q<bundler>, ["~> 1.2"])
181
134
  s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
@@ -183,19 +136,11 @@ Gem::Specification.new do |s|
183
136
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
184
137
  s.add_development_dependency(%q<yard>, ["~> 0.8"])
185
138
  else
186
- s.add_dependency(%q<log4r>, ["~> 1.1"])
187
- s.add_dependency(%q<i18n>, ["~> 0.6"])
188
- s.add_dependency(%q<deep_merge>, ["~> 1.0"])
189
- s.add_dependency(%q<celluloid>, ["~> 0.15"])
139
+ s.add_dependency(%q<nucleon>, ["~> 0.1"])
190
140
  s.add_dependency(%q<sshkey>, ["~> 1.6"])
191
- s.add_dependency(%q<hiera>, ["~> 1.3"])
192
- s.add_dependency(%q<multi_json>, ["~> 1.7"])
193
- s.add_dependency(%q<grit>, ["~> 2.5"])
194
- s.add_dependency(%q<octokit>, ["~> 2.7"])
195
- s.add_dependency(%q<netrc>, ["~> 0.7"])
196
141
  s.add_dependency(%q<fog>, ["~> 1.20"])
197
- s.add_dependency(%q<rgen>, ["~> 0.6"])
198
142
  s.add_dependency(%q<facter>, ["~> 1.7"])
143
+ s.add_dependency(%q<hiera>, ["~> 1.3"])
199
144
  s.add_dependency(%q<puppet>, ["~> 3.2"])
200
145
  s.add_dependency(%q<bundler>, ["~> 1.2"])
201
146
  s.add_dependency(%q<jeweler>, ["~> 2.0"])
@@ -204,19 +149,11 @@ Gem::Specification.new do |s|
204
149
  s.add_dependency(%q<yard>, ["~> 0.8"])
205
150
  end
206
151
  else
207
- s.add_dependency(%q<log4r>, ["~> 1.1"])
208
- s.add_dependency(%q<i18n>, ["~> 0.6"])
209
- s.add_dependency(%q<deep_merge>, ["~> 1.0"])
210
- s.add_dependency(%q<celluloid>, ["~> 0.15"])
152
+ s.add_dependency(%q<nucleon>, ["~> 0.1"])
211
153
  s.add_dependency(%q<sshkey>, ["~> 1.6"])
212
- s.add_dependency(%q<hiera>, ["~> 1.3"])
213
- s.add_dependency(%q<multi_json>, ["~> 1.7"])
214
- s.add_dependency(%q<grit>, ["~> 2.5"])
215
- s.add_dependency(%q<octokit>, ["~> 2.7"])
216
- s.add_dependency(%q<netrc>, ["~> 0.7"])
217
154
  s.add_dependency(%q<fog>, ["~> 1.20"])
218
- s.add_dependency(%q<rgen>, ["~> 0.6"])
219
155
  s.add_dependency(%q<facter>, ["~> 1.7"])
156
+ s.add_dependency(%q<hiera>, ["~> 1.3"])
220
157
  s.add_dependency(%q<puppet>, ["~> 3.2"])
221
158
  s.add_dependency(%q<bundler>, ["~> 1.2"])
222
159
  s.add_dependency(%q<jeweler>, ["~> 2.0"])