airake 0.4.1 → 0.4.2
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +4 -0
- data/Manifest.txt +12 -7
- data/README.txt +18 -54
- data/app_generators/airake/airake_generator.rb +1 -2
- data/app_generators/airake/templates/README +21 -50
- data/app_generators/shared/Rakefile +1 -0
- data/app_generators/shared/airake.yml +1 -0
- data/app_generators/shared/application.mxml +2 -4
- data/app_generators/shared/descriptor_1.xml +57 -0
- data/app_generators/shared/test/Test-app.xml +4 -20
- data/html/app_generators.html +42 -0
- data/html/component_generators.html +43 -0
- data/html/copy_to_rubyforge.sh +1 -0
- data/html/index.html +130 -0
- data/html/resources.html +51 -0
- data/html/screen.css +105 -0
- data/html/tasks.html +64 -0
- data/lib/airake/commands/acompc.rb +7 -6
- data/lib/airake/commands/adl.rb +6 -5
- data/lib/airake/commands/adt.rb +27 -25
- data/lib/airake/commands/asdoc.rb +7 -6
- data/lib/airake/commands/base.rb +7 -0
- data/lib/airake/commands/fcsh.rb +25 -0
- data/lib/airake/commands/flash_player.rb +34 -0
- data/lib/airake/commands/mxmlc.rb +9 -8
- data/lib/airake/project.rb +24 -17
- data/lib/airake/tasks/air.rake +13 -2
- data/lib/airake/version.rb +1 -1
- data/test/test_airake.rb +17 -15
- data/test/test_runner.rb +17 -0
- metadata +17 -14
- data/app_generators/browsair/USAGE +0 -5
- data/app_generators/browsair/browsair_generator.rb +0 -95
- data/app_generators/browsair/templates/README +0 -11
- data/app_generators/shared/icons/MouseRunnerDotComGraphicsLicense.txt +0 -15
- data/bin/browsair +0 -12
- data/test/test_browsair_generator.rb +0 -53
@@ -0,0 +1,43 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
6
|
+
<title>Airake - Rake tasks for Adobe AIR</title>
|
7
|
+
<link rel="stylesheet" href="screen.css" type="text/css" media="screen"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div id="page">
|
11
|
+
<div id="content">
|
12
|
+
<div id="header">
|
13
|
+
<h1>Component generators</h1>
|
14
|
+
<p><a href="/">Home</a> | <a href="rdoc/">RDOC</a> | <a href="http://ducktyper.com">Blog</a></p>
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class="section">
|
18
|
+
<h1></h1>
|
19
|
+
|
20
|
+
<pre>
|
21
|
+
Description:
|
22
|
+
|
23
|
+
Creates an actionscript class at a src path.
|
24
|
+
|
25
|
+
Usage:
|
26
|
+
|
27
|
+
./script/generate class com.foo.Bar [path/to/src (optional)]
|
28
|
+
</pre>
|
29
|
+
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
|
33
|
+
<div id="footer"> </div>
|
34
|
+
</div>
|
35
|
+
|
36
|
+
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
|
37
|
+
</script>
|
38
|
+
<script type="text/javascript">
|
39
|
+
_uacct = "UA-1286493-4";
|
40
|
+
urchinTracker();
|
41
|
+
</script>
|
42
|
+
</body>
|
43
|
+
</html>
|
@@ -0,0 +1 @@
|
|
1
|
+
scp * gabe@rubyforge.org:/var/www/gforge-projects/airake/
|
data/html/index.html
ADDED
@@ -0,0 +1,130 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
6
|
+
<title>Airake - Rake tasks for Adobe AIR</title>
|
7
|
+
<link rel="stylesheet" href="screen.css" type="text/css" media="screen"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div id="page">
|
11
|
+
<div id="content">
|
12
|
+
<div id="header">
|
13
|
+
<h1>Airake</h1>
|
14
|
+
<h2>Rake tasks and generators for Adobe AIR apps.</h2>
|
15
|
+
<p><a href="http://rubyforge.org/projects/airake/">RubyForge project</a> |
|
16
|
+
<a href="resources.html">Resources</a> | <a href="rdoc/">RDOC</a> |
|
17
|
+
<a href="http://groups.google.com/group/airake">Group</a> |
|
18
|
+
<a href="http://ducktyper.com">Blog</a>
|
19
|
+
</p><p><strong>View:</strong>
|
20
|
+
<a href="/tasks.html">Tasks</a> | <a href="/app_generators.html">App generators</a> |
|
21
|
+
<a href="/component_generators.html">Component generators</a>
|
22
|
+
</p>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
<div class="section">
|
26
|
+
<h1>What you need first</h1>
|
27
|
+
<h2>If you didn't already have it</h2>
|
28
|
+
|
29
|
+
<ol>
|
30
|
+
<li>
|
31
|
+
<h2>Install
|
32
|
+
<a href="http://www.ruby-lang.org/en/downloads/">ruby</a>,
|
33
|
+
<a href="http://www.rubygems.org/read/chapter/3">rubygems</a> and
|
34
|
+
<a href="http://docs.rubyrake.org/read/chapter/6">rake</a></h2>
|
35
|
+
<p>Or use the <a href="http://rubyosx.rubyforge.org/">one-click installer</a> (MacOSX)</p>
|
36
|
+
</li>
|
37
|
+
|
38
|
+
<li>
|
39
|
+
<h2>Get <a href="http://labs.adobe.com/downloads/airsdk.html">AIR SDK</a></h2>
|
40
|
+
<p>This gives you command line tools, including:
|
41
|
+
<a href="http://livedocs.adobe.com/labs/air/1/devappsflex/help.html?content=CommandLineTools_4.html">adl</a>
|
42
|
+
and <a href="http://livedocs.adobe.com/labs/air/1/devappsflex/help.html?content=SDKHelloWorld_6.html#1028523">adt</a>.
|
43
|
+
</p>
|
44
|
+
</li>
|
45
|
+
|
46
|
+
<li>
|
47
|
+
<h2>Get <a href="http://labs.adobe.com/technologies/flex/sdk/flex3sdk.html">Flex 3 Beta SDK</a></h2>
|
48
|
+
<p>This gives you command line tools, including:
|
49
|
+
<a href="http://livedocs.adobe.com/flex/201/html/compilers_123_11.html#149503">mxmlc</a> and
|
50
|
+
<a href="http://labs.adobe.com/wiki/index.php/Flex_Compiler_Shell">fcsh</a>.</p>
|
51
|
+
</li>
|
52
|
+
|
53
|
+
<li>
|
54
|
+
<h2>Install airake (for Mac):</h2>
|
55
|
+
<pre>sudo gem install airake</pre>
|
56
|
+
<p>While you're in the Terminal, include the AIR SDK and Flex SDK bin directories to your path:</p>
|
57
|
+
<pre>export PATH="/path/to/air_sdk/bin:$PATH"
|
58
|
+
export PATH="/path/to/flex_sdk_3/bin:$PATH"</pre>
|
59
|
+
</li>
|
60
|
+
|
61
|
+
<li>
|
62
|
+
<h2>Install airake (for Windows):</h2>
|
63
|
+
<pre>gem install airake</pre>
|
64
|
+
<p>Add <tt>c:\path\to\air_sdk\bin</tt> and <tt>c:\path\to\flex_sdk\bin</tt> to your Control Panel, Enviroment Variables, Path</p>
|
65
|
+
<p>Flex compiler requires a JRE (install <a href="http://www.java.com">java</a> if you don't have it)</a>
|
66
|
+
</li>
|
67
|
+
|
68
|
+
<li>
|
69
|
+
<h2>Install the <a href="http://labs.adobe.com/downloads/air.html">AIR runtime</a></h2>
|
70
|
+
</li>
|
71
|
+
|
72
|
+
</ol>
|
73
|
+
</div>
|
74
|
+
|
75
|
+
<div class="section">
|
76
|
+
<h1>Getting started</h1>
|
77
|
+
|
78
|
+
<ol>
|
79
|
+
<li>
|
80
|
+
<h2>Create your AIR project:</h2>
|
81
|
+
<pre>airake MyProject</pre>
|
82
|
+
|
83
|
+
<p>A new project is created. </p>
|
84
|
+
</li>
|
85
|
+
|
86
|
+
<li>
|
87
|
+
<h2>Run it:</h2>
|
88
|
+
<pre>rake adl</pre>
|
89
|
+
<p>For faster compiling using the Flex Compiler Shell (FCSH), start (or stop/restart) the FCSH daemon:</p>
|
90
|
+
<pre>rake fcsh:start
|
91
|
+
rake fcsh:stop
|
92
|
+
rake fcsh:restart</pre>
|
93
|
+
</li>
|
94
|
+
|
95
|
+
<li>
|
96
|
+
<h2>Test it:</h2>
|
97
|
+
<pre>rake test</pre>
|
98
|
+
<p>It uses <a href="http://code.google.com/p/as3flexunitlib/">FlexUnit</a>.</p>
|
99
|
+
</li>
|
100
|
+
|
101
|
+
<li>
|
102
|
+
<h2>Package it:</h2>
|
103
|
+
<pre>rake package</pre>
|
104
|
+
<p>Look for MyProject.air in the project bin directory.</p>
|
105
|
+
<p>If you need to create a certificate, run:</p>
|
106
|
+
<pre>rake certificate</pre>
|
107
|
+
</li>
|
108
|
+
</ol>
|
109
|
+
</div>
|
110
|
+
|
111
|
+
<div class="section">
|
112
|
+
<h1>Learn more</h1>
|
113
|
+
<p>Go to the <a href="resources.html">resources</a> page</p>
|
114
|
+
</div>
|
115
|
+
|
116
|
+
</div>
|
117
|
+
|
118
|
+
<div id="footer"><p><a href="mailto:gabrielh@gmail.com">gabrielh@gmail.com</a> | <a href="http://ducktyper.com">duck_typer</a></p>
|
119
|
+
<p>Portions of this work are derived from <a href="http://code.google.com/p/projectsprouts/">Sprouts</a>, you should check them out!</p></div>
|
120
|
+
</div>
|
121
|
+
|
122
|
+
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
|
123
|
+
</script>
|
124
|
+
<script type="text/javascript">
|
125
|
+
_uacct = "UA-1286493-4";
|
126
|
+
urchinTracker();
|
127
|
+
</script>
|
128
|
+
|
129
|
+
</body>
|
130
|
+
</html>
|
data/html/resources.html
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
6
|
+
<title>Airake - Rake tasks for Adobe AIR</title>
|
7
|
+
<link rel="stylesheet" href="screen.css" type="text/css" media="screen"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div id="page">
|
11
|
+
<div id="content">
|
12
|
+
<div id="header">
|
13
|
+
<h1>Airake</h1>
|
14
|
+
<p><a href="/">Home</a> | <a href="rdoc/">RDOC</a> | <a href="http://ducktyper.com">Blog</a></p>
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class="section">
|
18
|
+
<h1>Resources</h1>
|
19
|
+
|
20
|
+
<ul>
|
21
|
+
<li><p><a href="http://www.adobe.com/devnet/air/">Adobe AIR Development Center</a></p></li>
|
22
|
+
<li><p><a href="http://bugs.adobe.com/flex/">Flex JIRA</a></p></li>
|
23
|
+
</ul>
|
24
|
+
|
25
|
+
<h1>APIs</h1>
|
26
|
+
<ul>
|
27
|
+
<li><p><a href="http://livedocs.adobe.com/labs/flex3/langref/">Actionscript 3 Language Reference</a></p></li>
|
28
|
+
<li><p><a href="http://weblogs.macromedia.com/as_libraries/docs/corelib/">AS3 corelib API</a></p></li>
|
29
|
+
|
30
|
+
|
31
|
+
<h1>Libraries</h1>
|
32
|
+
<ul>
|
33
|
+
<li><p><a href="http://code.google.com/p/as3corelib/">as3corelib</a> (corelib)*</p></li>
|
34
|
+
<li><p><a href="http://code.google.com/p/as3flexunitlib/">as3flexunitlib</a> (flexunit)*</p></li>
|
35
|
+
<li><p><a href="http://tools.assembla.com/flexsdk/browser">Flex source</a> (some of it at least). Better yet you can find the flex source in the SDK, Flex3SDK/frameworks/projects/framework/src</p></li>
|
36
|
+
</ul>
|
37
|
+
<p>* Included with airake projects</p>
|
38
|
+
</div>
|
39
|
+
</div>
|
40
|
+
|
41
|
+
<div id="footer"> </div>
|
42
|
+
</div>
|
43
|
+
|
44
|
+
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
|
45
|
+
</script>
|
46
|
+
<script type="text/javascript">
|
47
|
+
_uacct = "UA-1286493-4";
|
48
|
+
urchinTracker();
|
49
|
+
</script>
|
50
|
+
</body>
|
51
|
+
</html>
|
data/html/screen.css
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
|
2
|
+
body {
|
3
|
+
margin: 0;
|
4
|
+
margin-bottom: 25px;
|
5
|
+
padding: 0;
|
6
|
+
background-color: #f0f0f0;
|
7
|
+
font-family: "Lucida Grande", "Bitstream Vera Sans", "Verdana";
|
8
|
+
font-size: 13px;
|
9
|
+
color: #333;
|
10
|
+
}
|
11
|
+
|
12
|
+
h1 {
|
13
|
+
font-size: 28px;
|
14
|
+
color: #000;
|
15
|
+
}
|
16
|
+
|
17
|
+
a {color: #03c}
|
18
|
+
a:hover {
|
19
|
+
background-color: #03c;
|
20
|
+
color: white;
|
21
|
+
text-decoration: none;
|
22
|
+
}
|
23
|
+
|
24
|
+
pre, tt {
|
25
|
+
padding: 8px;
|
26
|
+
font-size: 12px;
|
27
|
+
background: #000000;
|
28
|
+
color: #CCCCCC;
|
29
|
+
}
|
30
|
+
|
31
|
+
tt {
|
32
|
+
padding: 2px 4px 2px 4px;
|
33
|
+
}
|
34
|
+
|
35
|
+
#page {
|
36
|
+
background-color: #f0f0f0;
|
37
|
+
width: 750px;
|
38
|
+
margin: 0;
|
39
|
+
margin-left: auto;
|
40
|
+
margin-right: auto;
|
41
|
+
}
|
42
|
+
|
43
|
+
#content {
|
44
|
+
float: left;
|
45
|
+
background-color: white;
|
46
|
+
border: 3px solid #aaa;
|
47
|
+
border-top: none;
|
48
|
+
padding: 25px;
|
49
|
+
width: 675px;
|
50
|
+
}
|
51
|
+
|
52
|
+
#footer {
|
53
|
+
clear: both;
|
54
|
+
text-align: center;
|
55
|
+
}
|
56
|
+
|
57
|
+
|
58
|
+
#header, .section {
|
59
|
+
padding-left: 75px;
|
60
|
+
padding-right: 30px;
|
61
|
+
}
|
62
|
+
|
63
|
+
#header h1, #header h2 {margin: 0}
|
64
|
+
#header h2 {
|
65
|
+
color: #888;
|
66
|
+
font-weight: normal;
|
67
|
+
font-size: 16px;
|
68
|
+
}
|
69
|
+
|
70
|
+
.section {
|
71
|
+
border-top: 1px solid #ccc;
|
72
|
+
margin-top: 25px;
|
73
|
+
padding-top: 15px;
|
74
|
+
}
|
75
|
+
.section h1 {
|
76
|
+
margin: 0;
|
77
|
+
font-size: 20px;
|
78
|
+
}
|
79
|
+
.section h2 {
|
80
|
+
margin: 0;
|
81
|
+
font-size: 14px;
|
82
|
+
font-weight: normal;
|
83
|
+
color: #333;
|
84
|
+
}
|
85
|
+
ol, ul {
|
86
|
+
margin-left: 0;
|
87
|
+
padding-left: 0;
|
88
|
+
}
|
89
|
+
ul li { list-style: none; }
|
90
|
+
|
91
|
+
li {
|
92
|
+
font-size: 18px;
|
93
|
+
color: #888;
|
94
|
+
margin-bottom: 15px;
|
95
|
+
}
|
96
|
+
li h2 {
|
97
|
+
margin: 0;
|
98
|
+
font-weight: normal;
|
99
|
+
font-size: 18px;
|
100
|
+
color: #333;
|
101
|
+
}
|
102
|
+
li p {
|
103
|
+
color: #555;
|
104
|
+
font-size: 13px;
|
105
|
+
}
|
data/html/tasks.html
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
6
|
+
<title>Airake - Rake tasks for Adobe AIR</title>
|
7
|
+
<link rel="stylesheet" href="screen.css" type="text/css" media="screen"/>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div id="page">
|
11
|
+
<div id="content">
|
12
|
+
<div id="header">
|
13
|
+
<h1>Tasks</h1>
|
14
|
+
<p><a href="/">Home</a> | <a href="rdoc/">RDOC</a> | <a href="http://ducktyper.com">Blog</a></p>
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class="section">
|
18
|
+
<h1>AIR project tasks</h1>
|
19
|
+
|
20
|
+
<pre>
|
21
|
+
rake air:adl # Launch ADL
|
22
|
+
|
23
|
+
rake air:clean # Clean
|
24
|
+
|
25
|
+
rake air:compile # Compile
|
26
|
+
|
27
|
+
rake air:package # Package
|
28
|
+
|
29
|
+
rake air:test # Test</pre>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<div class="section">
|
33
|
+
<h1>AIR tasks</h1>
|
34
|
+
|
35
|
+
<pre>
|
36
|
+
rake air:acompc # Create component (swc)
|
37
|
+
|
38
|
+
rake air:certificate # Create certificate</pre>
|
39
|
+
</div>
|
40
|
+
|
41
|
+
<div class="section">
|
42
|
+
<h1>FCSH</h1>
|
43
|
+
|
44
|
+
<pre>
|
45
|
+
rake fcsh:restart # Restart the FCSHD process
|
46
|
+
|
47
|
+
rake fcsh:start # Start the FCSHD process (or use air:fcshd)
|
48
|
+
|
49
|
+
rake fcsh:stop # Stop the FCSHD process</pre>
|
50
|
+
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
<div id="footer"> </div>
|
55
|
+
</div>
|
56
|
+
|
57
|
+
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
|
58
|
+
</script>
|
59
|
+
<script type="text/javascript">
|
60
|
+
_uacct = "UA-1286493-4";
|
61
|
+
urchinTracker();
|
62
|
+
</script>
|
63
|
+
</body>
|
64
|
+
</html>
|
@@ -9,13 +9,14 @@ module Airake #:nodoc:
|
|
9
9
|
|
10
10
|
attr_reader :acompc_path, :acompc_extra_opts, :source_path, :include_packages, :output_path
|
11
11
|
|
12
|
-
#
|
12
|
+
# Create ACOMPC command.
|
13
13
|
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
#
|
14
|
+
# ==== Options
|
15
|
+
# +acompc_path+:: Path to acompc, defaults to 'acompc'
|
16
|
+
# +source_path+:: Path to source, defaults to 'src'
|
17
|
+
# +output_path+:: Path to output (required)
|
18
|
+
# +include_packages+:: Array of package names to include (required). Example, com.airake.utils will include all classes from Dir["com/airake/utils/**/*.as"]
|
19
|
+
# +acompc_extra_opts+:: Extra options for command line
|
19
20
|
#
|
20
21
|
def initialize(options = {})
|
21
22
|
assert_required(options, [ :output_path, :include_packages ])
|
data/lib/airake/commands/adl.rb
CHANGED
@@ -9,12 +9,13 @@ module Airake #:nodoc:
|
|
9
9
|
|
10
10
|
attr_reader :adl_path, :adl_extra_opts, :appxml_path, :base_dir
|
11
11
|
|
12
|
-
#
|
12
|
+
# Create ADL command.
|
13
13
|
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
14
|
+
# ==== Options
|
15
|
+
# +adl_path+:: Path to adl, defaults to 'adl'
|
16
|
+
# +appxml_path+:: Path to application descriptor xml (required)
|
17
|
+
# +base_dir+:: Path to base project directory (required)
|
18
|
+
# +adl_extra_opts+:: Extra options for command line
|
18
19
|
#
|
19
20
|
def initialize(options = {})
|
20
21
|
assert_required(options, [ :appxml_path, :base_dir ])
|
data/lib/airake/commands/adt.rb
CHANGED
@@ -7,33 +7,35 @@ module Airake #:nodoc:
|
|
7
7
|
# http://livedocs.adobe.com/labs/air/1/devappsflex/help.html?content=CommandLineTools_5.html
|
8
8
|
class Adt < Base
|
9
9
|
|
10
|
-
attr_reader :adt_path, :
|
10
|
+
attr_reader :adt_path, :cert, :adt_extra_opts, :assets, :air_path, :appxml_path, :swf_path, :base_dir
|
11
11
|
|
12
|
-
#
|
12
|
+
# Create ADT command.
|
13
13
|
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
#
|
19
|
-
#
|
20
|
-
#
|
21
|
-
#
|
14
|
+
# ==== Options
|
15
|
+
# +adt_path+:: Path to adt, defaults to 'adt'
|
16
|
+
# +base_dir+:: Root directory for project (required). Directories like src, lib and bin should be visible from here.
|
17
|
+
# +air_path+:: Path to generated AIR file (required)
|
18
|
+
# +appxml_path+:: Path to application xml descriptor (required)
|
19
|
+
# +swf_path+:: Path to compiled SWF file (required)
|
20
|
+
# +assets+:: Path to any assets. Should a string with asset files and directories separated by spaces: 'assets/icons/foo.png assets/images'
|
21
|
+
# +cert+:: Path to certificate
|
22
|
+
# +adt_extra_opts+:: Extra options for command line
|
22
23
|
#
|
23
|
-
def initialize(options = {})
|
24
|
-
assert_required(options, [ :air_path, :appxml_path, :swf_path ])
|
24
|
+
def initialize(options = {})
|
25
25
|
with_options(options, { :adt_path => "adt" })
|
26
26
|
end
|
27
27
|
|
28
|
-
#
|
28
|
+
# Package
|
29
29
|
def package
|
30
|
+
assert_not_blank(:air_path, :appxml_path, :swf_path)
|
31
|
+
|
30
32
|
command = []
|
31
33
|
command << @adt_path
|
32
34
|
command << "-package"
|
33
35
|
command << @adt_extra_opts
|
34
36
|
|
35
|
-
unless @
|
36
|
-
command << "-keystore #{
|
37
|
+
unless @cert.blank?
|
38
|
+
command << "-keystore #{@cert}"
|
37
39
|
command << "-storetype pkcs12"
|
38
40
|
end
|
39
41
|
command << escape(relative_path(@air_path, @base_dir))
|
@@ -43,21 +45,21 @@ module Airake #:nodoc:
|
|
43
45
|
process(command)
|
44
46
|
end
|
45
47
|
|
46
|
-
#
|
48
|
+
# ADT certificate command
|
47
49
|
#
|
48
|
-
#
|
49
|
-
#
|
50
|
-
#
|
51
|
-
#
|
52
|
-
#
|
53
|
-
#
|
54
|
-
#
|
55
|
-
#
|
50
|
+
# * cn: Common name
|
51
|
+
# * pfx_file: Output certificate path
|
52
|
+
# * key_type: 1024-RSA, 2048-RSA
|
53
|
+
# * password: Password
|
54
|
+
# * optionals:
|
55
|
+
# * * org: Organization. 'Adobe'
|
56
|
+
# * * org_unit: Orginizational unit. 'AIR Team'
|
57
|
+
# * * country: Country. 'USA'
|
56
58
|
#
|
57
59
|
# Example result:
|
58
60
|
# adt -certificate -cn ADigitalID 1024-RSA SigningCert.pfx 39#wnetx3tl
|
59
61
|
#
|
60
|
-
def
|
62
|
+
def certificate(common_name, pfx_file, key_type, password, optionals = {})
|
61
63
|
command = []
|
62
64
|
command << @adt_path
|
63
65
|
command << "-certificate"
|