kitchen-salt 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/kitchen-salt/version.rb +1 -1
- data/lib/kitchen/provisioner/salt_solo.rb +40 -5
- metadata +2 -2
data/lib/kitchen-salt/version.rb
CHANGED
|
@@ -28,10 +28,17 @@ module Kitchen
|
|
|
28
28
|
# @author Chris Lundquist (<chris.ludnquist@github.com>)
|
|
29
29
|
class SaltSolo < Base
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
# supported install methods: bootstrap|apt
|
|
32
|
+
default_config :salt_install, "bootstrap"
|
|
33
|
+
|
|
32
34
|
default_config :salt_bootstrap_url, "http://bootstrap.saltstack.org"
|
|
33
35
|
default_config :salt_bootstrap_options, ""
|
|
34
36
|
|
|
37
|
+
# alternative method of installing salt
|
|
38
|
+
default_config :salt_version, "0.16.2"
|
|
39
|
+
default_config :salt_apt_repo, "http://apt.mccartney.ie"
|
|
40
|
+
default_config :salt_apt_repo_key, "http://apt.mccartney.ie/KEY"
|
|
41
|
+
|
|
35
42
|
default_config :chef_bootstrap_url, "https://www.getchef.com/chef/install.sh"
|
|
36
43
|
|
|
37
44
|
default_config :salt_config, "/etc/salt"
|
|
@@ -44,22 +51,50 @@ module Kitchen
|
|
|
44
51
|
default_config :salt_run_highstate, true
|
|
45
52
|
|
|
46
53
|
def install_command
|
|
47
|
-
|
|
54
|
+
debug(diagnose())
|
|
55
|
+
salt_install = config[:salt_install]
|
|
48
56
|
|
|
49
57
|
salt_url = config[:salt_bootstrap_url]
|
|
50
58
|
chef_url = config[:chef_bootstrap_url]
|
|
51
59
|
bootstrap_options = config[:salt_bootstrap_options]
|
|
52
60
|
|
|
61
|
+
salt_version = config[:salt_version]
|
|
62
|
+
salt_apt_repo = config[:salt_apt_repo]
|
|
63
|
+
salt_apt_repo_key = config[:salt_apt_repo_key]
|
|
64
|
+
|
|
53
65
|
<<-INSTALL
|
|
54
66
|
sh -c '
|
|
55
67
|
#{Util.shell_helpers}
|
|
56
68
|
|
|
57
|
-
#
|
|
58
|
-
|
|
59
|
-
|
|
69
|
+
# what version of salt is installed?
|
|
70
|
+
SALT_VERSION=`salt-call --version | cut -d " " -f 2`
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
if [ -z "${SALT_VERSION}" -a "#{salt_install}" = "bootstrap" ]
|
|
60
74
|
then
|
|
61
75
|
do_download #{salt_url} /tmp/bootstrap-salt.sh
|
|
62
76
|
#{sudo('sh')} /tmp/bootstrap-salt.sh #{bootstrap_options}
|
|
77
|
+
elif [ -z "${SALT_VERSION}" -a "#{salt_install}" = "apt" ]
|
|
78
|
+
then
|
|
79
|
+
. /etc/lsb-release
|
|
80
|
+
|
|
81
|
+
echo "deb #{salt_apt_repo}/salt-#{salt_version} ${DISTRIB_CODENAME} main" | #{sudo('tee')} /etc/apt/sources.list.d/salt-#{salt_version}.list
|
|
82
|
+
|
|
83
|
+
do_download #{salt_apt_repo_key} /tmp/repo.key
|
|
84
|
+
#{sudo('apt-key')} add /tmp/repo.key
|
|
85
|
+
|
|
86
|
+
#{sudo('apt-get')} update
|
|
87
|
+
#{sudo('apt-get')} install -y salt-minion
|
|
88
|
+
elif [ -z "${SALT_VERSION}" ]
|
|
89
|
+
then
|
|
90
|
+
echo "No salt-minion installed and I do not know how to install one!"
|
|
91
|
+
exit 2
|
|
92
|
+
elif [ "${SALT_VERSION}" = "#{salt_version}" ]
|
|
93
|
+
then
|
|
94
|
+
echo "You asked for #{salt_version} and you have already got ${SALT_VERSION} installed, sweet!"
|
|
95
|
+
else
|
|
96
|
+
echo "You asked for #{salt_version} and you have got ${SALT_VERSION} installed, dunno how to fix that, sorry!"
|
|
97
|
+
exit 2
|
|
63
98
|
fi
|
|
64
99
|
|
|
65
100
|
# install chef omnibus so that busser works :(
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kitchen-salt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.3
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2014-01-
|
|
12
|
+
date: 2014-01-22 00:00:00.000000000 Z
|
|
13
13
|
dependencies: []
|
|
14
14
|
description: salt provisioner for test-kitchen
|
|
15
15
|
email:
|