sprinkle 0.4.2 → 0.5.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +8 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +54 -0
- data/README.markdown +178 -166
- data/Rakefile +4 -28
- data/bin/sprinkle +14 -1
- data/lib/sprinkle.rb +5 -1
- data/lib/sprinkle/actors/actors.rb +20 -5
- data/lib/sprinkle/actors/capistrano.rb +62 -36
- data/lib/sprinkle/actors/dummy.rb +127 -0
- data/lib/sprinkle/actors/local.rb +59 -17
- data/lib/sprinkle/actors/ssh.rb +189 -107
- data/lib/sprinkle/actors/vlad.rb +51 -32
- data/lib/sprinkle/configurable.rb +2 -1
- data/lib/sprinkle/deployment.rb +22 -2
- data/lib/sprinkle/errors/pretty_failure.rb +41 -0
- data/lib/sprinkle/errors/remote_command_failure.rb +24 -0
- data/lib/sprinkle/errors/transfer_failure.rb +28 -0
- data/lib/sprinkle/installers/apt.rb +17 -16
- data/lib/sprinkle/installers/binary.rb +23 -8
- data/lib/sprinkle/installers/brew.rb +17 -10
- data/lib/sprinkle/installers/bsd_port.rb +10 -6
- data/lib/sprinkle/installers/deb.rb +3 -10
- data/lib/sprinkle/installers/freebsd_pkg.rb +5 -11
- data/lib/sprinkle/installers/freebsd_portinstall.rb +8 -2
- data/lib/sprinkle/installers/gem.rb +9 -3
- data/lib/sprinkle/installers/group.rb +28 -4
- data/lib/sprinkle/installers/installer.rb +58 -7
- data/lib/sprinkle/installers/mac_port.rb +13 -6
- data/lib/sprinkle/installers/npm.rb +42 -0
- data/lib/sprinkle/installers/openbsd_pkg.rb +4 -11
- data/lib/sprinkle/installers/opensolaris_pkg.rb +7 -13
- data/lib/sprinkle/installers/package_installer.rb +33 -0
- data/lib/sprinkle/installers/pacman.rb +5 -13
- data/lib/sprinkle/installers/pear.rb +40 -0
- data/lib/sprinkle/installers/push_text.rb +18 -5
- data/lib/sprinkle/installers/rake.rb +7 -2
- data/lib/sprinkle/installers/reconnect.rb +29 -0
- data/lib/sprinkle/installers/replace_text.rb +11 -2
- data/lib/sprinkle/installers/rpm.rb +8 -6
- data/lib/sprinkle/installers/runner.rb +41 -16
- data/lib/sprinkle/installers/smart.rb +6 -17
- data/lib/sprinkle/installers/source.rb +22 -10
- data/lib/sprinkle/installers/thor.rb +7 -0
- data/lib/sprinkle/installers/transfer.rb +62 -41
- data/lib/sprinkle/installers/user.rb +34 -4
- data/lib/sprinkle/installers/yum.rb +10 -10
- data/lib/sprinkle/installers/zypper.rb +4 -15
- data/lib/sprinkle/package.rb +81 -98
- data/lib/sprinkle/policy.rb +11 -4
- data/lib/sprinkle/utility/log_recorder.rb +33 -0
- data/lib/sprinkle/verifiers/directory.rb +1 -1
- data/lib/sprinkle/verifiers/executable.rb +1 -1
- data/lib/sprinkle/verifiers/file.rb +11 -2
- data/lib/sprinkle/verifiers/package.rb +2 -14
- data/lib/sprinkle/verifiers/permission.rb +40 -0
- data/lib/sprinkle/verifiers/symlink.rb +2 -2
- data/lib/sprinkle/verifiers/test.rb +21 -0
- data/lib/sprinkle/verify.rb +3 -3
- data/lib/sprinkle/version.rb +3 -0
- data/spec/fixtures/my_file.txt +1 -0
- data/spec/sprinkle/actors/capistrano_spec.rb +16 -3
- data/spec/sprinkle/actors/local_spec.rb +24 -6
- data/spec/sprinkle/actors/ssh_spec.rb +38 -0
- data/spec/sprinkle/installers/apt_spec.rb +23 -2
- data/spec/sprinkle/installers/binary_spec.rb +22 -14
- data/spec/sprinkle/installers/brew_spec.rb +4 -4
- data/spec/sprinkle/installers/installer_spec.rb +36 -7
- data/spec/sprinkle/installers/npm_spec.rb +16 -0
- data/spec/sprinkle/installers/pear_spec.rb +16 -0
- data/spec/sprinkle/installers/push_text_spec.rb +23 -1
- data/spec/sprinkle/installers/rpm_spec.rb +5 -0
- data/spec/sprinkle/installers/runner_spec.rb +27 -11
- data/spec/sprinkle/installers/smart_spec.rb +60 -0
- data/spec/sprinkle/installers/source_spec.rb +4 -4
- data/spec/sprinkle/installers/transfer_spec.rb +31 -16
- data/spec/sprinkle/package_spec.rb +10 -2
- data/spec/sprinkle/policy_spec.rb +6 -0
- data/spec/sprinkle/verify_spec.rb +18 -4
- data/sprinkle.gemspec +22 -158
- metadata +178 -96
- data/TODO +0 -56
- data/VERSION +0 -1
- data/lib/sprinkle/verifiers/apt.rb +0 -21
- data/lib/sprinkle/verifiers/brew.rb +0 -21
- data/lib/sprinkle/verifiers/rpm.rb +0 -21
- data/lib/sprinkle/verifiers/users_groups.rb +0 -33
@@ -1,21 +0,0 @@
|
|
1
|
-
module Sprinkle
|
2
|
-
module Verifiers
|
3
|
-
# = Brew package Verifier
|
4
|
-
#
|
5
|
-
# Contains a verifier to check the existance of a Homebrew formula.
|
6
|
-
#
|
7
|
-
# == Example Usage
|
8
|
-
#
|
9
|
-
# verify { has_brew 'ntp' }
|
10
|
-
#
|
11
|
-
module Brew
|
12
|
-
Sprinkle::Verify.register(Sprinkle::Verifiers::Brew)
|
13
|
-
|
14
|
-
# Checks to make sure the brew <tt>formula</tt> exists on the remote server.
|
15
|
-
def has_brew(package)
|
16
|
-
@commands << "brew list | grep #{package}"
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
module Sprinkle
|
2
|
-
module Verifiers
|
3
|
-
# = RPM Verifier
|
4
|
-
#
|
5
|
-
# Contains a verifier to check the existance of an RPM package.
|
6
|
-
#
|
7
|
-
# == Example Usage
|
8
|
-
#
|
9
|
-
# verify { has_rpm 'ntp' }
|
10
|
-
#
|
11
|
-
module Rpm
|
12
|
-
Sprinkle::Verify.register(Sprinkle::Verifiers::Rpm)
|
13
|
-
|
14
|
-
# Checks to make sure <tt>package</tt> exists in the rpm installed database on the remote server.
|
15
|
-
def has_rpm(package)
|
16
|
-
@commands << "rpm -qa | grep #{package}"
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
module Sprinkle
|
2
|
-
module Verifiers
|
3
|
-
# = Users and groups Verifier
|
4
|
-
#
|
5
|
-
# Tests for the existance of users and groups.
|
6
|
-
#
|
7
|
-
# == Example Usage
|
8
|
-
#
|
9
|
-
# verify do
|
10
|
-
# has_user 'ntp'
|
11
|
-
# has_user 'noone', :in_group => 'nobody'
|
12
|
-
# has_group 'nobody'
|
13
|
-
# end
|
14
|
-
#
|
15
|
-
module UsersGroups
|
16
|
-
Sprinkle::Verify.register(Sprinkle::Verifiers::UsersGroups)
|
17
|
-
|
18
|
-
# Tests that the user exists
|
19
|
-
def has_user(user, opts = {})
|
20
|
-
if opts[:in_group]
|
21
|
-
@commands << "id -G #{user} | xargs -n1 echo | grep #{opts[:in_group]}"
|
22
|
-
else
|
23
|
-
@commands << "id #{user}"
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
# Tests that the group exists
|
28
|
-
def has_group(group)
|
29
|
-
@commands << "id -g #{group}"
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|