ploy 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9d324bad98f616dfd00395a286523d40464a18b7
4
- data.tar.gz: 2dd186615d6503905fde79a09b5768597bffaed6
3
+ metadata.gz: 331e2a837c04040d1b0ba60d811c83d6225225d4
4
+ data.tar.gz: 31c0ca84ea656cb18215b962883398f7fc8857d1
5
5
  SHA512:
6
- metadata.gz: 5ebe8f99ea0390324ea875412e1ed97fea1167a268d0359e7fb2395be47b082c61fa065ac160f4d8fc7dacc1362ecb4869d5ca8db0b7d3de655c0f4f4329c9a5
7
- data.tar.gz: 825aa7b04f3ec2b5a31ebb227c662e3934218ab08f7116c321e118d8de6a7deb6d30f59e1f7cb68ec75171a5a81cb5a2e56200a67e90d07b0956327c9fa7b447
6
+ metadata.gz: 66108f1e006c8e4a4e3c7d11ba7ad4d576bd36f698c7a6274fa966b787261dfda2ee8209cd429e937226b3556202f24ae413b1a16ecd48bdabc14282abc82d80
7
+ data.tar.gz: c5cc73175936835a4ea5be5e131940da8b5ab9779cba1e748b10d9d5b0df005ca6f7da3b31d6c12581f2289523627592ca029b89c504a5551609cc64567eaa6d
@@ -1,5 +1,6 @@
1
1
  require 'yaml'
2
2
  require 'ploy/localpackage/optlist'
3
+ require 'tempfile'
3
4
 
4
5
  module Ploy
5
6
  module LocalPackage
@@ -22,7 +23,13 @@ module Ploy
22
23
  Dir.mktmpdir do |dir|
23
24
  mirror_dist(dir)
24
25
  write_metadata(dir)
25
- info = eval(`fpm #{fpm_optlist(dir).as_string} .`)
26
+ Tempfile.open(['postinst', 'sh']) do |file|
27
+ write_after_install_script(file)
28
+ ol = fpm_optlist(dir)
29
+ ol.add("--after-install", file.path)
30
+ puts "debug: fpm #{ol.as_string} ."
31
+ info = eval(`fpm #{ol.as_string} .`)
32
+ end
26
33
  end
27
34
  return info[:path]
28
35
  end
@@ -61,6 +68,29 @@ module Ploy
61
68
  return @prefix ? File.join(topdir, @prefix) : topdir
62
69
  end
63
70
 
71
+ def write_after_install_script(file)
72
+ file.write <<SCRIPT
73
+ #!/bin/bash
74
+
75
+ # this is awful
76
+ check_upstart_service(){
77
+ status $1 | grep -q "^$1 start" > /dev/null
78
+ return $?
79
+ }
80
+ SCRIPT
81
+ @upstart_files.each do | upstart |
82
+ service = File.basename(upstart)
83
+ file.write <<SCRIPT
84
+ if check_upstart_service #{service}; then
85
+ restart #{service}
86
+ else
87
+ start #{service}
88
+ fi
89
+ SCRIPT
90
+ end
91
+ file.flush
92
+ end
93
+
64
94
  def write_metadata(dir)
65
95
  base = File.join(dir, @metadata_dir)
66
96
  FileUtils.mkpath(base)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ploy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Bruce