xcoderake 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. data/History.txt +6 -0
  2. data/lib/xcoderake.rb +32 -18
  3. metadata +18 -23
data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ === 0.1.3 2010-10-05
2
+ * 1 major enhancement:
3
+ * Support for specifying -git in dependency list to softlink to ../ProjectName instead of fetching from scp
4
+ * 1 minor enhancement:
5
+ * Now deletes the temporary folder after uploading it
6
+
1
7
  === 0.1.2 2010-05-07
2
8
  * 1 minor enhancement:
3
9
  * More descriptive output for 'list' target (display remote dependencies)
data/lib/xcoderake.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  $:.unshift(File.dirname(__FILE__)) unless
2
- $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
2
+ $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
3
 
4
4
  module Xcoderake
5
5
  VERSION = '0.1.1'
@@ -28,7 +28,7 @@ task :all =>[:clean,:deps, :deploy]
28
28
 
29
29
  desc "Fetch dependencies for simulator"
30
30
  task :deps =>[:clean,$dep_dir] do
31
-
31
+
32
32
  if $dep_list.empty?
33
33
  puts "No dependencies needed for #{$project_name}"
34
34
  else
@@ -40,7 +40,7 @@ end
40
40
 
41
41
  desc "Fetch dependencies for device"
42
42
  task :deps_release =>[:clean,$dep_dir] do
43
-
43
+
44
44
  $dep_list.each do |dir|
45
45
  download_dependency dir,$release_iphoneos
46
46
  end
@@ -80,17 +80,17 @@ task :release,[:version] do |t,args|
80
80
  if system "ssh #{$server} test -d #{$remote_repository}/#{$project_name}-#{version}/#{$release_iphoneos}"
81
81
  raise "There is already a version #{version} on #{$server}, please increment."
82
82
  end
83
-
83
+
84
84
  xcodebuild $project_name,"Release",$iphoneos_sdk
85
85
  prepare_folder $project_name,$release_iphoneos,version
86
86
  upload_dependency $project_name,$release_iphoneos, version
87
-
87
+
88
88
  warning_deps = $dep_list.select {|item| item.include? "-SNAPSHOT"}
89
89
  if not warning_deps.empty?
90
90
  puts "WARNING! You're building a release version based on unstable dependencies:"
91
91
  warning_deps.each {|dep| puts "----- "+dep}
92
92
  end
93
-
93
+
94
94
  puts "Release done!"
95
95
  end
96
96
 
@@ -109,7 +109,7 @@ task :list do
109
109
  list.each do |dir|
110
110
  match_full = dir.match(/\/([a-z,A-Z]+)-(\S+)\/(\S+)-(\S+)/)
111
111
  if $1!=nil
112
- insert_into_deps($1,$2,"#{$3}-#{$4}")
112
+ insert_into_deps($1,$2,"#{$3}-#{$4}")
113
113
  else
114
114
  match_no_target = dir.match(/\/([a-z,A-Z]+)-(\S+)\/(\S+)/)
115
115
  if $1 != nil
@@ -136,7 +136,7 @@ end
136
136
 
137
137
  def insert_into_deps(name,version,info)
138
138
  if $deps[name] == nil
139
- $deps[name] = Hash.new
139
+ $deps[name] = Hash.new
140
140
  end
141
141
  if $deps[name][version] == nil
142
142
  $deps[name][version] = Array.new
@@ -162,7 +162,7 @@ def prepare_folder project_name,target,version="SNAPSHOT"
162
162
  puts "Creating package"
163
163
 
164
164
  target = check_folder $build_folder,target
165
-
165
+
166
166
  if File.directory? "#{project_name}-#{version}"
167
167
  system "rm -rf #{project_name}-#{version}"
168
168
  end
@@ -184,16 +184,29 @@ end
184
184
 
185
185
  def download_dependency name,target
186
186
  short_name = name.split("-")[0]
187
- version = name.split("-")[1]
188
- begin
189
- if ! system "ssh #{$server} test -d #{$remote_repository}/#{short_name}-#{version}/#{target}"
190
- target="Debug"
187
+ version = name.split("-")[1]
188
+
189
+ if version == "git"
190
+ begin
191
+ puts "Linking git dependency #{name} for #{target}"
192
+ system "ln -s ../../#{short_name}/build/#{target}/ ./#{$dep_dir}/#{short_name}"
193
+ rescue Exception => e
194
+ raise "Could not locate #{name} in .. Exception: #{e}"
191
195
  end
192
- puts "Fetching #{name} for #{target}"
193
- system "scp -qr #{$server}:#{$remote_repository}/#{short_name}-#{version}/#{target} #{$dep_dir}/#{short_name}"
194
- rescue
195
- raise "Unable to locate version #{version} of dependency #{short_name} for #{target}"
196
- end
196
+
197
+ else
198
+
199
+ begin
200
+ if ! system "ssh #{$server} test -d #{$remote_repository}/#{short_name}-#{version}/#{target}"
201
+ target="Debug"
202
+ end
203
+ puts "Fetching dependency #{name} for #{target}"
204
+ system "scp -qr #{$server}:#{$remote_repository}/#{short_name}-#{version}/#{target} #{$dep_dir}/#{short_name}"
205
+ rescue
206
+ raise "Unable to locate version #{version} of dependency #{short_name} for #{target}"
207
+ end
208
+
209
+ end
197
210
  end
198
211
 
199
212
  def upload_dependency name,target, version="SNAPSHOT"
@@ -204,6 +217,7 @@ def upload_dependency name,target, version="SNAPSHOT"
204
217
  system "ssh #{$server} mkdir #{$remote_repository}/#{name}-#{version}"
205
218
  end
206
219
  system "scp -rq #{name}-#{version}/#{target} #{$server}:#{$remote_repository}/#{name}-#{version}/"
220
+ system "rm -rf #{name}-#{version}"
207
221
  end
208
222
 
209
223
  def get_version_to_use version
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcoderake
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 29
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 1
8
- - 2
9
- version: 0.1.2
9
+ - 3
10
+ version: 0.1.3
10
11
  platform: ruby
11
12
  authors:
12
13
  - Christian Hedin
@@ -14,16 +15,18 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2010-05-07 00:00:00 +02:00
18
+ date: 2010-10-05 00:00:00 +02:00
18
19
  default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: rubyforge
22
23
  prerelease: false
23
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
24
26
  requirements:
25
27
  - - ">="
26
28
  - !ruby/object:Gem::Version
29
+ hash: 7
27
30
  segments:
28
31
  - 2
29
32
  - 0
@@ -31,34 +34,22 @@ dependencies:
31
34
  version: 2.0.4
32
35
  type: :development
33
36
  version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: gemcutter
36
- prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
- - 5
44
- - 0
45
- version: 0.5.0
46
- type: :development
47
- version_requirements: *id002
48
37
  - !ruby/object:Gem::Dependency
49
38
  name: hoe
50
39
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
52
42
  requirements:
53
43
  - - ">="
54
44
  - !ruby/object:Gem::Version
45
+ hash: 21
55
46
  segments:
56
47
  - 2
57
- - 5
58
- - 0
59
- version: 2.5.0
48
+ - 6
49
+ - 1
50
+ version: 2.6.1
60
51
  type: :development
61
- version_requirements: *id003
52
+ version_requirements: *id002
62
53
  description: Rake build script for XCode projects to handle dependencies.
63
54
  email:
64
55
  - christian.hedin@jayway.com
@@ -93,23 +84,27 @@ rdoc_options:
93
84
  require_paths:
94
85
  - lib
95
86
  required_ruby_version: !ruby/object:Gem::Requirement
87
+ none: false
96
88
  requirements:
97
89
  - - ">="
98
90
  - !ruby/object:Gem::Version
91
+ hash: 3
99
92
  segments:
100
93
  - 0
101
94
  version: "0"
102
95
  required_rubygems_version: !ruby/object:Gem::Requirement
96
+ none: false
103
97
  requirements:
104
98
  - - ">="
105
99
  - !ruby/object:Gem::Version
100
+ hash: 3
106
101
  segments:
107
102
  - 0
108
103
  version: "0"
109
104
  requirements: []
110
105
 
111
106
  rubyforge_project: ciryon
112
- rubygems_version: 1.3.6
107
+ rubygems_version: 1.3.7
113
108
  signing_key:
114
109
  specification_version: 3
115
110
  summary: Rake build script for XCode projects to handle dependencies.