capistrano-gridserver 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MzI3Y2RlOWYyMGIzNWM3Mzk1NGI5ODU5NGIwNjkwODI3YjkwYzM5Ng==
5
- data.tar.gz: !binary |-
6
- ZGZlNjM0YTlmNTAxNzdmYjMzZDcxYzJkMzM4ZDA3MDdmY2EwOWE5Mw==
2
+ SHA1:
3
+ metadata.gz: c15a2f3727ad5bbe8b400c74ed77f36f42055b71
4
+ data.tar.gz: 25ec3ebb883679500f31bfcff44e7ecbf46bf05b
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MDI0MjA1ZDk3YmVkNzM5NjE1Y2JmNWExYjQxMDQ4MzY5YTI1ZWQ2ZGMxNWM3
10
- Zjg2ZGNlYzkyOGY0ZjNmYzcxMjQxNjg2Yjk0ZjdlMWZjNzQzMTg3YzAzNTk5
11
- NmEyZGMwYmNlMTJkNWUxZDcwYmFkYTFhMGM1OTMzZThhMGY5ODM=
12
- data.tar.gz: !binary |-
13
- MTk5ODc2YmE5NTRkYjM4YTIyZjkyOWY2Y2U4ODNjNjMzYTlkOGZiZTZkZTg3
14
- M2Q5MTI2NTNiYzgxOTExMTlmMDMxMWM0NzQwYmNmZDBiOTFmYzBhYmY1NjVk
15
- YzM0YTg0MWE4ZDI0ZDg0Y2EyNzIzM2YxYjE5ZDkwMDNhZjczY2E=
6
+ metadata.gz: 6699df11c1bea8b2e850b790f4b3ef13022b93b6e6e1579087751787e7f0a3cf7b5611de08623582c25a17d76735785fa8c8053b606338a99ec999b78c87eae8
7
+ data.tar.gz: ca999c79ee6b30b8955859fa8159827620227f1359938b3cf2bf75320e7249a7e1ecab99f66a97f45cb9e3244426d6532622ef3e1ae6ebe2cdbccd393a780f15
data/README.md CHANGED
@@ -29,12 +29,12 @@ require 'capistrano/gridserver'
29
29
 
30
30
  `capistrano/gridserver` comes with 1 task:
31
31
 
32
- * gridserver:create_relative_symlink
32
+ * gridserver:create_relative_symlinks
33
33
 
34
34
  To activate, simply hook the task to after the deploy:publishing hook (you may wish to do this per server so it is not hooked by default)
35
35
 
36
36
  ```ruby
37
- after 'deploy:publishing', 'gridserver:create_relative_symlink'
37
+ after 'deploy:publishing', 'gridserver:create_relative_symlinks'
38
38
  ```
39
39
 
40
40
  ### Configuration
@@ -4,11 +4,11 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'capistrano-gridserver'
7
- spec.version = '0.0.1'
7
+ spec.version = '0.0.2'
8
8
  spec.authors = ['Craig Morris']
9
9
  spec.email = ['craig.michael.morris@gmail.com']
10
10
  spec.description = %q{Fixes issues related to using Capistrano with MediaTemple's grid server}
11
- spec.summary = %q{Fixes issues related to using Capistrano with MediaTemple's grid server}
11
+ spec.summary = %q{Fixes issues related to using Capistrano with MediaTemple's grid server by creating relative symlinks for current and your linked_dirs}
12
12
  spec.homepage = 'https://github.com/morrislaptop/capistrano-gridserver'
13
13
  spec.license = 'MIT'
14
14
 
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ['lib']
19
19
 
20
- spec.add_dependency 'capistrano', '>= 3.0.0.pre'
20
+ spec.add_dependency 'capistrano', '~> 3.0'
21
21
 
22
22
  spec.add_development_dependency 'bundler', '~> 1.3'
23
23
  spec.add_development_dependency 'rake'
@@ -3,16 +3,32 @@
3
3
  namespace :gridserver do
4
4
 
5
5
  desc "Change current symlink to relative path"
6
- task :create_relative_symlink do
6
+ task :create_relative_symlinks do
7
7
  on roles(:app) do
8
8
 
9
- info "Removing absolute current symlink"
10
- execute "rm -d #{current_path}"
9
+ # Only change current symlink if NEW deploy
10
+ unless release_path == current_path
11
+ info "Removing absolute current symlink"
12
+ execute "rm -d #{current_path}"
11
13
 
12
- info "Creating relative current symlink"
13
- execute "cd #{fetch(:deploy_to)} && ln -s ./releases/#{File.basename release_path} current"
14
+ info "Creating relative current symlink"
15
+ execute "cd #{fetch(:deploy_to)} && ln -s ./releases/#{File.basename release_path} current"
16
+ end
14
17
 
18
+ # Always recreate the linked_dirs
19
+ info "Removing absolute linked_dirs"
20
+ next unless any? :linked_dirs
21
+ on release_roles :all do
22
+ fetch(:linked_dirs).each do |dir|
23
+ target = release_path.join(dir)
24
+ source = shared_path.join(dir)
25
+ source = source.relative_path_from(target)
26
+ if test "[ -d #{target} ]"
27
+ execute :rm, '-rf', target
28
+ end
29
+ execute :ln, '-s', source, target
30
+ end
31
+ end
15
32
  end
16
33
  end
17
-
18
34
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-gridserver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Craig Morris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-19 00:00:00.000000000 Z
11
+ date: 2014-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0.pre
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ! '>='
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: 3.0.0.pre
26
+ version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,14 +42,14 @@ dependencies:
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ! '>='
45
+ - - '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ! '>='
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  description: Fixes issues related to using Capistrano with MediaTemple's grid server
@@ -78,12 +78,12 @@ require_paths:
78
78
  - lib
79
79
  required_ruby_version: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ! '>='
81
+ - - '>='
82
82
  - !ruby/object:Gem::Version
83
83
  version: '0'
84
84
  required_rubygems_version: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - ! '>='
86
+ - - '>='
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  requirements: []
@@ -91,5 +91,6 @@ rubyforge_project:
91
91
  rubygems_version: 2.1.11
92
92
  signing_key:
93
93
  specification_version: 4
94
- summary: Fixes issues related to using Capistrano with MediaTemple's grid server
94
+ summary: Fixes issues related to using Capistrano with MediaTemple's grid server by
95
+ creating relative symlinks for current and your linked_dirs
95
96
  test_files: []