flex-sdk 0.3.1 → 0.3.2
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.
- data/README.markdown +44 -13
- data/VERSION +1 -1
- data/bin/flex-sdk-prime +1 -1
- data/flex-sdk.gemspec +1 -1
- data/lib/flex-sdk.rb +16 -5
- metadata +3 -3
data/README.markdown
CHANGED
|
@@ -1,45 +1,76 @@
|
|
|
1
1
|
# flex-sdk
|
|
2
2
|
|
|
3
|
-
Provides the FlexSDK for building
|
|
3
|
+
Provides a Gemified wrapper for the FlexSDK, for building Flex applications in other projects.
|
|
4
|
+
|
|
5
|
+
Note: This Gem does not provide or redistribute the actual Flex SDK, only a way to download it and build against it in other projects.
|
|
4
6
|
|
|
5
7
|
## Installation
|
|
6
8
|
|
|
7
|
-
This gem is (or at least should be) included in a Gemfile for the project.
|
|
9
|
+
This gem is (or at least should be) included in a Gemfile for the project that requires the Flex SDK.
|
|
8
10
|
|
|
9
|
-
The Gemfile should have a line something like this:
|
|
11
|
+
The Flex Project's Gemfile should have a line something like this:
|
|
10
12
|
|
|
11
|
-
gem "flex-sdk"
|
|
13
|
+
gem "flex-sdk"
|
|
12
14
|
|
|
13
15
|
It could also probably be put in a "build" group. This would mean that Rails won't attempt to load it during normal operation, only during Rake tasks. Like this:
|
|
14
16
|
|
|
15
17
|
group :build do
|
|
16
|
-
gem "flex-sdk"
|
|
18
|
+
gem "flex-sdk"
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
## Usage
|
|
21
|
+
## Usage in Ruby
|
|
22
|
+
|
|
23
|
+
require 'flex-sdk'
|
|
24
|
+
...
|
|
25
|
+
flexsdk = FlexSDK.new
|
|
26
|
+
...
|
|
27
|
+
config = flexsdk.config
|
|
28
|
+
...
|
|
29
|
+
config["sdk_dir"]
|
|
30
|
+
=> "/Volumes/Data/git/flex-sdk/vendor/flex_sdk_3.5.0.12683"
|
|
31
|
+
|
|
32
|
+
flexsdk.download(config)
|
|
33
|
+
=> "Downloading SDK"
|
|
34
|
+
=> "From: http://fpdownload.adobe.com/pub/flex/sdk/builds/flex3/flex_sdk_3.5.0.12683.zip"
|
|
35
|
+
=> "To: /Volumes/Data/git/flex-sdk/vendor/flex_sdk_3.5.0.12683.zip"
|
|
36
|
+
|
|
37
|
+
flexsdk.unzip(config)
|
|
38
|
+
=> "Unzipping SDK"
|
|
39
|
+
=> "From: /Volumes/Data/git/flex-sdk/vendor/flex_sdk_3.5.0.12683.zip"
|
|
40
|
+
=> "To: /Volumes/Data/git/flex-sdk/vendor/flex_sdk_3.5.0.12683/"
|
|
41
|
+
|
|
42
|
+
## Usage in Bash
|
|
43
|
+
|
|
44
|
+
To download and unzip the Flex SDK from Adobe site, into vendor/ in this Gem
|
|
45
|
+
|
|
46
|
+
bundle exec flex-sdk-prime
|
|
47
|
+
|
|
48
|
+
Report the installation path of the Flex SDK
|
|
49
|
+
|
|
50
|
+
bundle exec flex-sdk-path
|
|
20
51
|
|
|
21
|
-
TODO
|
|
22
52
|
|
|
23
53
|
## Upgrading the SDK version used in this Gem
|
|
24
54
|
|
|
25
|
-
|
|
55
|
+
Edit config.yml and update the version number. Make sure that this is a valid version on the Adobe website. e.g:
|
|
26
56
|
|
|
27
|
-
sdk_ver
|
|
57
|
+
sdk_ver: "3.5.0.12683"
|
|
58
|
+
|
|
28
59
|
Bump the version of this gem
|
|
29
60
|
|
|
30
61
|
rake version:bump:minor
|
|
62
|
+
|
|
31
63
|
Release
|
|
32
64
|
|
|
33
65
|
rake release
|
|
34
66
|
|
|
35
67
|
## Copylocale
|
|
36
68
|
|
|
37
|
-
Once the SDK
|
|
69
|
+
Once the SDK is downloaded, unzipped and copied in, this project (flex-sdk) has a method to do the copylocale thing:
|
|
38
70
|
|
|
39
|
-
|
|
71
|
+
flexsdk.copylocale(config)
|
|
40
72
|
|
|
41
73
|
In the old money, this is the same as doing:
|
|
42
74
|
|
|
43
75
|
(Old way) bin/copylocale en_US en_NZ
|
|
44
|
-
|
|
45
|
-
Once this is done, make sure you commit / push back to GitHub.
|
|
76
|
+
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.3.
|
|
1
|
+
0.3.2
|
data/bin/flex-sdk-prime
CHANGED
data/flex-sdk.gemspec
CHANGED
data/lib/flex-sdk.rb
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
class FlexSDK
|
|
2
2
|
|
|
3
|
+
# Create a hash of configuration objects, some from config.yml, the rest figured out
|
|
3
4
|
def config
|
|
4
5
|
require 'yaml'
|
|
5
6
|
config = YAML.load_file(File.expand_path(File.join((File.dirname(__FILE__)), "..", "config.yml")))
|
|
6
7
|
config_hash = config["flex-sdk"]
|
|
7
8
|
|
|
9
|
+
# These variables are provided by config.yml
|
|
8
10
|
sdk_ver = config_hash["sdk_ver"]
|
|
9
11
|
vendor_path = config_hash["vendor_path"]
|
|
10
12
|
cdn_path = config_hash["cdn_path"]
|
|
11
|
-
|
|
13
|
+
|
|
14
|
+
# These variables are determined at runtime and combined into one hash
|
|
12
15
|
sdk_name = "flex_sdk_" + sdk_ver
|
|
13
16
|
config_hash["sdk_name"] = sdk_name
|
|
14
17
|
sdk_file = sdk_name + ".zip"
|
|
@@ -18,17 +21,27 @@ class FlexSDK
|
|
|
18
21
|
config_hash["dest_dir"] = dest_dir
|
|
19
22
|
config_hash["dest_file"] = File.join(dest_dir, sdk_file)
|
|
20
23
|
config_hash["sdk_dir"] = File.join(dest_dir, sdk_name)
|
|
24
|
+
|
|
21
25
|
config_hash
|
|
22
26
|
end
|
|
23
27
|
|
|
28
|
+
# Return the full path to the SDK dir, so other things/people can use it
|
|
24
29
|
def sdk_dir
|
|
25
30
|
config = self.config
|
|
26
31
|
sdk_dir = config["sdk_dir"]
|
|
27
32
|
end
|
|
28
33
|
|
|
34
|
+
# Download the SDK zip file to the gem
|
|
29
35
|
def download(config)
|
|
36
|
+
require 'fileutils'
|
|
37
|
+
|
|
38
|
+
dest_dir = config["dest_dir"]
|
|
30
39
|
dest_file = config["dest_file"]
|
|
31
40
|
cdn_file = config["cdn_file"]
|
|
41
|
+
|
|
42
|
+
# Make sure the destination dir (likely GEM_NAME/vendor/) exists
|
|
43
|
+
FileUtils.mkdir_p dest_dir
|
|
44
|
+
|
|
32
45
|
puts "\n"
|
|
33
46
|
unless File.file?(dest_file)
|
|
34
47
|
puts "Downloading SDK\n\tFrom:\t#{cdn_file}\n\tTo:\t#{dest_file}\n\n"
|
|
@@ -41,15 +54,13 @@ class FlexSDK
|
|
|
41
54
|
end
|
|
42
55
|
end
|
|
43
56
|
|
|
57
|
+
# Unzip the downloaded zip file into the target dir
|
|
44
58
|
def unzip(config)
|
|
45
|
-
require 'fileutils'
|
|
46
|
-
|
|
47
59
|
sdk_dir = config["sdk_dir"]
|
|
48
60
|
dest_file = config["dest_file"]
|
|
49
61
|
dest_dir = config["dest_dir"]
|
|
50
62
|
|
|
51
63
|
puts "\n"
|
|
52
|
-
FileUtils.mkdir_p dest_dir
|
|
53
64
|
unless File.directory?(sdk_dir)
|
|
54
65
|
puts "Unzipping SDK\n\tFrom:\t#{dest_file}\n\tTo:\t#{sdk_dir}/\n\n"
|
|
55
66
|
`unzip #{dest_file} -d #{dest_dir}`
|
|
@@ -59,9 +70,9 @@ class FlexSDK
|
|
|
59
70
|
else
|
|
60
71
|
puts "Won't unzip SDK, directory #{sdk_dir}/ already exists\n\n"
|
|
61
72
|
end
|
|
62
|
-
puts "Done. Flex SDK should now be ready for building\n\n"
|
|
63
73
|
end
|
|
64
74
|
|
|
75
|
+
# Perform the copylocale step
|
|
65
76
|
def copylocale(config)
|
|
66
77
|
sdk_name = config["sdk_dir"]
|
|
67
78
|
puts = `#{sdk_dir}/bin/copylocale en_US en_NZ`
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: flex-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 23
|
|
5
5
|
prerelease: false
|
|
6
6
|
segments:
|
|
7
7
|
- 0
|
|
8
8
|
- 3
|
|
9
|
-
-
|
|
10
|
-
version: 0.3.
|
|
9
|
+
- 2
|
|
10
|
+
version: 0.3.2
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Jonathan Hoskin
|