strelka-admin 0.0.1.pre7

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 (61) hide show
  1. data.tar.gz.sig +0 -0
  2. data/History.rdoc +4 -0
  3. data/Manifest.txt +58 -0
  4. data/README.rdoc +65 -0
  5. data/Rakefile +42 -0
  6. data/data/strelka-admin/app.conf +7 -0
  7. data/data/strelka-admin/apps/config-service +72 -0
  8. data/data/strelka-admin/apps/strelka-admin +102 -0
  9. data/data/strelka-admin/apps/strelka-setup +32 -0
  10. data/data/strelka-admin/host-config.rb +44 -0
  11. data/data/strelka-admin/static/css/bootstrap-responsive.css +581 -0
  12. data/data/strelka-admin/static/css/bootstrap-responsive.min.css +4 -0
  13. data/data/strelka-admin/static/css/bootstrap.css +3496 -0
  14. data/data/strelka-admin/static/css/bootstrap.min.css +632 -0
  15. data/data/strelka-admin/static/css/master.css +337 -0
  16. data/data/strelka-admin/static/css/reset.css +112 -0
  17. data/data/strelka-admin/static/fonts/IstokWeb-Bold.ttf +0 -0
  18. data/data/strelka-admin/static/fonts/IstokWeb-BoldItalic.ttf +0 -0
  19. data/data/strelka-admin/static/fonts/IstokWeb-Italic.ttf +0 -0
  20. data/data/strelka-admin/static/fonts/IstokWeb-Regular.ttf +0 -0
  21. data/data/strelka-admin/static/fonts/OFL.txt +94 -0
  22. data/data/strelka-admin/static/images/21d1-16.png +0 -0
  23. data/data/strelka-admin/static/images/21d1.png +0 -0
  24. data/data/strelka-admin/static/images/glyphicons-halflings-white.png +0 -0
  25. data/data/strelka-admin/static/images/glyphicons-halflings.png +0 -0
  26. data/data/strelka-admin/static/images/icons/blank.png +0 -0
  27. data/data/strelka-admin/static/images/icons/cross-button.png +0 -0
  28. data/data/strelka-admin/static/images/icons/tick-button.png +0 -0
  29. data/data/strelka-admin/static/images/icons/tick-circle-frame.png +0 -0
  30. data/data/strelka-admin/static/images/icons/tick-circle.png +0 -0
  31. data/data/strelka-admin/static/images/icons/tick-octagon-frame.png +0 -0
  32. data/data/strelka-admin/static/images/icons/tick-octagon.png +0 -0
  33. data/data/strelka-admin/static/images/icons/tick-red.png +0 -0
  34. data/data/strelka-admin/static/images/icons/tick-shield.png +0 -0
  35. data/data/strelka-admin/static/images/icons/tick-small-circle.png +0 -0
  36. data/data/strelka-admin/static/images/icons/tick-small-red.png +0 -0
  37. data/data/strelka-admin/static/images/icons/tick-small-white.png +0 -0
  38. data/data/strelka-admin/static/images/icons/tick-small.png +0 -0
  39. data/data/strelka-admin/static/images/icons/tick-white.png +0 -0
  40. data/data/strelka-admin/static/images/icons/tick.png +0 -0
  41. data/data/strelka-admin/static/images/noise.jpg +0 -0
  42. data/data/strelka-admin/static/images/noise.png +0 -0
  43. data/data/strelka-admin/static/js/admin/app.js +60 -0
  44. data/data/strelka-admin/static/js/vendor/backbone.js +1290 -0
  45. data/data/strelka-admin/static/js/vendor/bootstrap.js +1720 -0
  46. data/data/strelka-admin/static/js/vendor/bootstrap.min.js +1 -0
  47. data/data/strelka-admin/static/js/vendor/jquery-1.7.1.js +9266 -0
  48. data/data/strelka-admin/static/js/vendor/jquery.jeditable.mini.js +38 -0
  49. data/data/strelka-admin/static/js/vendor/jquery.tmpl.min.js +10 -0
  50. data/data/strelka-admin/static/js/vendor/jquery.tmplPlus.min.js +11 -0
  51. data/data/strelka-admin/static/js/vendor/jquery.tools.min.js +20 -0
  52. data/data/strelka-admin/static/js/vendor/json2.js +487 -0
  53. data/data/strelka-admin/static/js/vendor/underscore.js +999 -0
  54. data/data/strelka-admin/templates/admin/console.tmpl +80 -0
  55. data/data/strelka-admin/templates/admin/host.tmpl +75 -0
  56. data/data/strelka-admin/templates/admin/message.tmpl +14 -0
  57. data/data/strelka-admin/templates/admin/server.tmpl +75 -0
  58. data/data/strelka-admin/templates/layout.tmpl +85 -0
  59. data/lib/strelka/admin.rb +63 -0
  60. metadata +210 -0
  61. metadata.gz.sig +0 -0
@@ -0,0 +1,80 @@
1
+ <?import request ?>
2
+ <?publish title ?>Admin Console<?end publish ?>
3
+
4
+ <section id="servers">
5
+ <header>
6
+ <h1>Servers</h1>
7
+ </header>
8
+
9
+ <table>
10
+ <caption>
11
+ <p class="instructions">Double-click to edit a server.</p>
12
+ </caption>
13
+
14
+ <colgroup class="attributes">
15
+ <col class="id" />
16
+ <col class="uuid" />
17
+ <col class="name" />
18
+ <col class="default-host" />
19
+ <col class="bind-addr" />
20
+ <col class="ssl-enabled" />
21
+ </colgroup>
22
+ <colgroup class="controls"><col /></colgroup>
23
+
24
+ <thead>
25
+ <tr>
26
+ <th>ID</th>
27
+ <th>UUID</th>
28
+ <th>Name</th>
29
+ <th>Default Host</th>
30
+ <th>Address</th>
31
+ <th>Port</th>
32
+ <th>SSL?</th>
33
+ <th class="controls">&nbsp;</th>
34
+ </tr>
35
+ </thead>
36
+ <tbody class="data">
37
+
38
+ <script id="server-template" type="text/x-jquery-tmpl">
39
+ <tr class="server">
40
+ <%= if ( uri ) { %>
41
+ <td data-binding="id"><a href="<%= uri %>"><%- id %></a></td>
42
+ <td class="editable" data-binding="uuid"><a href="<%= uri %>"><%- uuid %></a></td>
43
+ <% } else { %>
44
+ <td data-binding="id">&nbsp;</td>
45
+ <td class="editable" data-binding="uuid"><%- uuid %></td>
46
+ <% }
47
+ <td class="editable" data-binding="name"><%- name %></td>
48
+ <td class="editable" data-binding="default_host">${default_host}</td>
49
+ <td class="editable" data-binding="bind_addr">${bind_addr}</td>
50
+ <td class="editable" data-binding="port">${port}</td>
51
+ <td class="toggle icon {{if use_ssl}} enabled{{/if}}" data-binding="use_ssl">
52
+ <span class="target"><img
53
+ src="/images/icons/tick-white.png" width="16" height="16" alt="" /></span>
54
+ </td>
55
+ <td class="controls">
56
+ <button class="save"><img src="/images/icons/tick-button.png" width="16" height="16"
57
+ title="Save Changes" alt="Save" /></button>
58
+ <button class="cancel"><img src="/images/icons/cross-button.png" width="16" height="16"
59
+ title="Discard Changes" alt="Cancel" /></button>
60
+ </td>
61
+ </tr>
62
+ </script>
63
+
64
+ </tbody>
65
+
66
+ <tbody class="actions">
67
+ <tr>
68
+ <td colspan="7">
69
+ <nav>
70
+ <button class="create">Add a Server</button>
71
+ </nav>
72
+ </td>
73
+ <td class="controls">&nbsp;</td>
74
+ </tr>
75
+ </tbody>
76
+
77
+ </table>
78
+
79
+ </section>
80
+
@@ -0,0 +1,75 @@
1
+ <!-- $Id$ -->
2
+ <?publish title ?>Admin Console<?end publish ?>
3
+ <?publish breadcrumbs ?>
4
+ <ol>
5
+ <li><a href="[?call request.pattern ?]">Console</a></li>
6
+ <li><a href="[?call request.pattern ?]server/[?call host.server.uuid
7
+ ?]"><?escape host.server.uuid ?></a></li>
8
+ <li><?escape host.name ?></li>
9
+ </ol>
10
+ <?end publish ?>
11
+
12
+ <section id="host">
13
+ <header>
14
+ <hgroup>
15
+ <h1>Host: <?escape host.name ?> <?if host.name != matching ?>
16
+ (<?escape host.matching ?>)<?end if ?></h1>
17
+ </hgroup>
18
+ </header>
19
+
20
+ <section id="routes">
21
+
22
+ <header>
23
+ <h1>Routes</h1>
24
+ </header>
25
+
26
+ <?if host.routes.empty? ?>
27
+ <p>No routes configured.</p>
28
+ <?else?>
29
+ <table>
30
+ <thead>
31
+ <tr>
32
+ <th>Path</th>
33
+ <th>Reversed?</th>
34
+ <th>Target</th>
35
+ </tr>
36
+ </thead>
37
+ <tbody>
38
+ <?for route in host.routes.sort_by {|r| r.path.length } ?>
39
+ <tr class="[?call route.target_type ?]">
40
+ <td class="path"><?escape route.path ?></td>
41
+ <td class="reversed"><?if route.reversed.nonzero? ?>•<?end if ?></td>
42
+ <td class="target">
43
+
44
+ <?if route.target_type == 'dir' ?>
45
+ <span class="base"><?escape route.target.base ?></span><span
46
+ class="index-file"><?escape route.target.index_file ?></span>
47
+ <span class="default-ctype">(<?escape route.target.default_ctype ?>)</span>
48
+ <?elsif route.target_type == 'handler' ?>
49
+ <span class="send-ident"><?escape route.target.send_ident ?></span>
50
+ <span class="send-spec"><?escape route.target.send_spec ?></span>
51
+ &#x21D4;
52
+ <span class="recv-spec"><?escape route.target.recv_spec ?></span>
53
+ <?unless route.target.recv_ident.empty? ?><span
54
+ class="recv-ident"><?escape route.target.recv_ident ?></span><?end unless ?>
55
+ <?elsif route.target_type == 'proxy' ?>
56
+ (proxy)
57
+ <?else ?>
58
+ (dunno)
59
+ <?end if ?>
60
+
61
+ </td>
62
+ </tr>
63
+ <?end for ?>
64
+ </tbody>
65
+ </table>
66
+ <?end if ?>
67
+ </section>
68
+
69
+ </section>
70
+
71
+ <!-- #<Mongrel2::Config::Route @values={:id=>1, :path=>"/", :reversed=>0, :host_id=>1, :target_id=>1, :target_type=>"handler"}>
72
+
73
+ #<Mongrel2::Config::Handler @values={:id=>2, :send_spec=>"tcp://127.0.0.1:19995", :send_ident=>"hello-world", :recv_spec=>"tcp://127.0.0.1:19994", :recv_ident=>"", :raw_payload=>0, :protocol=>"json"}>
74
+ #<Mongrel2::Config::Directory @values={:id=>1, :base=>"static/css/", :index_file=>"base.css", :default_ctype=>"text/css", :cache_ttl=>0}>
75
+ -->
@@ -0,0 +1,14 @@
1
+ <section>
2
+ <?if heading ?>
3
+ <?publish title ?><?attr heading ?><?end publish ?>
4
+ <header>
5
+ <h1><?attr heading ?></h1>
6
+ </header>
7
+ <?else?>
8
+ <?publish title ?>Message<?end publish ?>
9
+ <?end if ?>
10
+
11
+ <p><?attr message ?></p>
12
+
13
+ </section>
14
+
@@ -0,0 +1,75 @@
1
+ <!-- $Id$ -->
2
+ <?publish title ?>Admin Console<?end publish ?>
3
+ <?publish breadcrumbs ?>
4
+ <ol>
5
+ <li><a href="[?call request.pattern ?]">Console</a></li>
6
+ <li><?escape server.uuid ?></li>
7
+ </ol>
8
+ <?end publish ?>
9
+
10
+ <section id="server">
11
+ <header>
12
+ <hgroup>
13
+ <h1><?escape server.name ?></h1>
14
+ </hgroup>
15
+ </header>
16
+
17
+ <table class="horizontal">
18
+ <tbody>
19
+ <tr class="uuid"><th>UUID</th><td><?escape server.uuid ?></td></tr>
20
+ <tr class="default-host"><th>Default Host</th><td><?escape server.default_host ?></td></tr>
21
+ <tr class="bind-address"><th>Bind Address</th><td><?escape server.bind_addr ?></td></tr>
22
+ <tr class="port"><th>Port</th><td><?escape server.port ?></td></tr>
23
+ <tr class="chroot"><th>Chroot</th><td><?escape server.chroot ?></td></tr>
24
+ <tr class="pid-file"><th>PID File</th><td><?escape server.pid_file ?></td></tr>
25
+ <tr class="use-ssl"><th>SSL?</th><td><?if server.use_ssl.nonzero? ?>•<?end if ?></td></tr>
26
+ </tbody>
27
+ </table>
28
+
29
+ <section class="log-viewer">
30
+ <header>
31
+ <h2>Logs</h2>
32
+ </header>
33
+
34
+ <div id="access-log">Will read: <?escape server.access_log ?></div>
35
+ <div id="error-log">Will read: <?escape server.error_log ?></div>
36
+ </section>
37
+
38
+ <section id="hosts">
39
+ <header>
40
+ <h1>Hosts</h1>
41
+ </header>
42
+
43
+ <nav class="actions">
44
+ <button>Add a Host</button>
45
+ </nav>
46
+
47
+ <?if server.hosts.empty? ?>
48
+ <p>No hosts configured.</p>
49
+ <?else?>
50
+ <table>
51
+ <thead>
52
+ <tr>
53
+ <th>Name</th>
54
+ <th>Matching</th>
55
+ <th>Maintenance Mode?</th>
56
+ </tr>
57
+ </thead>
58
+ <tbody>
59
+ <?for host in server.hosts ?>
60
+ <tr class="host">
61
+ <td class="name"><a href="[?call request.route
62
+ ?]/host/[?uriencode host.id ?]"><?call host.name ?></a></td>
63
+ <td class="matching"><?call host.matching ?></td>
64
+ <td class="maintenance-mode"><?if
65
+ server.maintenance.nonzero? ?>•<?end if ?></td>
66
+ </tr>
67
+ <?end for ?>
68
+ </tbody>
69
+ </table>
70
+ <?end if ?>
71
+ </section>
72
+
73
+ </section>
74
+
75
+
@@ -0,0 +1,85 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+
8
+ <meta name="description" content="The Strelka Admin Panel">
9
+ <meta name="author" content="Michael Granger">
10
+
11
+ <title>Strelka: <?subscribe title ?></title>
12
+
13
+ <link rel="shortcut icon" type="image/png" href="/images/21d1-16.png" />
14
+ <link rel="stylesheet" href="/css/master.css" type="text/css" media="screen"
15
+ title="no title" charset="utf-8" />
16
+
17
+ <link href="/css/bootstrap.css" rel="stylesheet" type="text/css" charset="utf-8" />
18
+ <style type="text/css">
19
+ body {
20
+ padding-top: 60px;
21
+ padding-bottom: 40px;
22
+ }
23
+ .sidebar-nav {
24
+ padding: 9px 0;
25
+ }
26
+ </style>
27
+ <link href="/css/bootstrap-responsive.css" rel="stylesheet" type="text/css" charset="utf-8" />
28
+
29
+ <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
30
+ <!--[if lt IE 9]>
31
+ <script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
32
+ <![endif]-->
33
+
34
+ <script src="/js/vendor/json.js" type="text/javascript" charset="utf-8" defer="defer"></script>
35
+ <script src="/js/vendor/jquery-1.7.1.js" type="text/javascript" charset="utf-8" defer="defer"></script>
36
+ <script src="/js/vendor/underscore.js" type="text/javascript" charset="utf-8" defer="defer"></script>
37
+ <script src="/js/vendor/backbone.js" type="text/javascript" charset="utf-8" defer="defer"></script>
38
+ <script src="/js/vendor/bootstrap.js" type="text/javascript" charset="utf-8"></script>
39
+ <script src="/js/admin/app.js" type="text/javascript" charset="utf-8" defer="defer"></script>
40
+
41
+ </head>
42
+ <body>
43
+ <nav id="global-navbar" class="navbar navbar-fixed-top">
44
+ <div class="navbar-inner">
45
+ <div class="container-fluid">
46
+ <h1><a class="brand" href="#">Стрелке</a></h1>
47
+ <div class="nav-collapse">
48
+ <ul class="nav">
49
+ <li class="active"><a href="#">Overview</a></li>
50
+ <li><a href="#about">Config</a></li>
51
+ <li><a href="#contact">Cluster</a></li>
52
+ </ul>
53
+ <p class="navbar-text pull-right">Logged in as <a href="#">username</a></p>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </nav>
58
+
59
+ <div class="container-fluid">
60
+ <div class="row-fluid">
61
+ <header id="herobar" class="span12">
62
+ <h2>Servers</h2>
63
+ </header>
64
+ </div>
65
+
66
+ <div class="row-fluid">
67
+ <section id="content" class="span12">
68
+ <?attr body ?>
69
+ </section>
70
+ </div>
71
+
72
+ <hr>
73
+
74
+ <footer>
75
+ <p>
76
+ <span class="vcs-id">$Id$</span>
77
+ <span class="copyright">Copyright © 2011, Michael Granger</span>
78
+ </p>
79
+ </footer>
80
+ </div>
81
+
82
+
83
+ </body>
84
+ </html>
85
+
@@ -0,0 +1,63 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'strelka'
4
+
5
+ # A web adminstration front end to a Strelka+Mongrel2 webserver.
6
+ #
7
+ # == Author/s
8
+ #
9
+ # * Michael Granger <ged@FaerieMUD.org>
10
+ #
11
+ module Strelka::Admin
12
+
13
+ # Library version constant
14
+ VERSION = '0.0.1'
15
+
16
+ # Version-control revision constant
17
+ REVISION = %q$Revision: 650a62ddd8a2 $
18
+
19
+
20
+ # The data directory in the project if that exists, otherwise the gem datadir
21
+ DATADIR = if File.directory?( 'data/strelka' )
22
+ Pathname( 'data/strelka' )
23
+ elsif path = Gem.datadir('strelka')
24
+ Pathname( path )
25
+ else
26
+ raise ScriptError, "can't find the data directory!"
27
+ end
28
+
29
+ # The default path to the Mongrel2 server config database
30
+ DEFAULT_MONGREL2_DB = DATADIR + '.sqlite'
31
+
32
+ # The default path to the admin app's templates
33
+ DEFAULT_TEMPLATE_PATH = [ DATADIR + 'templates' ]
34
+
35
+ # Default admin config values
36
+ ADMIN_CONFIG_DEFAULTS = {
37
+ mongrel2: { configdb: DEFAULT_MONGREL2_DB.to_s },
38
+ templates: {
39
+ template_paths: DEFAULT_TEMPLATE_PATH,
40
+ },
41
+ }
42
+
43
+ # Unified config for the admin application
44
+ DEFAULT_ADMIN_CONFIG = DATADIR + 'admin.conf'
45
+
46
+ # The ID of the adminserver in the mongrel2 config
47
+ ADMINSERVER_ID = 'strelka-admin'
48
+
49
+ # The ID of the Mongrel2 configuration REST service
50
+ CONFIGSERVICE_ID = 'config-service'
51
+
52
+
53
+ ### Get the library version. If +include_buildnum+ is true, the version string will
54
+ ### include the VCS rev ID.
55
+ def self::version_string( include_buildnum=false )
56
+ vstring = "%s %s" % [ self.name, VERSION ]
57
+ vstring << " (build %s)" % [ REVISION[/: ([[:xdigit:]]+)/, 1] || '0' ] if include_buildnum
58
+ return vstring
59
+ end
60
+
61
+
62
+ end # module Strelka::Admin
63
+
metadata ADDED
@@ -0,0 +1,210 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: strelka-admin
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1.pre7
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Michael Granger
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain:
12
+ - !binary |-
13
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhTZ0F3SUJB
14
+ Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREE4TVF3d0NnWURWUVFEREFOblpX
15
+ UXgKRnpBVkJnb0praWFKay9Jc1pBRVpGZ2RmWVdWeWFXVmZNUk13RVFZS0Na
16
+ SW1pWlB5TEdRQkdSWURiM0puTUI0WApEVEV3TURreE5qRTBORGcxTVZvWERU
17
+ RXhNRGt4TmpFME5EZzFNVm93UERFTU1Bb0dBMVVFQXd3RFoyVmtNUmN3CkZR
18
+ WUtDWkltaVpQeUxHUUJHUllIWDJGbGNtbGxYekVUTUJFR0NnbVNKb21UOGl4
19
+ a0FSa1dBMjl5WnpDQ0FTSXcKRFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURD
20
+ Q0FRb0NnZ0VCQUx5Ly9CRnhDMWYvY1BTbnd0SkJXb0ZpRnJpcgpoN1JpY0kr
21
+ am9xL29jVlhRcUk0VERXUHlGLzh0cWt2dCtyRDk5WDlxczJZZVI4Q1UvWWlJ
22
+ cExXclFPWVNUNzBKCnZEbjdVdmhiMm11RlZxcTYrdm9iZVRrSUxCRU82cGlv
23
+ bldERzhqU2JvM3FLbTFSaktKRHdnOXA0d05LaFB1dTgKS0d1ZS9CRmI2N0tm
24
+ bHF5QXBQbVBlYjNWZGQ5Y2xzcHpxZUZxcDdjVUJNRXBGUzZMV3h5NEdrK3F2
25
+ RkZKQkpMQgpCVUhFL0xaVkpNVnpmcEM1VXErUW1ZN0IrRkgvUXFObmRuM3RP
26
+ SGdzUGFkTFROaW11QjFzQ3VMMWE0ejNQZXBkClRlTEJFRm1FYW81RGszSy9R
27
+ OG84dmxiSUIvakJEVFV4NkRqYmd4dzc3OTA5eDZnSTlkb1U0TEQ1WE1jQ0F3
28
+ RUEKQWFNNU1EY3dDUVlEVlIwVEJBSXdBREFMQmdOVkhROEVCQU1DQkxBd0hR
29
+ WURWUjBPQkJZRUZKZW9Ha09yOWw0Qgorc2FNa1cvWlhUNFVlU3ZWTUEwR0NT
30
+ cUdTSWIzRFFFQkJRVUFBNElCQVFCRzJLT2J2WUkyZUh5eUJVSlNKM2pOCnZF
31
+ blUzZDYwem5BWGJyU2QycWIzcjFsWTFFUEREM2JjeTBNZ2dDZkdkZzNYdTU0
32
+ ejIxb3F5SWRrOHVHdFdCUEwKSElhOUVnZkZHU1VFZ3ZjSXZhWXFpTjRqVFV0
33
+ aWRmRUZ3K0x0anM4QVA5Z1dnU0lZUzZHcjM4VjBXR0ZGTnpJSAphT0Qyd211
34
+ OW9vL1JmZlc0aFMvOEd1dmZNemN3N0NRMzU1d0ZSNEtCL255emUrRXNaMVk1
35
+ RGVyQ0FhZ01WdURRClUwQkxtV0RGelBHR1dsUGVRQ3JZSENyK0FjSnorTlJu
36
+ YUhDS0xaZFNLai9SSHVUT3QrZ2JsUmV4OEZBaDhOZUEKY21saFhlNDZwWk5K
37
+ Z1dLYnhaYWg4NWpJang5NWhSOHZPSStOQU01aUg5a09xSzEzRHJ4YWNUS1Bo
38
+ cWo1UGp3RgotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
39
+ date: 2012-03-02 00:00:00.000000000 Z
40
+ dependencies:
41
+ - !ruby/object:Gem::Dependency
42
+ name: strelka
43
+ requirement: &70118098424980 !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '0.0'
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: *70118098424980
52
+ - !ruby/object:Gem::Dependency
53
+ name: hoe-mercurial
54
+ requirement: &70118098424460 !ruby/object:Gem::Requirement
55
+ none: false
56
+ requirements:
57
+ - - ~>
58
+ - !ruby/object:Gem::Version
59
+ version: 1.3.1
60
+ type: :development
61
+ prerelease: false
62
+ version_requirements: *70118098424460
63
+ - !ruby/object:Gem::Dependency
64
+ name: hoe-highline
65
+ requirement: &70118098423760 !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ~>
69
+ - !ruby/object:Gem::Version
70
+ version: 0.0.1
71
+ type: :development
72
+ prerelease: false
73
+ version_requirements: *70118098423760
74
+ - !ruby/object:Gem::Dependency
75
+ name: rspec
76
+ requirement: &70118098422960 !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ~>
80
+ - !ruby/object:Gem::Version
81
+ version: '2.8'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: *70118098422960
85
+ - !ruby/object:Gem::Dependency
86
+ name: rdoc
87
+ requirement: &70118098421940 !ruby/object:Gem::Requirement
88
+ none: false
89
+ requirements:
90
+ - - ~>
91
+ - !ruby/object:Gem::Version
92
+ version: '3.10'
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: *70118098421940
96
+ - !ruby/object:Gem::Dependency
97
+ name: hoe
98
+ requirement: &70118098420060 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: '2.14'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: *70118098420060
107
+ description: ! 'Strelka is a framework for creating and deploying Mongrel2 web applications
108
+
109
+ in Ruby, and for managing a Mongrel2 cluster.
110
+
111
+
112
+ It''s named after the Russian dog who was one of the first space travelers
113
+
114
+ to orbit the Earth and return alive.'
115
+ email:
116
+ - ged@FaerieMUD.org
117
+ executables: []
118
+ extensions: []
119
+ extra_rdoc_files:
120
+ - History.rdoc
121
+ - Manifest.txt
122
+ - README.rdoc
123
+ files:
124
+ - History.rdoc
125
+ - Manifest.txt
126
+ - README.rdoc
127
+ - Rakefile
128
+ - data/strelka-admin/app.conf
129
+ - data/strelka-admin/apps/config-service
130
+ - data/strelka-admin/apps/strelka-admin
131
+ - data/strelka-admin/apps/strelka-setup
132
+ - data/strelka-admin/host-config.rb
133
+ - data/strelka-admin/static/css/bootstrap-responsive.css
134
+ - data/strelka-admin/static/css/bootstrap-responsive.min.css
135
+ - data/strelka-admin/static/css/bootstrap.css
136
+ - data/strelka-admin/static/css/bootstrap.min.css
137
+ - data/strelka-admin/static/css/master.css
138
+ - data/strelka-admin/static/css/reset.css
139
+ - data/strelka-admin/static/fonts/IstokWeb-Bold.ttf
140
+ - data/strelka-admin/static/fonts/IstokWeb-BoldItalic.ttf
141
+ - data/strelka-admin/static/fonts/IstokWeb-Italic.ttf
142
+ - data/strelka-admin/static/fonts/IstokWeb-Regular.ttf
143
+ - data/strelka-admin/static/fonts/OFL.txt
144
+ - data/strelka-admin/static/images/21d1-16.png
145
+ - data/strelka-admin/static/images/21d1.png
146
+ - data/strelka-admin/static/images/glyphicons-halflings-white.png
147
+ - data/strelka-admin/static/images/glyphicons-halflings.png
148
+ - data/strelka-admin/static/images/icons/blank.png
149
+ - data/strelka-admin/static/images/icons/cross-button.png
150
+ - data/strelka-admin/static/images/icons/tick-button.png
151
+ - data/strelka-admin/static/images/icons/tick-circle-frame.png
152
+ - data/strelka-admin/static/images/icons/tick-circle.png
153
+ - data/strelka-admin/static/images/icons/tick-octagon-frame.png
154
+ - data/strelka-admin/static/images/icons/tick-octagon.png
155
+ - data/strelka-admin/static/images/icons/tick-red.png
156
+ - data/strelka-admin/static/images/icons/tick-shield.png
157
+ - data/strelka-admin/static/images/icons/tick-small-circle.png
158
+ - data/strelka-admin/static/images/icons/tick-small-red.png
159
+ - data/strelka-admin/static/images/icons/tick-small-white.png
160
+ - data/strelka-admin/static/images/icons/tick-small.png
161
+ - data/strelka-admin/static/images/icons/tick-white.png
162
+ - data/strelka-admin/static/images/icons/tick.png
163
+ - data/strelka-admin/static/images/noise.jpg
164
+ - data/strelka-admin/static/images/noise.png
165
+ - data/strelka-admin/static/js/admin/app.js
166
+ - data/strelka-admin/static/js/vendor/backbone.js
167
+ - data/strelka-admin/static/js/vendor/bootstrap.js
168
+ - data/strelka-admin/static/js/vendor/bootstrap.min.js
169
+ - data/strelka-admin/static/js/vendor/jquery-1.7.1.js
170
+ - data/strelka-admin/static/js/vendor/jquery.jeditable.mini.js
171
+ - data/strelka-admin/static/js/vendor/jquery.tmpl.min.js
172
+ - data/strelka-admin/static/js/vendor/jquery.tmplPlus.min.js
173
+ - data/strelka-admin/static/js/vendor/jquery.tools.min.js
174
+ - data/strelka-admin/static/js/vendor/json2.js
175
+ - data/strelka-admin/static/js/vendor/underscore.js
176
+ - data/strelka-admin/templates/admin/console.tmpl
177
+ - data/strelka-admin/templates/admin/host.tmpl
178
+ - data/strelka-admin/templates/admin/message.tmpl
179
+ - data/strelka-admin/templates/admin/server.tmpl
180
+ - data/strelka-admin/templates/layout.tmpl
181
+ - lib/strelka/admin.rb
182
+ homepage: http://deveiate.org/projects/Strelka/wiki/AdminConsole
183
+ licenses:
184
+ - BSD
185
+ post_install_message:
186
+ rdoc_options:
187
+ - --main
188
+ - README.rdoc
189
+ require_paths:
190
+ - lib
191
+ required_ruby_version: !ruby/object:Gem::Requirement
192
+ none: false
193
+ requirements:
194
+ - - ! '>='
195
+ - !ruby/object:Gem::Version
196
+ version: 1.9.3
197
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
+ none: false
199
+ requirements:
200
+ - - ! '>='
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ requirements: []
204
+ rubyforge_project: strelka-admin
205
+ rubygems_version: 1.8.16
206
+ signing_key:
207
+ specification_version: 3
208
+ summary: Strelka is a framework for creating and deploying Mongrel2 web applications
209
+ in Ruby, and for managing a Mongrel2 cluster
210
+ test_files: []