herkko 0.0.16 → 0.0.17

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: b66e289047837167cfc59ecb9f609e2b726910ec
4
- data.tar.gz: c24c4ef4d171c68e92373e8143a7ad8447f25faf
3
+ metadata.gz: 0ad6707152df95d3628eb7ba4a27fbe51e7dc596
4
+ data.tar.gz: fb7b02717ca7de3d3c60da871754e0ab3a01e161
5
5
  SHA512:
6
- metadata.gz: edaf3c44633f610c0b6f4225a90f101f1c62d3b72760c6215f3a2f856c1e0d650768d4271f05f2824b044a6d129da4b5d75ebe776f0c1d38713a2c4703343ed8
7
- data.tar.gz: 8e06d63069e9bc33255020ccff33b51f5879f47e76b8be0932607722a74509490b431483f0a20a91ed2eeee747275307c3abaf6713bd23066606727f7ad67c31
6
+ metadata.gz: 73a6ecec9219fc2f4acc5302a765cb2fece32190e0b649967163c1ee95c1b908edd533eb6e850a04113edd75194792aacc3d5f28564ab652a73ae6281e97479c
7
+ data.tar.gz: 27d0141de48b61f0b01408de3e1573d744ebbd257ae9b5c1ad4d889488373f8a4829b8e1a282c11b412f131885dadb479ad91fdc2f8d75eaf4aed5d9a5d7f2b1
data/README.md CHANGED
@@ -8,11 +8,18 @@ Install the gem with:
8
8
 
9
9
  $ gem install herkko
10
10
 
11
- ## Usage
11
+ ## Usage & setup
12
+
13
+ Herkko requires Travis gem to check the CI status:
14
+
15
+ $ gem install travis
12
16
 
13
17
  Herkko uses the git remote names to identify the applications. Usually you have production and staging.
14
18
 
15
- TODO: How to setup project for Herkko
19
+ To set up Heroku remotes:
20
+
21
+ $ git remote add production https://git.heroku.com/production-app-name-at-heroku.git
22
+ $ git remote add staging https://git.heroku.com/staging-app-name-at-heroku.git
16
23
 
17
24
  To deploy current branch to production:
18
25
 
@@ -22,6 +29,8 @@ Running the command will check Travis CI, deploy if the build is green and runs
22
29
 
23
30
  ## Commands
24
31
 
32
+ All commands are run `herkko [environment] [command]` like `herkko staging console`
33
+
25
34
  ### deploy
26
35
 
27
36
  You can add a file in `doc/after_deployment.{md, txt, rdoc, whatever}` and it
@@ -32,10 +41,26 @@ checklist like:
32
41
  * Stay alert for a while for exceptions.
33
42
  * Inform the client if it is needed (Basecamp, email, SMS...)
34
43
 
44
+ To put application to maintenance mode while the deployment is running, use flag `--maintenance-mode`.
45
+
46
+ CI check can be skipped with `--skip-ci-check`.
47
+
35
48
  ### console
36
49
 
37
50
  Open rails console for the application.
38
51
 
52
+ ### changelog
53
+
54
+ List of commits to be deployed. Compares the current deployed version and the current local version to see what's been committed.
55
+
56
+ ### seed
57
+
58
+ Runs seeds.rb.
59
+
60
+ ### migrate
61
+
62
+ Only runs migrations. This is done automatically on deploy if needed.
63
+
39
64
  ## Contributing
40
65
 
41
66
  1. Fork it ( https://github.com/vesan/herkko/fork )
data/lib/herkko/runner.rb CHANGED
@@ -45,7 +45,7 @@ module Herkko
45
45
  end
46
46
 
47
47
  def deploy
48
- Herkko.info "Doing deployment to #{environment}..."
48
+ Herkko.info "Doing #{forced? ? "forced(!) " : ""}deployment to #{environment}..."
49
49
  fetch_currently_deployed_version
50
50
 
51
51
  Herkko.info("Deploying changes:")
@@ -99,10 +99,14 @@ module Herkko
99
99
  }
100
100
  end
101
101
 
102
+ def forced?
103
+ arguments && arguments.include?("--force")
104
+ end
105
+
102
106
  def push_new_code
103
- Herkko.info "Pushing code to Heroku..."
107
+ Herkko.info "Pushing commit #{to_be_deployed_sha} from branch #{current_branch} to Heroku..."
104
108
  puts
105
- Herkko.run_with_output("git", "push", environment, "master")
109
+ Herkko.run_with_output("git", "push", environment, "#{to_be_deployed_sha}:master", forced? ? "--force" : nil)
106
110
  puts
107
111
  end
108
112
 
@@ -156,10 +160,6 @@ module Herkko
156
160
  arguments && arguments.include?("--maintenance-mode")
157
161
  end
158
162
 
159
- def current_branch
160
- Herkko.run("git", "rev-parse", "--abbrev-ref", "HEAD")[0].strip
161
- end
162
-
163
163
  def migrations_needed?
164
164
  file_changed?("db/migrate")
165
165
  end
@@ -168,6 +168,10 @@ module Herkko
168
168
  file_changed?("db/seeds.rb")
169
169
  end
170
170
 
171
+ def current_branch
172
+ Herkko.run("git", "rev-parse", "--abbrev-ref", "HEAD")[0].strip
173
+ end
174
+
171
175
  def currently_deployed_to(environment)
172
176
  Herkko.run("git", "rev-parse", "#{environment}/master")[0].strip
173
177
  end
@@ -1,3 +1,3 @@
1
1
  module Herkko
2
- VERSION = "0.0.16"
2
+ VERSION = "0.0.17"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: herkko
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.16
4
+ version: 0.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vesa Vänskä
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-15 00:00:00.000000000 Z
11
+ date: 2017-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler