deployflow 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011 Nickolas Means
1
+ Copyright (c) 2011 Nickolas Means / ActiveProspect, Inc.
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.markdown CHANGED
@@ -1,73 +1,93 @@
1
1
  deployflow
2
2
  ==========
3
3
 
4
- deployflow lets you use git-flow to release into a 'staging' branch and then promote specific
5
- tags into your 'master' branch for deploying to production. It's for those of us who are
6
- persnickety about keeping master as a canonical repository of what's actually running in
7
- production and doing all our mucking about elsewhere.
4
+ deployflow lets you use git-flow (or any git tag-based versioning strategy, really)
5
+ to release into a 'staging' branch and then promote specific tags into your 'master'
6
+ branch for deploying to production. It's for those of us who are persnickety about
7
+ keeping 'master' as a canonical repository of what's actually running in production
8
+ and doing all our mucking about elsewhere.
9
+
8
10
 
9
11
  Installation
10
12
  ------------
11
13
 
12
- 1. git-flow
13
-
14
- I'd recommend you use my custom fork of git-flow with deployflow. It adds
15
- version number auto-incrementation and suppresses the need to add a message
16
- to each tag you create. You can install it by:
14
+ 1. git-flow
17
15
 
18
- `brew uninstall git-flow` (if you've previously installed git-flow via Homebrew)
19
- `git clone --recursive git://github.com/nmeans/gitflow.git`
20
- `cd gitflow`
21
- `make install` (or `sudo make install` if you don't own `/usr/local/bin`)
16
+ I'd recommend you use my custom fork of git-flow with deployflow. It adds
17
+ version number auto-incrementation and suppresses the need to add a message
18
+ to each tag you create. You can install it by:
22
19
 
23
- If you'd prefer the original, visit [http://github.com/nvie/gitflow](http://github.com/nvie/gitflow)
24
- for install information.
20
+ `brew uninstall git-flow` (if you've previously installed git-flow via Homebrew)
21
+ `git clone --recursive git://github.com/nmeans/gitflow.git`
22
+ `cd gitflow`
23
+ `make install` (or `sudo make install` if you don't own `/usr/local/bin`)
25
24
 
26
- 2. Capistrano Multistage
25
+ If you'd prefer the original, visit [http://github.com/nvie/gitflow](http://github.com/nvie/gitflow)
26
+ for install information.
27
27
 
28
- `gem install capistrano-ext`
28
+ 2. deployflow
29
29
 
30
- 3. deployflow
30
+ `gem install deployflow`
31
+ This will also install capistrano and capistrano-ext if you don't already have them.
31
32
 
32
- It's as simple as:
33
- `gem install deployflow`
34
33
 
35
34
  Repository Setup
36
35
  ----------------
37
36
 
38
- 1. Add a few branches to your repo
37
+ 1. Add a couple of require branches to your repo
38
+
39
+ If you don't already have them, you'll need to add `develop` and `staging` branches. You should have a `master` branch by default. eg:
40
+
41
+ `git branch develop`
42
+ `git branch staging`
43
+
44
+ 2. Run `git flow init` on your repo
45
+
46
+ You'll want to use `staging` as your branch for production releases (contradictory, I know, but trust me)
47
+ and `develop` for next release development. eg:
48
+
49
+ [~/Projects/deployflow-test]$ git flow init
39
50
 
40
- If you don't already have them, you'll need to add `develop` and `staging` branches. You should have a `master` branch by default.
51
+ Which branch should be used for bringing forth production releases?
52
+ - develop
53
+ - master
54
+ - staging
55
+ Branch name for production releases: [master] staging
41
56
 
42
- 2. Run git flow init on your repo
57
+ Which branch should be used for integration of the "next release"?
58
+ - develop
59
+ - master
60
+ Branch name for "next release" development: [develop] develop
61
+
43
62
 
44
- You'll want to use `staging` as your branch for production releases and `develop` for next release development
63
+ 3. Add the following to the top of your config/deploy.rb
45
64
 
46
- 3. Add the following to the top of your config/deploy.rb
65
+ `require 'capistrano/ext/multistage'`
66
+ `require 'capistrano/deployflow'`
47
67
 
48
- require 'capistrano/ext/multistage'
49
- require 'capistrano/deployflow'
50
68
 
51
69
  Usage
52
70
  -----
53
71
 
54
- Just use git-flow like normal. Create a release you want to deploy with `git flow release` or `git flow hotfix`.
72
+ Just use git-flow like normal. (What is 'normal'?
73
+ [Here's a good primer.](http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-flow/))
74
+ Create a release you want to deploy with `git flow release` or `git flow hotfix`.
55
75
 
56
76
  When you're ready to deploy your release to staging, no need to push first, just run `cap staging deploy` and
57
77
  deployflow will automatically push to origin and deploy your most recent tag to staging.
58
78
 
59
79
  After you've tested in staging, you're ready to promote your tag to master and roll it out to production. All
60
80
  you have to do is `cap production deploy`, and deployflow will ask which tag you'd like to promote (suggesting
61
- your most recent automatically), merge that tag over to your master branch, push to origin, and deploy the head
62
- of your master branch to production.
81
+ your most recent automatically), merge that tag over to your master branch, push to origin, and deploy that tag
82
+ to production.
63
83
 
64
84
  Credits
65
85
  -------
66
86
 
67
- Heavily inspired by Josh Nichols' [capistrano-gitflow](https://github.com/technicalpickles/capistrano-gitflow)
87
+ Heavily inspired by and some code from Josh Nichols' [capistrano-gitflow](https://github.com/technicalpickles/capistrano-gitflow),
88
+ which was in turn inspired by Alan Pinstein's [git-deployment](https://github.com/apinstein/git-deployment).
68
89
 
69
90
  Copyright
70
91
  ---------
71
92
 
72
- Copyright (c) 2011 Nickolas Means. See LICENSE.txt for
73
- further details.
93
+ Copyright (c) 2011 Nickolas Means / ActiveProspect, Inc. See LICENSE.txt for further details.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.3
1
+ 0.0.4
data/deployflow.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{deployflow}
8
- s.version = "0.0.3"
8
+ s.version = "0.0.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Nickolas Means"]
@@ -25,9 +25,7 @@ Gem::Specification.new do |s|
25
25
  "Rakefile",
26
26
  "VERSION",
27
27
  "deployflow.gemspec",
28
- "lib/capistrano/deployflow.rb",
29
- "test/helper.rb",
30
- "test/test_deployflow.rb"
28
+ "lib/capistrano/deployflow.rb"
31
29
  ]
32
30
  s.homepage = %q{http://github.com/nmeans/deployflow}
33
31
  s.licenses = ["MIT"]
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: deployflow
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.3
5
+ version: 0.0.4
6
6
  platform: ruby
7
7
  authors:
8
8
  - Nickolas Means
@@ -98,8 +98,6 @@ files:
98
98
  - VERSION
99
99
  - deployflow.gemspec
100
100
  - lib/capistrano/deployflow.rb
101
- - test/helper.rb
102
- - test/test_deployflow.rb
103
101
  has_rdoc: true
104
102
  homepage: http://github.com/nmeans/deployflow
105
103
  licenses:
@@ -114,7 +112,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
114
112
  requirements:
115
113
  - - ">="
116
114
  - !ruby/object:Gem::Version
117
- hash: -3863862650389113681
115
+ hash: 331035867074716980
118
116
  segments:
119
117
  - 0
120
118
  version: "0"
data/test/helper.rb DELETED
@@ -1,18 +0,0 @@
1
- require 'rubygems'
2
- require 'bundler'
3
- begin
4
- Bundler.setup(:default, :development)
5
- rescue Bundler::BundlerError => e
6
- $stderr.puts e.message
7
- $stderr.puts "Run `bundle install` to install missing gems"
8
- exit e.status_code
9
- end
10
- require 'test/unit'
11
- require 'shoulda'
12
-
13
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
14
- $LOAD_PATH.unshift(File.dirname(__FILE__))
15
- require 'deployflow'
16
-
17
- class Test::Unit::TestCase
18
- end
@@ -1,7 +0,0 @@
1
- require 'helper'
2
-
3
- class TestDeployflow < Test::Unit::TestCase
4
- should "probably rename this file and start testing for real" do
5
- flunk "hey buddy, you should probably rename this file and start testing for real"
6
- end
7
- end