service_kiosk 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Vagrantfile +25 -0
- data/bin/kiosk +55 -0
- data/bin/start_kiosk.sh +3 -0
- data/lib/Procfile.kiosk +1 -0
- data/lib/internal_service.rb +59 -0
- data/lib/json-simple-1.1.1.jar +0 -0
- data/lib/kiosk.rb +57 -0
- data/lib/kiosks/logger/output_logger.rb +16 -0
- data/lib/mall.rb +77 -0
- data/lib/mallcop.rb +9 -0
- data/lib/remote_service.rb +61 -0
- data/lib/tasks/local_mall.rake +93 -0
- data/provision/bootstrap.sh +21 -0
- data/provision/manifests/default.pp +49 -0
- data/provision/modules/apt/CHANGELOG +83 -0
- data/provision/modules/apt/LICENSE +19 -0
- data/provision/modules/apt/Modulefile +14 -0
- data/provision/modules/apt/README.md +119 -0
- data/provision/modules/apt/Rakefile +1 -0
- data/provision/modules/apt/manifests/backports.pp +48 -0
- data/provision/modules/apt/manifests/builddep.pp +16 -0
- data/provision/modules/apt/manifests/conf.pp +18 -0
- data/provision/modules/apt/manifests/debian/testing.pp +21 -0
- data/provision/modules/apt/manifests/debian/unstable.pp +21 -0
- data/provision/modules/apt/manifests/force.pp +24 -0
- data/provision/modules/apt/manifests/init.pp +114 -0
- data/provision/modules/apt/manifests/key.pp +80 -0
- data/provision/modules/apt/manifests/params.pp +23 -0
- data/provision/modules/apt/manifests/pin.pp +48 -0
- data/provision/modules/apt/manifests/ppa.pp +49 -0
- data/provision/modules/apt/manifests/release.pp +17 -0
- data/provision/modules/apt/manifests/source.pp +83 -0
- data/provision/modules/apt/manifests/update.pp +9 -0
- data/provision/modules/apt/spec/classes/apt_spec.rb +129 -0
- data/provision/modules/apt/spec/classes/backports_spec.rb +71 -0
- data/provision/modules/apt/spec/classes/debian_testing_spec.rb +14 -0
- data/provision/modules/apt/spec/classes/debian_unstable_spec.rb +14 -0
- data/provision/modules/apt/spec/classes/params_spec.rb +13 -0
- data/provision/modules/apt/spec/classes/release_spec.rb +22 -0
- data/provision/modules/apt/spec/defines/builddep_spec.rb +18 -0
- data/provision/modules/apt/spec/defines/conf_spec.rb +57 -0
- data/provision/modules/apt/spec/defines/force_spec.rb +41 -0
- data/provision/modules/apt/spec/defines/key_spec.rb +123 -0
- data/provision/modules/apt/spec/defines/pin_spec.rb +58 -0
- data/provision/modules/apt/spec/defines/ppa_spec.rb +92 -0
- data/provision/modules/apt/spec/defines/source_spec.rb +158 -0
- data/provision/modules/apt/spec/fixtures/manifests/site.pp +0 -0
- data/provision/modules/apt/spec/spec_helper.rb +1 -0
- data/provision/modules/apt/templates/pin.pref.erb +5 -0
- data/provision/modules/apt/templates/source.list.erb +5 -0
- data/provision/modules/apt/tests/builddep.pp +2 -0
- data/provision/modules/apt/tests/debian/testing.pp +2 -0
- data/provision/modules/apt/tests/debian/unstable.pp +2 -0
- data/provision/modules/apt/tests/force.pp +7 -0
- data/provision/modules/apt/tests/init.pp +1 -0
- data/provision/modules/apt/tests/key.pp +5 -0
- data/provision/modules/apt/tests/params.pp +1 -0
- data/provision/modules/apt/tests/pin.pp +5 -0
- data/provision/modules/apt/tests/ppa.pp +4 -0
- data/provision/modules/apt/tests/release.pp +4 -0
- data/provision/modules/apt/tests/source.pp +29 -0
- data/provision/modules/stdlib/CHANGELOG +177 -0
- data/provision/modules/stdlib/LICENSE +19 -0
- data/provision/modules/stdlib/Modulefile +11 -0
- data/provision/modules/stdlib/README.markdown +929 -0
- data/provision/modules/stdlib/README_DEVELOPER.markdown +35 -0
- data/provision/modules/stdlib/RELEASE_PROCESS.markdown +24 -0
- data/provision/modules/stdlib/Rakefile +2 -0
- data/provision/modules/stdlib/lib/facter/pe_version.rb +53 -0
- data/provision/modules/stdlib/lib/facter/puppet_vardir.rb +26 -0
- data/provision/modules/stdlib/lib/facter/root_home.rb +19 -0
- data/provision/modules/stdlib/lib/facter/util/puppet_settings.rb +21 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/abs.rb +36 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/bool2num.rb +49 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/capitalize.rb +34 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/chomp.rb +35 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/chop.rb +37 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/defined_with_params.rb +35 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/delete.rb +46 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/delete_at.rb +49 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/downcase.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/empty.rb +28 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/ensure_packages.rb +24 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/ensure_resource.rb +35 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/flatten.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/fqdn_rotate.rb +46 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/get_module_path.rb +17 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/getvar.rb +26 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/grep.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/has_interface_with.rb +52 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/has_ip_address.rb +25 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/has_ip_network.rb +25 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/has_key.rb +28 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/hash.rb +41 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_array.rb +22 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_domain_name.rb +47 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_float.rb +27 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_hash.rb +22 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_integer.rb +27 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_ip_address.rb +32 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_mac_address.rb +27 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_numeric.rb +27 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/is_string.rb +26 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/join.rb +41 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/join_keys_to_values.rb +47 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/keys.rb +26 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/loadyaml.rb +20 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/lstrip.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/max.rb +13 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/member.rb +44 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/merge.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/min.rb +13 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/num2bool.rb +40 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/parsejson.rb +24 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/parseyaml.rb +24 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/pick.rb +29 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/prefix.rb +45 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/range.rb +80 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/reject.rb +31 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/reverse.rb +28 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/rstrip.rb +32 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/shuffle.rb +46 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/size.rb +48 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/sort.rb +27 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/squeeze.rb +36 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/str2bool.rb +41 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/str2saltedsha512.rb +32 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/strftime.rb +107 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/strip.rb +39 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/swapcase.rb +39 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/time.rb +49 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/to_bytes.rb +28 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/type.rb +50 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/unique.rb +51 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/upcase.rb +41 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/uriescape.rb +36 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_absolute_path.rb +56 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_array.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_bool.rb +34 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_hash.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_re.rb +40 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_slength.rb +52 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/validate_string.rb +33 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/values.rb +39 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/values_at.rb +98 -0
- data/provision/modules/stdlib/lib/puppet/parser/functions/zip.rb +65 -0
- data/provision/modules/stdlib/lib/puppet/provider/file_line/ruby.rb +59 -0
- data/provision/modules/stdlib/lib/puppet/type/anchor.rb +41 -0
- data/provision/modules/stdlib/lib/puppet/type/file_line.rb +70 -0
- data/provision/modules/stdlib/manifests/init.pp +20 -0
- data/provision/modules/stdlib/manifests/stages.pp +43 -0
- data/provision/modules/stdlib/spec/functions/defined_with_params_spec.rb +37 -0
- data/provision/modules/stdlib/spec/functions/ensure_packages_spec.rb +42 -0
- data/provision/modules/stdlib/spec/functions/ensure_resource_spec.rb +40 -0
- data/provision/modules/stdlib/spec/monkey_patches/alias_should_to_must.rb +8 -0
- data/provision/modules/stdlib/spec/monkey_patches/publicize_methods.rb +10 -0
- data/provision/modules/stdlib/spec/spec.opts +6 -0
- data/provision/modules/stdlib/spec/spec_helper.rb +28 -0
- data/provision/modules/stdlib/spec/unit/facter/pe_version_spec.rb +76 -0
- data/provision/modules/stdlib/spec/unit/facter/root_home_spec.rb +40 -0
- data/provision/modules/stdlib/spec/unit/facter/util/puppet_settings_spec.rb +35 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/abs_spec.rb +25 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/bool2num_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/capitalize_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/chomp_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/chop_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/delete_at_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/delete_spec.rb +38 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/downcase_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/empty_spec.rb +23 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/flatten_spec.rb +23 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/fqdn_rotate_spec.rb +33 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/get_module_path_spec.rb +46 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/getvar_spec.rb +37 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/grep_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/has_interface_with_spec.rb +64 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/has_ip_address_spec.rb +39 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/has_ip_network_spec.rb +36 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/has_key_spec.rb +42 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/hash_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_array_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_domain_name_spec.rb +64 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_float_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_hash_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_integer_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_ip_address_spec.rb +39 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_mac_address_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_numeric_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/is_string_spec.rb +34 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/join_keys_to_values_spec.rb +40 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/join_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/keys_spec.rb +21 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/lstrip_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/max_spec.rb +23 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/member_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/merge_spec.rb +47 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/min_spec.rb +23 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/num2bool_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/parsejson_spec.rb +22 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/parseyaml_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/pick_spec.rb +34 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/prefix_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/range_spec.rb +34 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/reject_spec.rb +20 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/reverse_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/rstrip_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/shuffle_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/size_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/sort_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/squeeze_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/str2bool_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/str2saltedsha512_spec.rb +45 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/strftime_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/strip_spec.rb +18 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/swapcase_spec.rb +19 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/time_spec.rb +29 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/to_bytes_spec.rb +58 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/type_spec.rb +43 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/unique_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/upcase_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/uriescape_spec.rb +24 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_absolute_path_spec.rb +83 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_array_spec.rb +38 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_bool_spec.rb +51 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_hash_spec.rb +43 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_re_spec.rb +76 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_slength_spec.rb +48 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/validate_string_spec.rb +60 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/values_at_spec.rb +38 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/values_spec.rb +31 -0
- data/provision/modules/stdlib/spec/unit/puppet/parser/functions/zip_spec.rb +15 -0
- data/provision/modules/stdlib/spec/unit/puppet/provider/file_line/ruby_spec.rb +127 -0
- data/provision/modules/stdlib/spec/unit/puppet/type/anchor_spec.rb +11 -0
- data/provision/modules/stdlib/spec/unit/puppet/type/file_line_spec.rb +69 -0
- data/provision/modules/stdlib/spec/watchr.rb +86 -0
- data/provision/modules/stdlib/tests/file_line.pp +9 -0
- data/provision/modules/stdlib/tests/has_interface_with.pp +10 -0
- data/provision/modules/stdlib/tests/has_ip_address.pp +3 -0
- data/provision/modules/stdlib/tests/has_ip_network.pp +4 -0
- data/provision/modules/stdlib/tests/init.pp +1 -0
- metadata +291 -0
data/Vagrantfile
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# -*- mode: ruby -*-
|
2
|
+
# vi: set ft=ruby :
|
3
|
+
|
4
|
+
Vagrant::Config.run do |config|
|
5
|
+
config.vm.box = "precise32"
|
6
|
+
|
7
|
+
#forward kiosk ports
|
8
|
+
|
9
|
+
config.vm.forward_port 9901, 9901
|
10
|
+
config.vm.forward_port 9902, 9902
|
11
|
+
config.vm.forward_port 9903, 9903
|
12
|
+
config.vm.forward_port 9904, 9904
|
13
|
+
config.vm.forward_port 9905, 9905
|
14
|
+
config.vm.forward_port 9906, 9906
|
15
|
+
config.vm.forward_port 9907, 9907
|
16
|
+
config.vm.forward_port 9908, 9908
|
17
|
+
config.vm.forward_port 9909, 9909
|
18
|
+
config.vm.forward_port 9910, 9910
|
19
|
+
|
20
|
+
config.vm.provision :puppet, :module_path => "provision/modules" do |puppet|
|
21
|
+
puppet.manifests_path = "provision/manifests"
|
22
|
+
puppet.manifest_file = "default.pp"
|
23
|
+
end
|
24
|
+
config.vm.provision :shell, :path => "provision/bootstrap.sh"
|
25
|
+
end
|
data/bin/kiosk
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'kiosk'
|
4
|
+
require 'json'
|
5
|
+
|
6
|
+
def gem_dir
|
7
|
+
ServiceKiosk::Kiosk.gem_dir
|
8
|
+
end
|
9
|
+
|
10
|
+
def config
|
11
|
+
file = File.read('Kioskfile.json')
|
12
|
+
JSON.parse file
|
13
|
+
end
|
14
|
+
|
15
|
+
case ARGV[0]
|
16
|
+
when 'plaza:init', 'init'
|
17
|
+
boxes = `vagrant box list`
|
18
|
+
if(/precise32/m.match boxes)
|
19
|
+
puts 'plaza already initialized'
|
20
|
+
else
|
21
|
+
system 'vagrant init precise32 http://files.vagrantup.com/precise32.box'
|
22
|
+
end
|
23
|
+
|
24
|
+
when 'plaza:up', 'up'
|
25
|
+
system 'vagrant up'
|
26
|
+
|
27
|
+
when 'plaza:down', 'down'
|
28
|
+
system 'vagrant destroy'
|
29
|
+
|
30
|
+
when 'plaza:ssh', 'ssh'
|
31
|
+
system 'vagrant ssh'
|
32
|
+
|
33
|
+
when 'mall:open', 'open'
|
34
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake kiosk:start'"
|
35
|
+
|
36
|
+
when 'mall:close', 'close'
|
37
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake kiosk:stop'"
|
38
|
+
|
39
|
+
when 'mall:log', 'log'
|
40
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake kiosk:log'"
|
41
|
+
|
42
|
+
when 'kiosk:run', 'run'
|
43
|
+
env = config['kiosks'][ARGV[1]]['env']
|
44
|
+
mall = gem_dir + "/lib/mall.rb"
|
45
|
+
dir = Dir.pwd + '/kiosks/' + ARGV[1]
|
46
|
+
puts "env: #{env.inspect}"
|
47
|
+
puts "mall: #{mall}"
|
48
|
+
puts "dir: #{dir}"
|
49
|
+
jruby = `which jruby`.strip
|
50
|
+
exec(env, "#{jruby} #{mall}", :chdir => dir, :unsetenv_others => true)
|
51
|
+
|
52
|
+
else
|
53
|
+
puts "Usage: $0 {plaza:init|plaza:up|plaza:down|plaza:ssh|mall:open|mall:close|mall:log}"
|
54
|
+
end
|
55
|
+
|
data/bin/start_kiosk.sh
ADDED
data/lib/Procfile.kiosk
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
kiosk: jruby ../../lib/mall.rb
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'json'
|
2
|
+
require 'base64'
|
3
|
+
|
4
|
+
module ServiceKiosk
|
5
|
+
class InternalService
|
6
|
+
def initialize(kiosk, service)
|
7
|
+
@service = connect(kiosk, service)
|
8
|
+
end
|
9
|
+
|
10
|
+
def connect(kiosk, service)
|
11
|
+
kiosk_class = class_from_string(class_name_from_locator(kiosk, service))
|
12
|
+
kiosk_class.new
|
13
|
+
end
|
14
|
+
|
15
|
+
def class_name_from_locator(kiosk_locator, service_name)
|
16
|
+
#puts ">>> locator: #{kiosk_locator}, svc: #{service_name}"
|
17
|
+
parts = /ruby:\/\/\/(?<kiosk_name>[\w\.]*)/.match(kiosk_locator)
|
18
|
+
name = service_name
|
19
|
+
if parts[:kiosk_name]
|
20
|
+
kiosk_name = parts[:kiosk_name].gsub('.', '::')
|
21
|
+
name = kiosk_name + '::' + name
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def class_from_string(str)
|
26
|
+
#puts ">>> internal kiosk: class from str: #{str}"
|
27
|
+
str.split('::').inject(Object) do |mod, class_name|
|
28
|
+
mod.const_get(class_name)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def call(action, input={})
|
33
|
+
input_json = input.to_json
|
34
|
+
#puts ">>> kiosk call: #{action} -> #{input_json}" if ENV[LOGGER_LEVEL].to_i < 1
|
35
|
+
response = @service.method(action.to_sym).call(JSON.parse input_json)
|
36
|
+
JSON.parse response.to_json
|
37
|
+
end
|
38
|
+
|
39
|
+
def list(input={})
|
40
|
+
call('list', input)
|
41
|
+
end
|
42
|
+
|
43
|
+
def read(input={})
|
44
|
+
call('read', input)
|
45
|
+
end
|
46
|
+
|
47
|
+
def create(input={})
|
48
|
+
call('create', input)
|
49
|
+
end
|
50
|
+
|
51
|
+
def update(input={})
|
52
|
+
call('update', input)
|
53
|
+
end
|
54
|
+
|
55
|
+
def delete(input={})
|
56
|
+
call('delete', input)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
Binary file
|
data/lib/kiosk.rb
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
require_relative 'internal_service'
|
2
|
+
require_relative 'remote_service'
|
3
|
+
|
4
|
+
# built-in internal kiosks
|
5
|
+
Dir["#{File.dirname(__FILE__)}/kiosks/**/*.rb"].each { |f| require(f) }
|
6
|
+
|
7
|
+
module ServiceKiosk
|
8
|
+
class Kiosk
|
9
|
+
@@kiosks = {}
|
10
|
+
|
11
|
+
def self.open(handle_raw)
|
12
|
+
handle = handle_raw.upcase
|
13
|
+
kiosk = @@kiosks[handle]
|
14
|
+
if kiosk.nil?
|
15
|
+
locator = ENV['KIOSK_' + handle]
|
16
|
+
kiosk = @@kiosks[handle] = ServiceKiosk::Kiosk.new locator if locator
|
17
|
+
end
|
18
|
+
raise "No '#{handle}' kiosk found" unless kiosk
|
19
|
+
kiosk
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.register(handle, locator)
|
23
|
+
@@kiosks[handle.upcase] = ServiceKiosk::Kiosk.new locator
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.gem_dir
|
27
|
+
spec = Gem::Specification.find_by_name("service_kiosk")
|
28
|
+
#gem_root = spec.gem_dir
|
29
|
+
#gem_lib = gem_root + "/lib"
|
30
|
+
spec.gem_dir
|
31
|
+
end
|
32
|
+
|
33
|
+
def initialize(id)
|
34
|
+
@id = id
|
35
|
+
@is_remote = is_remote
|
36
|
+
end
|
37
|
+
|
38
|
+
def service(name)
|
39
|
+
if @is_remote
|
40
|
+
ServiceKiosk::RemoteService.new @id, name
|
41
|
+
else
|
42
|
+
ServiceKiosk::InternalService.new @id, name
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def is_remote
|
47
|
+
/^http/.match @id
|
48
|
+
end
|
49
|
+
|
50
|
+
# internal default kiosks
|
51
|
+
register('logger', 'ruby:///OutputLogger')
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
Dir[ServiceKiosk::Kiosk.gem_dir + "/lib/tasks/**/*.rake"].each { |ext| puts "loading #{ext}"; load ext } if defined?(Rake)
|
@@ -0,0 +1,16 @@
|
|
1
|
+
module OutputLogger
|
2
|
+
class Logger
|
3
|
+
def log(input={})
|
4
|
+
input.each {|level,text| output(level, text)}
|
5
|
+
{}
|
6
|
+
end
|
7
|
+
|
8
|
+
def output(level, text)
|
9
|
+
puts ts + " #{level.upcase} | " + text
|
10
|
+
end
|
11
|
+
|
12
|
+
def ts
|
13
|
+
Time.now.strftime('%H:%M:%S')
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/mall.rb
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
require 'base64'
|
2
|
+
require 'sinatra'
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
def gem_dir
|
6
|
+
spec = Gem::Specification.find_by_name("service_kiosk")
|
7
|
+
spec.gem_dir
|
8
|
+
end
|
9
|
+
|
10
|
+
require gem_dir + '/lib/json-simple-1.1.1.jar'
|
11
|
+
|
12
|
+
java_import org.json.simple.JSONValue
|
13
|
+
|
14
|
+
Dir["#{File.dirname(__FILE__)}/**/*.rb"].each { |f| require(f) }
|
15
|
+
Dir["#{File.dirname(__FILE__)}/kiosks/**/*.rb"].each { |f| require(f) }
|
16
|
+
Dir["#{Dir.pwd}/lib/**/*.rb"].each { |f| require(f) }
|
17
|
+
Dir["#{Dir.pwd}/lib/**/*.jar"].each { |f| require(f) }
|
18
|
+
|
19
|
+
host = /inet addr:(\S+)/m.match(`ifconfig eth0`)[1]
|
20
|
+
set :bind, host
|
21
|
+
set :port, ENV['KIOSK_PORT']
|
22
|
+
|
23
|
+
|
24
|
+
## New style
|
25
|
+
post '/:kiosk_name/:service/:action' do
|
26
|
+
begin
|
27
|
+
data = json_parse(Base64.decode64(params[:data]))
|
28
|
+
debug "mall: #{params[:kiosk_name]}.#{params[:service]}.#{params[:action]} with input: " + to_json(data)
|
29
|
+
results = kiosk(params[:kiosk_name], params[:service]).method(params[:action].to_sym).call(data)
|
30
|
+
rescue Exception => e
|
31
|
+
results = {"_ERROR_" => e.message + "\n" + e.backtrace.inspect}
|
32
|
+
end
|
33
|
+
json_results = to_json results
|
34
|
+
debug " results: #{json_results}"
|
35
|
+
Base64.encode64 json_results
|
36
|
+
end
|
37
|
+
|
38
|
+
def class_from_string(str)
|
39
|
+
str.split('::').inject(Object) do |mod, class_name|
|
40
|
+
mod.const_get(class_name)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def is_java?
|
45
|
+
ENV['KIOSK_TYPE'] == 'java'
|
46
|
+
end
|
47
|
+
|
48
|
+
def kiosk(kiosk_name, service)
|
49
|
+
if is_java?
|
50
|
+
java_import(kiosk_name + '.' + service)[0].new
|
51
|
+
else
|
52
|
+
class_from_string("#{kiosk_name}::#{service}").new
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def to_json(input)
|
57
|
+
if is_java?
|
58
|
+
JSONValue.toJSONString input
|
59
|
+
else
|
60
|
+
input.to_json
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
def json_parse(input)
|
65
|
+
return nil unless input
|
66
|
+
if is_java?
|
67
|
+
JSONValue.parse input
|
68
|
+
else
|
69
|
+
JSON.parse input
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
def debug(message)
|
74
|
+
@log = ServiceKiosk::Kiosk.open('logger').service('Logger') unless @log
|
75
|
+
@log.call('log', {'debug' => message})
|
76
|
+
end
|
77
|
+
|
data/lib/mallcop.rb
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
procfile = ''
|
2
|
+
count = 1
|
3
|
+
Dir["#{Dir.pwd}/kiosks/*"].each do |kiosk|
|
4
|
+
handle = /\/([^\/]+)$/.match(kiosk)[1]
|
5
|
+
puts kiosk + ' -> ' + handle
|
6
|
+
procfile << %Q[#{handle}: kiosk kiosk:run #{kiosk} 990#{count}\n]
|
7
|
+
count += 1
|
8
|
+
end
|
9
|
+
File.open('./Procfile', 'w') { |file| file.write(procfile) }
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require_relative 'kiosk'
|
2
|
+
require 'json'
|
3
|
+
require 'base64'
|
4
|
+
require 'rest_client'
|
5
|
+
require 'open-uri'
|
6
|
+
|
7
|
+
module ServiceKiosk
|
8
|
+
class RemoteService
|
9
|
+
def initialize(kiosk, service)
|
10
|
+
@endpoint = external_host(kiosk + '/' + service)
|
11
|
+
@logger = ServiceKiosk::Kiosk.open('logger').service('Logger') unless @logger
|
12
|
+
debug "remote service wants to use a logger: " + @logger.inspect
|
13
|
+
end
|
14
|
+
|
15
|
+
def url(id=nil, input=nil)
|
16
|
+
@endpoint + (id ? ('/' + id) : '') + (input ? '?data=' + CGI::escape(input.to_json) : '')
|
17
|
+
end
|
18
|
+
|
19
|
+
def action_url(action)
|
20
|
+
@endpoint + '/' + action
|
21
|
+
end
|
22
|
+
|
23
|
+
def external_host(id)
|
24
|
+
# TODO: this hack is to correct the fact that sinatra using jruby on vbox ubuntu won't
|
25
|
+
# bind properly to all interfaces 0.0.0.0
|
26
|
+
host = /inet addr:(\S+)/m.match(`ifconfig eth0`)[1]
|
27
|
+
id.sub('localhost', host)
|
28
|
+
end
|
29
|
+
|
30
|
+
def call(action, input={})
|
31
|
+
input_json = input.to_json
|
32
|
+
debug "kiosk call: #{action} -> #{input_json}"
|
33
|
+
response = RestClient.post action_url(action), {data: Base64.encode64(input_json)}
|
34
|
+
JSON.parse Base64.decode64(response)
|
35
|
+
end
|
36
|
+
|
37
|
+
def list(input={})
|
38
|
+
call('list', input)
|
39
|
+
end
|
40
|
+
|
41
|
+
def read(input={})
|
42
|
+
call('read', input)
|
43
|
+
end
|
44
|
+
|
45
|
+
def create(input={})
|
46
|
+
call('create', input)
|
47
|
+
end
|
48
|
+
|
49
|
+
def update(input={})
|
50
|
+
call('update', input)
|
51
|
+
end
|
52
|
+
|
53
|
+
def delete(input={})
|
54
|
+
call('delete', input)
|
55
|
+
end
|
56
|
+
|
57
|
+
def debug(message)
|
58
|
+
@logger.call('log', {'debug' => message})
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
namespace :kiosk do
|
2
|
+
task :init do
|
3
|
+
boxes = `vagrant box list`
|
4
|
+
if(/precise32/m.match boxes)
|
5
|
+
puts 'box precise32 already defined.'
|
6
|
+
else
|
7
|
+
system 'vagrant init precise32 http://files.vagrantup.com/precise32.box'
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
task :up do
|
12
|
+
system 'vagrant up'
|
13
|
+
end
|
14
|
+
|
15
|
+
task :destroy do
|
16
|
+
system 'vagrant destroy'
|
17
|
+
end
|
18
|
+
|
19
|
+
task :mall_start do
|
20
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake start'"
|
21
|
+
end
|
22
|
+
|
23
|
+
task :mall_log do
|
24
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake log'"
|
25
|
+
end
|
26
|
+
|
27
|
+
task :mall_stop do
|
28
|
+
exec "vagrant ssh -c 'cd /vagrant/mall; /usr/local/bin/rake stop'"
|
29
|
+
end
|
30
|
+
|
31
|
+
task :start do
|
32
|
+
unless mall_running?
|
33
|
+
unless pid = fork
|
34
|
+
write_procfile
|
35
|
+
exec "foreman start > log/foreman.log 2>&1 & echo $! > log/pid"
|
36
|
+
end
|
37
|
+
sleep 0.1
|
38
|
+
puts "Mall is opening (pid: #{mall_pid})"
|
39
|
+
else
|
40
|
+
puts "Mall already opened (pid: #{mall_pid})"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
task :stop do
|
45
|
+
if mall_running?
|
46
|
+
group = `ps axj`.match(/\d+\s+#{mall_pid}\s+(\d+).*foreman/m)[1]
|
47
|
+
system "pkill -g #{group}"
|
48
|
+
File.delete pidfile
|
49
|
+
File.delete './Procfile'
|
50
|
+
puts "Mall is closing..."
|
51
|
+
else
|
52
|
+
puts "Mall already closed"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
task :log do
|
57
|
+
exec "tail -n 200 --pid=#{mall_pid} -f log/foreman.log"
|
58
|
+
end
|
59
|
+
|
60
|
+
task :mallcop do
|
61
|
+
exec "jruby #{gem_dir}/lib/mallcop.rb"
|
62
|
+
end
|
63
|
+
|
64
|
+
def mall_pid
|
65
|
+
File.read(pidfile).strip
|
66
|
+
end
|
67
|
+
|
68
|
+
def mall_running?
|
69
|
+
File.exists?(pidfile)
|
70
|
+
end
|
71
|
+
|
72
|
+
def pidfile
|
73
|
+
'log/pid'
|
74
|
+
end
|
75
|
+
|
76
|
+
def gem_dir
|
77
|
+
spec = Gem::Specification.find_by_name("service_kiosk")
|
78
|
+
spec.gem_dir
|
79
|
+
end
|
80
|
+
|
81
|
+
def write_procfile
|
82
|
+
File.open('./Procfile', 'w') {|f| f.write(procfile) }
|
83
|
+
end
|
84
|
+
|
85
|
+
def procfile
|
86
|
+
result = ''
|
87
|
+
Dir["#{Dir.pwd}/kiosks/*"].each do |kiosk|
|
88
|
+
handle = /\/([^\/]+)$/.match(kiosk)[1]
|
89
|
+
result << %Q[#{handle}: kiosk kiosk:run #{handle}\n]
|
90
|
+
end
|
91
|
+
result
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
apt-get update
|
4
|
+
apt-get install -y git
|
5
|
+
apt-get install -y ruby1.9.3
|
6
|
+
apt-get install -y cucumber
|
7
|
+
gem install rake
|
8
|
+
gem install rest-client
|
9
|
+
gem install rspec
|
10
|
+
gem install service_kiosk
|
11
|
+
gem install foreman
|
12
|
+
wget --quiet http://jruby.org.s3.amazonaws.com/downloads/1.7.3/jruby-bin-1.7.3.tar.gz
|
13
|
+
tar zxf jruby-bin-1.7.3.tar.gz
|
14
|
+
echo "export PATH=\${PATH}:/home/vagrant/jruby-1.7.3/bin" >> /home/vagrant/.profile
|
15
|
+
export PATH="${PATH}:/home/vagrant/jruby-1.7.3/bin"
|
16
|
+
jruby -S gem install sinatra
|
17
|
+
jruby -S gem install cucumber
|
18
|
+
jruby -S gem install rspec
|
19
|
+
jruby -S gem install mime-types
|
20
|
+
jruby -S gem install rest-client
|
21
|
+
jruby -S gem install service_kiosk
|
@@ -0,0 +1,49 @@
|
|
1
|
+
define append_if_no_such_line($file, $line, $refreshonly = 'false') {
|
2
|
+
exec { "/bin/echo '$line' >> '$file'":
|
3
|
+
unless => "/bin/grep -Fxqe '$line' '$file'",
|
4
|
+
path => "/bin",
|
5
|
+
refreshonly => $refreshonly,
|
6
|
+
}
|
7
|
+
}
|
8
|
+
|
9
|
+
class must-have {
|
10
|
+
include apt
|
11
|
+
apt::ppa { "ppa:webupd8team/java": }
|
12
|
+
|
13
|
+
exec { 'apt-get update':
|
14
|
+
command => '/usr/bin/apt-get update',
|
15
|
+
before => Apt::Ppa["ppa:webupd8team/java"],
|
16
|
+
}
|
17
|
+
|
18
|
+
exec { 'apt-get update 2':
|
19
|
+
command => '/usr/bin/apt-get update',
|
20
|
+
require => [ Apt::Ppa["ppa:webupd8team/java"], Package["git-core"] ],
|
21
|
+
}
|
22
|
+
|
23
|
+
package { ["vim",
|
24
|
+
"curl",
|
25
|
+
"git-core",
|
26
|
+
"bash"]:
|
27
|
+
ensure => present,
|
28
|
+
require => Exec["apt-get update"],
|
29
|
+
before => Apt::Ppa["ppa:webupd8team/java"],
|
30
|
+
}
|
31
|
+
|
32
|
+
package { ["oracle-java7-installer"]:
|
33
|
+
ensure => present,
|
34
|
+
require => Exec["apt-get update 2"],
|
35
|
+
}
|
36
|
+
|
37
|
+
exec {
|
38
|
+
"accept_license":
|
39
|
+
command => "echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections && echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections",
|
40
|
+
cwd => "/home/vagrant",
|
41
|
+
user => "vagrant",
|
42
|
+
path => "/usr/bin/:/bin/",
|
43
|
+
require => Package["curl"],
|
44
|
+
before => Package["oracle-java7-installer"],
|
45
|
+
logoutput => true,
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
include must-have
|
@@ -0,0 +1,83 @@
|
|
1
|
+
2012-05-25 Puppet Labs <info@puppetlabs.com> - 0.0.4
|
2
|
+
* Fix ppa list filename when there is a period in the PPA name
|
3
|
+
* Add .pref extension to apt preferences files
|
4
|
+
* Allow preferences to be purged
|
5
|
+
* Extend pin support
|
6
|
+
|
7
|
+
2012-05-04 Puppet Labs <info@puppetlabs.com> - 0.0.3
|
8
|
+
* only invoke apt-get update once
|
9
|
+
* only install python-software-properties if a ppa is added
|
10
|
+
* support 'ensure => absent' for all defined types
|
11
|
+
* add apt::conf
|
12
|
+
* add apt::backports
|
13
|
+
* fixed Modulefile for module tool dependency resolution
|
14
|
+
* configure proxy before doing apt-get update
|
15
|
+
* use apt-get update instead of aptitude for apt::ppa
|
16
|
+
* add support to pin release
|
17
|
+
|
18
|
+
|
19
|
+
2012-03-26 Puppet Labs <info@puppetlabs.com> - 0.0.2
|
20
|
+
41cedbb (#13261) Add real examples to smoke tests.
|
21
|
+
d159a78 (#13261) Add key.pp smoke test
|
22
|
+
7116c7a (#13261) Replace foo source with puppetlabs source
|
23
|
+
1ead0bf Ignore pkg directory.
|
24
|
+
9c13872 (#13289) Fix some more style violations
|
25
|
+
0ea4ffa (#13289) Change test scaffolding to use a module & manifest dir fixture path
|
26
|
+
a758247 (#13289) Clean up style violations and fix corresponding tests
|
27
|
+
99c3fd3 (#13289) Add puppet lint tests to Rakefile
|
28
|
+
5148cbf (#13125) Apt keys should be case insensitive
|
29
|
+
b9607a4 Convert apt::key to use anchors
|
30
|
+
|
31
|
+
2012-03-07 Puppet Labs <info@puppetlabs.com> - 0.0.1
|
32
|
+
d4fec56 Modify apt::source release parameter test
|
33
|
+
1132a07 (#12917) Add contributors to README
|
34
|
+
8cdaf85 (#12823) Add apt::key defined type and modify apt::source to use it
|
35
|
+
7c0d10b (#12809) $release should use $lsbdistcodename and fall back to manual input
|
36
|
+
be2cc3e (#12522) Adjust spec test for splitting purge
|
37
|
+
7dc60ae (#12522) Split purge option to spare sources.list
|
38
|
+
9059c4e Fix source specs to test all key permutations
|
39
|
+
8acb202 Add test for python-software-properties package
|
40
|
+
a4af11f Check if python-software-properties is defined before attempting to define it.
|
41
|
+
1dcbf3d Add tests for required_packages change
|
42
|
+
f3735d2 Allow duplicate $required_packages
|
43
|
+
74c8371 (#12430) Add tests for changes to apt module
|
44
|
+
97ebb2d Test two sources with the same key
|
45
|
+
1160bcd (#12526) Add ability to reverse apt { disable_keys => true }
|
46
|
+
2842d73 Add Modulefile to puppet-apt
|
47
|
+
c657742 Allow the use of the same key in multiple sources
|
48
|
+
8c27963 (#12522) Adding purge option to apt class
|
49
|
+
997c9fd (#12529) Add unit test for apt proxy settings
|
50
|
+
50f3cca (#12529) Add parameter to support setting a proxy for apt
|
51
|
+
d522877 (#12094) Replace chained .with_* with a hash
|
52
|
+
8cf1bd0 (#12094) Remove deprecated spec.opts file
|
53
|
+
2d688f4 (#12094) Add rspec-puppet tests for apt
|
54
|
+
0fb5f78 (#12094) Replace name with path in file resources
|
55
|
+
f759bc0 (#11953) Apt::force passes $version to aptitude
|
56
|
+
f71db53 (#11413) Add spec test for apt::force to verify changes to unless
|
57
|
+
2f5d317 (#11413) Update dpkg query used by apt::force
|
58
|
+
cf6caa1 (#10451) Add test coverage to apt::ppa
|
59
|
+
0dd697d include_src parameter in example; Whitespace cleanup
|
60
|
+
b662eb8 fix typos in "repositories"
|
61
|
+
1be7457 Fix (#10451) - apt::ppa fails to "apt-get update" when new PPA source is added
|
62
|
+
864302a Set the pin priority before adding the source (Fix #10449)
|
63
|
+
1de4e0a Refactored as per mlitteken
|
64
|
+
1af9a13 Added some crazy bash madness to check if the ppa is installed already. Otherwise the manifest tries to add it on every run!
|
65
|
+
52ca73e (#8720) Replace Apt::Ppa with Apt::Builddep
|
66
|
+
5c05fa0 added builddep command.
|
67
|
+
a11af50 added the ability to specify the content of a key
|
68
|
+
c42db0f Fixes ppa test.
|
69
|
+
77d2b0d reformatted whitespace to match recommended style of 2 space indentation.
|
70
|
+
27ebdfc ignore swap files.
|
71
|
+
377d58a added smoke tests for module.
|
72
|
+
18f614b reformatted apt::ppa according to recommended style.
|
73
|
+
d8a1e4e Created a params class to hold global data.
|
74
|
+
636ae85 Added two params for apt class
|
75
|
+
148fc73 Update LICENSE.
|
76
|
+
ed2d19e Support ability to add more than one PPA
|
77
|
+
420d537 Add call to apt-update after add-apt-repository in apt::ppa
|
78
|
+
945be77 Add package definition for python-software-properties
|
79
|
+
71fc425 Abs paths for all commands
|
80
|
+
9d51cd1 Adding LICENSE
|
81
|
+
71796e3 Heading fix in README
|
82
|
+
87777d8 Typo in README
|
83
|
+
f848bac First commit
|
@@ -0,0 +1,19 @@
|
|
1
|
+
Copyright (c) 2011 Evolving Web Inc.
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
4
|
+
of this software and associated documentation files (the "Software"), to deal
|
5
|
+
in the Software without restriction, including without limitation the rights
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
8
|
+
furnished to do so, subject to the following conditions:
|
9
|
+
|
10
|
+
The above copyright notice and this permission notice shall be included in
|
11
|
+
all copies or substantial portions of the Software.
|
12
|
+
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
19
|
+
THE SOFTWARE.
|
@@ -0,0 +1,14 @@
|
|
1
|
+
name 'puppetlabs-apt'
|
2
|
+
version '1.1.0'
|
3
|
+
source 'https://github.com/puppetlabs/puppetlabs-apt'
|
4
|
+
author 'Evolving Web / Puppet Labs'
|
5
|
+
license 'Apache License 2.0'
|
6
|
+
summary 'Puppet Labs Apt Module'
|
7
|
+
description 'APT Module for Puppet'
|
8
|
+
project_page 'https://github.com/puppetlabs/puppetlabs-apt'
|
9
|
+
|
10
|
+
## Add dependencies, if any:
|
11
|
+
#dependency 'puppetlabs/stdlib', '2.x'
|
12
|
+
# The dependency should be written as above but librarian-puppet
|
13
|
+
# does not support the expression as the PMT does.
|
14
|
+
dependency 'puppetlabs/stdlib', '>= 2.2.1'
|