stickler 2.0.0a → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.bnsignore +14 -0
- data/.gitignore +17 -0
- data/HISTORY.asciidoc +20 -0
- data/README.asciidoc +126 -0
- data/Rakefile +22 -3
- data/bin/stickler +50 -0
- data/bin/stickler-passenger-config +112 -0
- data/bin/stickler-server +109 -0
- data/examples/config.ru +6 -3
- data/examples/gemcutter_repo.ru +2 -0
- data/examples/index_repo.ru +2 -0
- data/examples/local_repo.ru +6 -3
- data/examples/mirror_repo.ru +2 -0
- data/examples/not_found.ru +2 -0
- data/lib/stickler.rb +12 -0
- data/lib/stickler/client.rb +47 -0
- data/lib/stickler/client/config.rb +35 -0
- data/lib/stickler/client/config_file.rb +58 -0
- data/lib/stickler/client/mirror.rb +61 -0
- data/lib/stickler/client/push.rb +50 -0
- data/lib/stickler/client/yank.rb +51 -0
- data/lib/stickler/logable.rb +35 -0
- data/lib/stickler/middleware/gemcutter.rb +5 -0
- data/lib/stickler/middleware/helpers.rb +32 -0
- data/lib/stickler/middleware/index.rb +30 -4
- data/lib/stickler/middleware/mirror.rb +8 -3
- data/lib/stickler/middleware/not_found.rb +4 -2
- data/lib/stickler/paths.rb +53 -0
- data/lib/stickler/repository/local.rb +12 -12
- data/lib/stickler/repository/mirror.rb +13 -6
- data/lib/stickler/repository/null.rb +1 -0
- data/lib/stickler/repository/remote.rb +10 -4
- data/lib/stickler/repository/rubygems_authenticator.rb +32 -0
- data/lib/stickler/server.rb +34 -0
- data/lib/stickler/server/public/css/blueprint/LICENSE +22 -0
- data/lib/stickler/server/public/css/blueprint/ie.css +35 -0
- data/lib/stickler/server/public/css/blueprint/screen.css +266 -0
- data/lib/stickler/server/public/css/style.css +19 -0
- data/lib/stickler/server/public/images/apple-touch-icon.png +0 -0
- data/lib/stickler/server/public/images/favicon.ico +0 -0
- data/lib/stickler/server/public/js/modernizr-1.5.min.js +28 -0
- data/lib/stickler/server/views/index.erb +35 -0
- data/lib/stickler/server/views/layout.erb +42 -0
- data/lib/stickler/spec_lite.rb +16 -6
- data/lib/stickler/version.rb +1 -1
- data/man/asciidoc.conf +25 -0
- data/man/stickler-passenger-config.asciidoc +74 -0
- data/man/stickler-server.asciidoc +87 -0
- data/man/stickler.asciidoc +148 -0
- data/spec/middleware/common_gem_server_helpers.rb +4 -2
- data/spec/middleware/index_spec.rb +3 -3
- data/spec/middleware/legacy_gem_server_behavior.rb +0 -2
- data/spec/middleware/local_spec.rb +3 -3
- data/spec/middleware/modern_gem_server_behavior.rb +2 -0
- data/spec/paths_spec.rb +13 -0
- data/spec/spec_lite_spec.rb +14 -0
- data/tasks/man.rake +19 -0
- metadata +183 -56
- data/HISTORY.rdoc +0 -12
- data/README.rdoc +0 -88
- data/lib/stickler/web.rb +0 -19
- data/stickler.gemspec +0 -60
- data/views/index.erb +0 -19
- data/views/layout.erb +0 -39
data/lib/stickler/web.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
require 'stickler/middleware/compression'
|
2
|
-
require 'stickler/middleware/gemcutter'
|
3
|
-
require 'stickler/middleware/mirror'
|
4
|
-
require 'stickler/middleware/index'
|
5
|
-
require 'rack/cascade'
|
6
|
-
|
7
|
-
module Stickler
|
8
|
-
class Web < ::Sinatra::Base
|
9
|
-
|
10
|
-
disable :sessions
|
11
|
-
enable :logging, :dump_errors, :clean_trace
|
12
|
-
|
13
|
-
use Stickler::Middleware::Compression
|
14
|
-
use Stickler::Middleware::Gemcutter, :serve_indexes => false
|
15
|
-
use Stickler::Middleware::Mirror, :serve_indexes => false
|
16
|
-
use Stickler::Middleware::Index, :serve_indexes => true
|
17
|
-
run Stickler::Middleware::NotFound
|
18
|
-
end
|
19
|
-
end
|
data/stickler.gemspec
DELETED
@@ -1,60 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
|
3
|
-
Gem::Specification.new do |s|
|
4
|
-
s.name = %q{stickler}
|
5
|
-
s.version = "0.0.1"
|
6
|
-
|
7
|
-
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
|
-
s.authors = ["Jeremy Hinegardner"]
|
9
|
-
s.date = %q{2010-06-29}
|
10
|
-
s.description = %q{Stickler is a tool to organize and maintain an internal gem repository.
|
11
|
-
|
12
|
-
At times it is useful to have complete control over the availability of the gems
|
13
|
-
for you testing, staging and production environments. In these cases you
|
14
|
-
probably do not want to accidentally type 'gem update' and get a new untested
|
15
|
-
version of a gem installed on your machines. This is where Stickler helps.
|
16
|
-
|
17
|
-
Configure stickler with the the names and versions of the gems you require for
|
18
|
-
your deployment and it will organize and setup everything that is necessary for
|
19
|
-
a standard web server to function as your internal gem distribution server.}
|
20
|
-
s.email = %q{jeremy@hinegardner.org}
|
21
|
-
s.extra_rdoc_files = ["HISTORY.rdoc", "README.rdoc"]
|
22
|
-
s.files = ["HISTORY.rdoc", "LICENSE", "README.rdoc", "Rakefile", "examples/config.ru", "examples/gemcutter_repo.ru", "examples/index_repo.ru", "examples/local_repo.ru", "examples/mirror_repo.ru", "examples/not_found.ru", "lib/stickler/error.rb", "lib/stickler/middleware.rb", "lib/stickler/middleware/compression.rb", "lib/stickler/middleware/gemcutter.rb", "lib/stickler/middleware/helpers.rb", "lib/stickler/middleware/index.rb", "lib/stickler/middleware/local.rb", "lib/stickler/middleware/mirror.rb", "lib/stickler/middleware/not_found.rb", "lib/stickler/repository.rb", "lib/stickler/repository/api.rb", "lib/stickler/repository/index.rb", "lib/stickler/repository/local.rb", "lib/stickler/repository/mirror.rb", "lib/stickler/repository/null.rb", "lib/stickler/repository/remote.rb", "lib/stickler/spec_lite.rb", "lib/stickler/version.rb", "lib/stickler/web.rb", "spec/data/gems/bar-1.0.0.gem", "spec/data/gems/foo-1.0.0.gem", "spec/data/specifications/bar-1.0.0.gemspec", "spec/data/specifications/foo-1.0.0.gemspec", "spec/middleware/common_gem_server_helpers.rb", "spec/middleware/index_spec.rb", "spec/middleware/legacy_gem_server_behavior.rb", "spec/middleware/local_spec.rb", "spec/middleware/modern_gem_server_behavior.rb", "spec/middleware/not_found_spec.rb", "spec/repository/api_behavior.rb", "spec/repository/api_spec.rb", "spec/repository/index_spec.rb", "spec/repository/local_spec.rb", "spec/repository/null_spec.rb", "spec/repository/remote_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "spec/spec_lite_spec.rb", "views/index.erb", "views/layout.erb"]
|
23
|
-
s.homepage = %q{http://rubygems.org/gems/stickler}
|
24
|
-
s.rdoc_options = ["--main", "README.rdoc"]
|
25
|
-
s.require_paths = ["lib"]
|
26
|
-
s.rubyforge_project = %q{copiousfreetime}
|
27
|
-
s.rubygems_version = %q{1.3.5}
|
28
|
-
s.summary = %q{Stickler is a tool to organize and maintain an internal gem repository}
|
29
|
-
|
30
|
-
if s.respond_to? :specification_version then
|
31
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
32
|
-
s.specification_version = 3
|
33
|
-
|
34
|
-
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
35
|
-
s.add_runtime_dependency(%q<sinatra>, ["~> 1.0.0"])
|
36
|
-
s.add_runtime_dependency(%q<addressable>, ["~> 2.1.2"])
|
37
|
-
s.add_runtime_dependency(%q<resourceful>, ["~> 1.0.1"])
|
38
|
-
s.add_development_dependency(%q<bones>, ["~> 3.4.6"])
|
39
|
-
s.add_development_dependency(%q<rack-test>, ["~> 0.5.4"])
|
40
|
-
s.add_development_dependency(%q<bones-extras>, ["~> 1.2.4"])
|
41
|
-
s.add_development_dependency(%q<bones>, [">= 3.4.6"])
|
42
|
-
else
|
43
|
-
s.add_dependency(%q<sinatra>, ["~> 1.0.0"])
|
44
|
-
s.add_dependency(%q<addressable>, ["~> 2.1.2"])
|
45
|
-
s.add_dependency(%q<resourceful>, ["~> 1.0.1"])
|
46
|
-
s.add_dependency(%q<bones>, ["~> 3.4.6"])
|
47
|
-
s.add_dependency(%q<rack-test>, ["~> 0.5.4"])
|
48
|
-
s.add_dependency(%q<bones-extras>, ["~> 1.2.4"])
|
49
|
-
s.add_dependency(%q<bones>, [">= 3.4.6"])
|
50
|
-
end
|
51
|
-
else
|
52
|
-
s.add_dependency(%q<sinatra>, ["~> 1.0.0"])
|
53
|
-
s.add_dependency(%q<addressable>, ["~> 2.1.2"])
|
54
|
-
s.add_dependency(%q<resourceful>, ["~> 1.0.1"])
|
55
|
-
s.add_dependency(%q<bones>, ["~> 3.4.6"])
|
56
|
-
s.add_dependency(%q<rack-test>, ["~> 0.5.4"])
|
57
|
-
s.add_dependency(%q<bones-extras>, ["~> 1.2.4"])
|
58
|
-
s.add_dependency(%q<bones>, [">= 3.4.6"])
|
59
|
-
end
|
60
|
-
end
|
data/views/index.erb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
<div id="header">
|
2
|
-
<h1>Available Gems</h1>
|
3
|
-
</div>
|
4
|
-
<table class="gem" summary="This table is a list of the available gems.">
|
5
|
-
<thead>
|
6
|
-
<tr>
|
7
|
-
<th>Gem name</th>
|
8
|
-
<th>Version</th>
|
9
|
-
</tr>
|
10
|
-
</thead>
|
11
|
-
<tfoot></tfoot>
|
12
|
-
<tbody>
|
13
|
-
<% @repo.specs.sort_by { |spec| spec.full_name }.each_with_index do |spec, idx| %>
|
14
|
-
<tr class="<%= %w[ red grey ][idx % 2]%>">
|
15
|
-
<td><a href="/gems/<%= spec.file_name %>"><%= spec.name %></a></td>
|
16
|
-
<td align="right"><%= spec.version %></td>
|
17
|
-
</tr>
|
18
|
-
<% end %>
|
19
|
-
</table>
|
data/views/layout.erb
DELETED
@@ -1,39 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<!DOCTYPE html html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
3
|
-
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
4
|
-
|
5
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
6
|
-
<head>
|
7
|
-
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
|
-
<style type="text/css" media="screen">
|
9
|
-
* { margin: 0; padding: 0; border: 0; outline: 0; }
|
10
|
-
div.clear { clear: both; }
|
11
|
-
body { background: #eeeeee; margin: 0; padding: 0; }
|
12
|
-
#wrap { width: 1000px; margin: 0 auto; padding: 30px 50px 20px 50px;
|
13
|
-
background: #fff; border-left: 1px solid #DDD;
|
14
|
-
border-right: 1px solid #DDD; }
|
15
|
-
#header { margin: 0 auto 25px auto; }
|
16
|
-
h1 { margin: 0; font-size: 36px; color: #981919; text-align: center; }
|
17
|
-
h2 { margin: 0; font-size: 22px; color: #333333; }
|
18
|
-
table.gem { width: 980px; text-align: left; font-size: 12px;
|
19
|
-
color: #666666; padding: 0; border-spacing: 0;
|
20
|
-
border: 1px solid #EEEEEE; border-bottom: 0;
|
21
|
-
border-left: 0;
|
22
|
-
clear:both;}
|
23
|
-
table.gem tr th { padding: 2px 10px; font-weight: bold;
|
24
|
-
font-size: 22px; background: #f7f7f7; text-align: center;
|
25
|
-
border-left: 1px solid #eeeeee;
|
26
|
-
border-bottom: 1px solid #eeeeee; }
|
27
|
-
table.gem tr td { padding: 2px 20px 2px 10px;
|
28
|
-
border-bottom: 1px solid #eeeeee;
|
29
|
-
border-left: 1px solid #eeeeee; }
|
30
|
-
|
31
|
-
</style>
|
32
|
-
<title>Stickler</title>
|
33
|
-
</head>
|
34
|
-
<body>
|
35
|
-
<div id="wrap">
|
36
|
-
<%= yield %>
|
37
|
-
</div>
|
38
|
-
</body>
|
39
|
-
</html>
|