airake 0.4.1 → 0.4.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/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"
|