pushwagner 0.0.2.0 → 0.0.2.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: a3cd6aa92ef952f06c9a2ace4e43c1939c2e5848
4
- data.tar.gz: 1455fb2fe3253425399657ac7e04e53fd81661e6
3
+ metadata.gz: 8aad7d14d3572c2e10f434a0302f4d3bef9b9648
4
+ data.tar.gz: 82367b4ddb0cc9f6d81045aad8348690dcc97e35
5
5
  SHA512:
6
- metadata.gz: ed9a2ccec1c3b971ced7e61d974f168b63426e21be4210fd2b9fb277627e4229d07dca6ad29326431aa73802bee30cd800afeebaad937e0b7700d4e2908005a3
7
- data.tar.gz: 3cd1483fa3ab8930ce90820ef1d7c646aa992d5aae06768ab26b3519dc8fb25ed69149f5c1ba337744840c8a029f678e375dea2f546d67ed039fc6510b0a8847
6
+ metadata.gz: c5df0f69c4c1a806ab178356db96846b3bc199d95a2c29d14783d1dd51be7acfd07e29921c4cc306c7c07d40b6c5bc0dba702f894fe06313060e8f6e73906f27
7
+ data.tar.gz: 4f6b141a883251eb534cef4612e2464012dca0dd0b635a40eaae6a42b8978da63d3ab66397a9621c84b192f3873068ea9ad651fe553813daa1b36d76c19e23aa
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.1.0
1
+ 2.3.0
data/Gemfile.lock CHANGED
@@ -1,39 +1,44 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pushwagner (0.0.1.12)
4
+ pushwagner (0.0.2.2)
5
5
  colorize (~> 0.7)
6
6
  net-scp (~> 1.2, >= 1.2.1)
7
- net-ssh (~> 2.9, >= 2.9.1)
8
- nokogiri (~> 1.6)
7
+ net-ssh (~> 3.1, >= 3.1.1)
8
+ nokogiri (~> 1.6, >= 1.6.7)
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- coderay (1.0.9)
14
- colorize (0.7.3)
15
- diff-lcs (1.2.4)
16
- method_source (0.8.1)
17
- mini_portile (0.6.1)
13
+ coderay (1.1.1)
14
+ colorize (0.7.7)
15
+ diff-lcs (1.2.5)
16
+ method_source (0.8.2)
17
+ mini_portile2 (2.0.0)
18
18
  net-scp (1.2.1)
19
19
  net-ssh (>= 2.6.5)
20
- net-ssh (2.9.1)
21
- nokogiri (1.6.4.1)
22
- mini_portile (~> 0.6.0)
23
- pry (0.9.12.2)
24
- coderay (~> 1.0.5)
25
- method_source (~> 0.8)
20
+ net-ssh (3.1.1)
21
+ nokogiri (1.6.7.2)
22
+ mini_portile2 (~> 2.0.0.rc2)
23
+ pry (0.10.3)
24
+ coderay (~> 1.1.0)
25
+ method_source (~> 0.8.1)
26
26
  slop (~> 3.4)
27
- rake (10.1.1)
28
- rspec (2.13.0)
29
- rspec-core (~> 2.13.0)
30
- rspec-expectations (~> 2.13.0)
31
- rspec-mocks (~> 2.13.0)
32
- rspec-core (2.13.1)
33
- rspec-expectations (2.13.0)
34
- diff-lcs (>= 1.1.3, < 2.0)
35
- rspec-mocks (2.13.1)
36
- slop (3.4.5)
27
+ rake (10.5.0)
28
+ rspec (3.4.0)
29
+ rspec-core (~> 3.4.0)
30
+ rspec-expectations (~> 3.4.0)
31
+ rspec-mocks (~> 3.4.0)
32
+ rspec-core (3.4.4)
33
+ rspec-support (~> 3.4.0)
34
+ rspec-expectations (3.4.0)
35
+ diff-lcs (>= 1.2.0, < 2.0)
36
+ rspec-support (~> 3.4.0)
37
+ rspec-mocks (3.4.1)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.4.0)
40
+ rspec-support (3.4.1)
41
+ slop (3.6.0)
37
42
 
38
43
  PLATFORMS
39
44
  ruby
@@ -44,3 +49,6 @@ DEPENDENCIES
44
49
  pushwagner!
45
50
  rake (~> 10.1)
46
51
  rspec
52
+
53
+ BUNDLED WITH
54
+ 1.12.2
data/README.md CHANGED
@@ -8,6 +8,13 @@ Pushwagner searches for a config in: `./deploy.yml`, `./.pw.yml`, and `./config/
8
8
 
9
9
  Pushwagner is currently extremely opinionated to my usual practises.
10
10
 
11
+ Some conventions:
12
+ - Prefer ssh key-based deployment (Use reallly strong SSH-keys with your own ssh-agent or not at your own peril)
13
+ - Place most shit in /var/www|lib|keke/<app>, logs in /var/log, cfg in /etc/<app>.
14
+ - Let your app orchestration service or dscm set up access to deployers (I use salt|ansible|puppet for both app orchestration and dscm/infrastructure cfg) f.x.: NOPASSWD `sudo service svcname <start|restart|stop>`
15
+ - I usually separate application infrastructrure config (in infrastructure/app orchestration) and app config (toggles, etc)
16
+ - I usually thus create service wrappers / systemd / upstart shit with said dscm
17
+
11
18
  ### Minimal configuration
12
19
 
13
20
  ````yaml
@@ -20,6 +27,25 @@ environments:
20
27
  hosts: [test.example.com]
21
28
  ````
22
29
 
30
+ ### Environments
31
+
32
+ ````yaml
33
+ path_prefix: /var/apps
34
+
35
+ # Must specify a default environment.
36
+ environments:
37
+ test: &test
38
+ hosts: [test.example.com]
39
+ user: testuser
40
+ production: &production
41
+ hosts: [a1.example.com, a2.example.com]
42
+ user: productionuser
43
+ default:
44
+ <<: *production
45
+
46
+ ````
47
+
48
+
23
49
  ### Maven (M2) repo integration
24
50
 
25
51
  ````yaml
@@ -31,7 +57,8 @@ maven:
31
57
  releases: http://repo.example.com/nexus/content/repositories/releases
32
58
  snapshots: http://repo.example.com/nexus/content/repositories/snapshots
33
59
  artifacts:
34
- # creates /var/apps/foo.jar by default (assumes foo-webapp is a jar for now)
60
+ # creates /var/apps/foo/foo-webapp.jar by default (assumes foo-webapp is a jar)
61
+ # I guess I should read the pom packaging some day... Or you can pull req it.
35
62
  foo:
36
63
  group_id: com.example
37
64
  artifact_id: foo-webapp
@@ -66,7 +93,7 @@ hooks:
66
93
  before:
67
94
  - mvn package
68
95
  after:
69
- - mvn test -Pintegrationtests
96
+ - mvn test -Pint
70
97
  remote:
71
98
  before:
72
99
  - /usr/sbin/service foo stop
@@ -1,3 +1,3 @@
1
1
  module Pushwagner
2
- VERSION = "0.0.2.0"
2
+ VERSION = "0.0.2.1"
3
3
  end
data/pushwagner.gemspec CHANGED
@@ -21,9 +21,9 @@ Gem::Specification.new do |s|
21
21
 
22
22
  s.required_rubygems_version = Gem::Requirement.new('>= 1.3.6')
23
23
 
24
- s.add_runtime_dependency 'net-ssh', '~> 2.9', '>= 2.9.1'
24
+ s.add_runtime_dependency 'net-ssh', '~> 3.1', '>= 3.1.1'
25
25
  s.add_runtime_dependency 'net-scp', '~> 1.2', '>= 1.2.1'
26
- s.add_runtime_dependency 'nokogiri', '~> 1.6'
26
+ s.add_runtime_dependency 'nokogiri', '~> 1.6', '>= 1.6.7'
27
27
  s.add_runtime_dependency 'colorize', '~> 0.7'
28
28
 
29
29
  s.add_development_dependency 'bundler', '~> 1.7'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pushwagner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.0
4
+ version: 0.0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ole Christian Rynning
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-21 00:00:00.000000000 Z
11
+ date: 2016-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-ssh
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.9'
19
+ version: '3.1'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 2.9.1
22
+ version: 3.1.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '2.9'
29
+ version: '3.1'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 2.9.1
32
+ version: 3.1.1
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: net-scp
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -57,6 +57,9 @@ dependencies:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
59
  version: '1.6'
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 1.6.7
60
63
  type: :runtime
61
64
  prerelease: false
62
65
  version_requirements: !ruby/object:Gem::Requirement
@@ -64,6 +67,9 @@ dependencies:
64
67
  - - "~>"
65
68
  - !ruby/object:Gem::Version
66
69
  version: '1.6'
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: 1.6.7
67
73
  - !ruby/object:Gem::Dependency
68
74
  name: colorize
69
75
  requirement: !ruby/object:Gem::Requirement
@@ -178,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
178
184
  version: 1.3.6
179
185
  requirements: []
180
186
  rubyforge_project:
181
- rubygems_version: 2.2.2
187
+ rubygems_version: 2.5.1
182
188
  signing_key:
183
189
  specification_version: 4
184
190
  summary: Simple remote automation wrapper (wip).