ors 0.2.9 → 0.2.10

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,8 @@
1
+ module ORS::Commands
2
+ class Ruby < Base
3
+ def execute
4
+ info "setting up ruby/rubygems for #{name} #{environment}..."
5
+ execute_in_parallel(ruby_servers) {|server| setup_ruby server }
6
+ end
7
+ end
8
+ end
@@ -6,9 +6,10 @@ module ORS::Commands
6
6
  info "setting up #{name} #{environment}..."
7
7
 
8
8
  info "Are you sure? ('yes' + ctrl+D^2)"
9
- if STDIN.read == "yes"
9
+ if pretending || STDIN.read == "yes"
10
10
  execute_in_parallel(all_servers) {|server| setup_repo server }
11
- execute_in_parallel(ruby_servers) {|server| setup_ruby server }
11
+
12
+ run Ruby
12
13
 
13
14
  execute_command migration_server, prepare_environment,
14
15
  %(RAILS_ENV=#{environment} bundle exec rake db:create)
data/lib/ors/config.rb CHANGED
@@ -58,7 +58,7 @@ module ORS
58
58
  private
59
59
 
60
60
  def name_from_git
61
- git.config["remote.origin.url"].gsub /.*?:(.*?).git/, '\1'
61
+ git.config["remote.origin.url"].gsub(/^[\w]*(@|:\/\/)[^\/:]*(\/|:)([a-zA-Z0-9\/]*)(.git)?$/i, '\3')
62
62
  end
63
63
 
64
64
  end
data/lib/ors/helpers.rb CHANGED
@@ -16,7 +16,7 @@ module ORS
16
16
  def setup_ruby server
17
17
  info "[#{server}] installing ruby and gems..."
18
18
 
19
- execute_command server, prepare_environment,
19
+ execute_command server, prepare_initial_environment,
20
20
  %(gem install rubygems-update),
21
21
  %(gem update --system),
22
22
  %(gem install bundler),
@@ -128,6 +128,18 @@ module ORS
128
128
  end
129
129
  end
130
130
 
131
+ def prepare_initial_environment
132
+ # We do 2 cd's and a git checkout here because the master
133
+ # branch may not always contain the proper rvmrc/Gemfile
134
+ # we need when setting up the rest of the deploy
135
+ prepare_environment + [
136
+ %(git checkout -q -f origin/#{environment}),
137
+ %(git reset --hard),
138
+ %(cd ../),
139
+ %(cd #{deploy_directory})
140
+ ]
141
+ end
142
+
131
143
  def prepare_environment
132
144
  [%(source ~/.rvm/scripts/rvm),
133
145
  %({ cd #{deploy_directory} > /dev/null; })] # Silence RVM's "Using... gemset..."
data/lib/ors/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module ORS
2
- VERSION = "0.2.9"
2
+ VERSION = "0.2.10"
3
3
  end
@@ -97,4 +97,21 @@ describe ORS::Config do
97
97
  end
98
98
  end
99
99
 
100
+ context "#name_from_git" do
101
+ {
102
+ "git://github.com/testing/github.git" => "testing/github",
103
+ "git://example.com/testing/gitlabhq.git" => "testing/gitlabhq",
104
+ "git://github.com/testing/github" => "testing/github",
105
+ "git@github.com:testing/github" => "testing/github",
106
+ "git@ghub.com:testing/gitlabhq.git" => "testing/gitlabhq",
107
+ "git@ghub.com:gitlabhq.git" => "gitlabhq",
108
+ "git://ghub.com/gitlabhq.git" => "gitlabhq"
109
+ }.each do |remote, name|
110
+ it "should handle a remote origin url such as #{remote}" do
111
+ mock(ORS::Config).git { mock!.config { {"remote.origin.url" => remote} }}
112
+ ORS::Config.send(:name_from_git).should == name
113
+ end
114
+ end
115
+ end
116
+
100
117
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ors
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.9
4
+ version: 0.2.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-29 00:00:00.000000000 -04:00
12
+ date: 2012-03-31 00:00:00.000000000 -04:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: git
17
- requirement: &2156629660 !ruby/object:Gem::Requirement
17
+ requirement: &2160301940 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2156629660
25
+ version_requirements: *2160301940
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: rspec
28
- requirement: &2156623220 !ruby/object:Gem::Requirement
28
+ requirement: &2160301520 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *2156623220
36
+ version_requirements: *2160301520
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rr
39
- requirement: &2156621220 !ruby/object:Gem::Requirement
39
+ requirement: &2160301080 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,7 +44,7 @@ dependencies:
44
44
  version: '0'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *2156621220
47
+ version_requirements: *2160301080
48
48
  description: Heroku-like deployment utilities for ORS
49
49
  email:
50
50
  - jason.dew@ors.sc.gov and john.long@ors.sc.gov
@@ -73,6 +73,7 @@ files:
73
73
  - lib/ors/commands/logs.rb
74
74
  - lib/ors/commands/migrate.rb
75
75
  - lib/ors/commands/restart.rb
76
+ - lib/ors/commands/ruby.rb
76
77
  - lib/ors/commands/runner.rb
77
78
  - lib/ors/commands/setup.rb
78
79
  - lib/ors/commands/start.rb