j-cap-recipes 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,7 +1,15 @@
1
1
  ## Changelog
2
2
 
3
- This file is written in reverse chronological order, newer releases will
4
- appear at the top.
3
+ ## 0.0.11
4
+
5
+ * Added support to manage https://github.com/bigbinary/handy config settings files.
6
+ * Added recipe to git tag the deployed branch
7
+
8
+ ## 0.0.10
9
+
10
+ ## 0.0.9
11
+
12
+ ## 0.0.8
5
13
 
6
14
  ## 0.0.7
7
15
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- j-cap-recipes (0.0.10)
4
+ j-cap-recipes (0.0.11)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -81,6 +81,26 @@ test:
81
81
 
82
82
  `honeybadger:deploy` - notify the service about deploy and it would be invoked after `deploy:migrate`
83
83
 
84
+ ### Handy
85
+
86
+ Support to manage https://github.com/bigbinary/handy config files. First should add `require 'j-cap-recipes/handy'` to `Capfile`.
87
+ There are three tasks available:
88
+
89
+
90
+ - `cap staging config:settings` Show the current staging config files;
91
+ - `cap staging config:settings:delete` Remove the custom env settings file;
92
+ - `cap staging config:settings:upload` Update the remote config file with local one;
93
+
94
+ ### Git
95
+
96
+ - `cap staging git:release:tag` Create tag in local repo by variable `git_tag_name`
97
+ Example of usage in your `deploy.rb`:
98
+
99
+ ```ruby
100
+ set :git_tag_name, proc { Time.now.to_s.gsub(/[\s\+]+/, '_') }
101
+ after 'deploy:finished', 'git:release:tag'
102
+ ```
103
+
84
104
  ## Contributing
85
105
 
86
106
  1. Fork it
@@ -0,0 +1 @@
1
+ load File.expand_path('../tasks/git.rake', __FILE__)
@@ -0,0 +1 @@
1
+ load File.expand_path('../tasks/handy.rake', __FILE__)
@@ -0,0 +1,12 @@
1
+ namespace :git do
2
+ namespace :release do
3
+ desc 'Add tag on success deploy on production'
4
+ task :tag do
5
+ version_number = fetch(:git_tag_name) { Time.now.to_s.gsub(/[\s\+:]+/, '_') }
6
+ tag_name = "#{fetch(:stage)}-#{version_number}"
7
+ system("git tag -a -m \"Version #{tag_name} released\" '#{tag_name}'") &&
8
+ (puts "Created tag `#{tag_name}`") &&
9
+ `git push --tags`
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,34 @@
1
+ namespace :config do
2
+
3
+ task settings: 'settings:show'
4
+
5
+ namespace :settings do
6
+ desc 'Update the remote config/settings/<stage>.yml file with local'
7
+ task :upload do
8
+ invoke "config/settings/#{fetch(:stage)}.yml"
9
+ end
10
+
11
+ desc 'Delete remote config/settings/<stage>.yml file'
12
+ task :delete do
13
+ on roles(:all) do |host|
14
+ within shared_path do
15
+ execute :rm, '-f', "config/settings/#{fetch(:stage)}.yml"
16
+ end
17
+ end
18
+ end
19
+
20
+ desc 'Show current settings'
21
+ task :show do
22
+ on roles(:all) do |host|
23
+ within shared_path do
24
+ execute :cat, 'config/settings.yml', "config/settings/#{fetch(:stage)}.yml"
25
+ end
26
+ end
27
+ end
28
+ end
29
+
30
+ end
31
+
32
+ stages.each do |stage|
33
+ remote_file "config/settings/#{stage}.yml" => File.join(Dir.pwd, 'config', 'settings', "#{stage}.yml")
34
+ end
@@ -1,5 +1,5 @@
1
1
  module JCap
2
2
  module Recipes
3
- VERSION = "0.0.10"
3
+ VERSION = '0.0.11'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,55 +1,62 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: j-cap-recipes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Michael Nikitochkin
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-01-13 00:00:00.000000000 Z
12
+ date: 2014-01-15 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: bundler
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - "~>"
19
+ - - ~>
18
20
  - !ruby/object:Gem::Version
19
21
  version: '1.3'
20
22
  type: :development
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - "~>"
27
+ - - ~>
25
28
  - !ruby/object:Gem::Version
26
29
  version: '1.3'
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rake
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - ">="
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: '0'
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - ">="
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: '0'
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: capistrano
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - ">="
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: 3.0.0
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - ">="
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: 3.0.0
55
62
  description: A litle knife to deploy Rails application
@@ -70,6 +77,8 @@ files:
70
77
  - lib/j-cap-recipes/check.rb
71
78
  - lib/j-cap-recipes/database.rb
72
79
  - lib/j-cap-recipes/delayed_job.rb
80
+ - lib/j-cap-recipes/git.rb
81
+ - lib/j-cap-recipes/handy.rb
73
82
  - lib/j-cap-recipes/honeybadger.rb
74
83
  - lib/j-cap-recipes/hpusher.rb
75
84
  - lib/j-cap-recipes/log.rb
@@ -81,6 +90,8 @@ files:
81
90
  - lib/j-cap-recipes/tasks/check.rake
82
91
  - lib/j-cap-recipes/tasks/database.rake
83
92
  - lib/j-cap-recipes/tasks/delayed_job.rake
93
+ - lib/j-cap-recipes/tasks/git.rake
94
+ - lib/j-cap-recipes/tasks/handy.rake
84
95
  - lib/j-cap-recipes/tasks/honeybadger.rake
85
96
  - lib/j-cap-recipes/tasks/hpusher.rake
86
97
  - lib/j-cap-recipes/tasks/log.rake
@@ -96,25 +107,32 @@ files:
96
107
  homepage: https://github.com/jetthoughts/j-cap-recipes
97
108
  licenses:
98
109
  - MIT
99
- metadata: {}
100
110
  post_install_message:
101
111
  rdoc_options: []
102
112
  require_paths:
103
113
  - lib
104
114
  required_ruby_version: !ruby/object:Gem::Requirement
115
+ none: false
105
116
  requirements:
106
- - - ">="
117
+ - - ! '>='
107
118
  - !ruby/object:Gem::Version
108
119
  version: '0'
120
+ segments:
121
+ - 0
122
+ hash: -2289146561815529984
109
123
  required_rubygems_version: !ruby/object:Gem::Requirement
124
+ none: false
110
125
  requirements:
111
- - - ">="
126
+ - - ! '>='
112
127
  - !ruby/object:Gem::Version
113
128
  version: '0'
129
+ segments:
130
+ - 0
131
+ hash: -2289146561815529984
114
132
  requirements: []
115
133
  rubyforge_project:
116
- rubygems_version: 2.1.11
134
+ rubygems_version: 1.8.23
117
135
  signing_key:
118
- specification_version: 4
136
+ specification_version: 3
119
137
  summary: Capistrano 3 recipes for nginx, monit, rails log, setup, unicorn
120
138
  test_files: []
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: da279ff2f50191a136573a58815445997e167405
4
- data.tar.gz: 58d1690c6eda61d6983250f7fc826e4369bc2dfe
5
- SHA512:
6
- metadata.gz: 06aa320b82126b34b7ddda9136013445533aaa1f4c83584fd624f0d41e54a807dbf90e98e77216ca31981799806d41bd5ac61f9793e159b350f1889f5321a81c
7
- data.tar.gz: 84653499f822cfaec9589ed41f0a1d59222c44d5a2758683ce2a1403d59e06fdb3cb09bf627a257372b32c400a15cf0f7a226bb2f3eb73f5f637dadffbcf2ea6