promotion 2.1 → 2.1.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b3f7188bf0e354284ef6347e53d834e01f983a16
4
- data.tar.gz: fae1df2fdc4ff0bc0b5fac4f1c56fb837eed1059
3
+ metadata.gz: 214a4b75734bc05687ab810ec7005c2f8368e790
4
+ data.tar.gz: 490f90df28fd390b8bae5aed868016d104ff0f57
5
5
  SHA512:
6
- metadata.gz: 4d97305cd29481d92de844c67b766ee47cc6a655e800809b13e6ddc10947ec71370d536bfdacf01fff6dbfc8061176dce0317433bc37652b29aecd174a7db0e1
7
- data.tar.gz: d5d979d001482074f6557ecb90f15b01790da00d9fc8521dca7e67250edab3565972558118605dfba3192205c54844c91d04f7cf0912856a018d2a8e07580af1
6
+ metadata.gz: a922af264578c6450ce7ef75590bd4842798f1c5235e65a1e5868610d16d27fcdd4b10800937636e6548a365d5a70c4fbfcba4b1801a18a72d038c64a8168f39
7
+ data.tar.gz: eea5f11d0eafd80bf4e65f77fd9692a2d8e5243f4728a03eef56c2e17af69a826e88000a066fd34a8c29eff7074c5f26f7310cfee905fbfd3ed3ba49762e8cfd
data/CHANGELOG CHANGED
@@ -1,3 +1,6 @@
1
+ == Version 2.1.1
2
+ - Made more resilient against missing files
3
+
1
4
  == Version 2.1
2
5
  - Promotion now enforces the entire group and user specification. Previously, it would only check if the user or group existed.
3
6
 
@@ -165,7 +165,7 @@ class Enforcer
165
165
  end
166
166
  # now enforce the rest of the user spec
167
167
  command = "#{Files::Usermod} -g #{gid} -L #{uclass} -c '#{gecos}' -d #{home} -s #{shell}"
168
- command << "-S #{groups} " if groups.length > 0
168
+ command << " -S #{groups} " if groups.length > 0
169
169
  command << " #{name} "
170
170
  raise unless system(command)
171
171
  $log.info("User #{name}(#{uid}) modified to conform to spec.")
@@ -14,6 +14,7 @@ module Crontab
14
14
  }
15
15
  schedules.each { |user, crontablist|
16
16
  userCrontab = File.expand_path(user, "/var/cron/tabs/")
17
+ next unless File.exists?(userCrontab)
17
18
  contents = IO.readlines(userCrontab).collect!{ |s| s.gsub(/\s/,"") }
18
19
  proposals = []
19
20
  crontablist.each { |sched|
@@ -2,9 +2,12 @@ module Promotion
2
2
  module Generator
3
3
  module Profile
4
4
 
5
+ PROFILE="/etc/profile"
6
+
5
7
  # Writes the system profile
6
8
  def self.check(specs)
7
- contents = IO.readlines("/etc/profile").collect!{ |s| s.strip() }
9
+ system("touch #{PROFILE}") unless File.exists?(PROFILE)
10
+ contents = IO.readlines(PROFILE).collect!{ |s| s.strip() }
8
11
  proposals = []
9
12
  specs.each { |spec|
10
13
  spec.elements.each("/Specification/Environment") { |env|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: promotion
3
3
  version: !ruby/object:Gem::Version
4
- version: '2.1'
4
+ version: 2.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Kernahan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-01 00:00:00.000000000 Z
11
+ date: 2013-11-14 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: "\t\tThe Promotion tool is designed to make it easy and quick to deploy
14
14
  an application\n\t\tinto production. Originally built for use with OpenBSD, it can
@@ -52,7 +52,8 @@ files:
52
52
  - CHANGELOG
53
53
  - README
54
54
  homepage: http://rubygems.org/gems/promotion
55
- licenses: []
55
+ licenses:
56
+ - Apache-2.0
56
57
  metadata: {}
57
58
  post_install_message: "\n\n To install the executables (promote, evolve, devolve,
58
59
  mkdeploy)\n issue the following command:\n\t$ sudo ruby -rubygems -e \"require
@@ -76,7 +77,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
76
77
  version: '0'
77
78
  requirements: []
78
79
  rubyforge_project: promotion
79
- rubygems_version: 2.0.3
80
+ rubygems_version: 2.1.10
80
81
  signing_key:
81
82
  specification_version: 4
82
83
  summary: Promotion makes it possible to repeatedly deploy an application in a fast