prelaunch 0.0.5

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 (44) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +5 -0
  3. data/Gemfile +4 -0
  4. data/Gemfile.lock +86 -0
  5. data/README.md +66 -0
  6. data/Rakefile +28 -0
  7. data/app/controllers/prelaunch/prelaunch_controller.rb +31 -0
  8. data/app/views/prelaunch/index.html +28 -0
  9. data/lib/generators/prelaunch/prelaunch_generator.rb +18 -0
  10. data/lib/generators/prelaunch/view_generator.rb +13 -0
  11. data/lib/generators/templates/prelaunch.rb +20 -0
  12. data/lib/prelaunch/constraint.rb +7 -0
  13. data/lib/prelaunch/engine.rb +9 -0
  14. data/lib/prelaunch/helpers.rb +23 -0
  15. data/lib/prelaunch/routing.rb +15 -0
  16. data/lib/prelaunch/version.rb +3 -0
  17. data/lib/prelaunch.rb +36 -0
  18. data/prelaunch.gemspec +22 -0
  19. data/test/controllers/prelaunch/prelaunch_controller_test.rb +6 -0
  20. data/test/dummy/Rakefile +3 -0
  21. data/test/dummy/app/controllers/application_controller.rb +2 -0
  22. data/test/dummy/app/controllers/test_controller.rb +4 -0
  23. data/test/dummy/app/helpers/application_helper.rb +2 -0
  24. data/test/dummy/app/views/layouts/application.html.erb +13 -0
  25. data/test/dummy/app/views/test/index.html.erb +1 -0
  26. data/test/dummy/bin/rails +3 -0
  27. data/test/dummy/config/application.rb +12 -0
  28. data/test/dummy/config/boot.rb +4 -0
  29. data/test/dummy/config/environment.rb +3 -0
  30. data/test/dummy/config/environments/development.rb +11 -0
  31. data/test/dummy/config/environments/test.rb +16 -0
  32. data/test/dummy/config/initializers/filter_parameter_logging.rb +1 -0
  33. data/test/dummy/config/initializers/prelaunch.rb +7 -0
  34. data/test/dummy/config/initializers/secret_token.rb +1 -0
  35. data/test/dummy/config/initializers/session_store.rb +1 -0
  36. data/test/dummy/config/routes.rb +7 -0
  37. data/test/dummy/config.ru +3 -0
  38. data/test/dummy/public/404.html +10 -0
  39. data/test/dummy/public/422.html +10 -0
  40. data/test/dummy/public/500.html +10 -0
  41. data/test/dummy/public/favicon.ico +0 -0
  42. data/test/prelaunch_test.rb +7 -0
  43. data/test/test_helper.rb +12 -0
  44. metadata +132 -0
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ OTI3ZjY3NzNlNzM2MzUwOGYxMjZlMTlmNDE4MjlmNzdlZTY0NGIwZg==
5
+ data.tar.gz: !binary |-
6
+ MTNhZTAxNGU5MzMzMmI1MzcxZWYzYTNkNzk2ZTg1NDU2MmI1NDhjNA==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ NDkxMTQ4ZGI1NGE5NGQyNWIwNGZmNDZlZjBjY2RjOTEzZWZiNjcxZDMwY2Nm
10
+ ZTllZWUxNGE2YTU0NTJmZjA1ZDYxNTU5NzZjNWM3ZjBjZmMzM2E0ZDgwMzVh
11
+ Nzk1NTZiMTE4MzhkZmUxY2Y4OTljYTA1MzFkNDE4M2U0NjQyOGM=
12
+ data.tar.gz: !binary |-
13
+ M2NiNjJiYTliNTMyYjUyZGFkZmE2MGE4MzJhNzUzNjkzZWIxNGZhMzEwYTFh
14
+ OTFiODU0YjExOWNhY2UwYzVkNzkzNjg3M2VmNTU3OTgwMDdhZWQ4MWJlZTEx
15
+ MGQ5ZTQ3YWYwMmJiZTdmYzkyMmYxZWE0MzllNWU4MDBjZWM1YjU=
data/.gitignore ADDED
@@ -0,0 +1,5 @@
1
+ .bundle/
2
+ log/
3
+ pkg/
4
+ test/dummy/log/
5
+ test/dummy/tmp/
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://rubygems.org"
2
+
3
+ gemspec
4
+
data/Gemfile.lock ADDED
@@ -0,0 +1,86 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ prelaunch (0.0.4)
5
+ rails (>= 3.2.6, < 5)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ actionmailer (4.0.0)
11
+ actionpack (= 4.0.0)
12
+ mail (~> 2.5.3)
13
+ actionpack (4.0.0)
14
+ activesupport (= 4.0.0)
15
+ builder (~> 3.1.0)
16
+ erubis (~> 2.7.0)
17
+ rack (~> 1.5.2)
18
+ rack-test (~> 0.6.2)
19
+ activemodel (4.0.0)
20
+ activesupport (= 4.0.0)
21
+ builder (~> 3.1.0)
22
+ activerecord (4.0.0)
23
+ activemodel (= 4.0.0)
24
+ activerecord-deprecated_finders (~> 1.0.2)
25
+ activesupport (= 4.0.0)
26
+ arel (~> 4.0.0)
27
+ activerecord-deprecated_finders (1.0.3)
28
+ activesupport (4.0.0)
29
+ i18n (~> 0.6, >= 0.6.4)
30
+ minitest (~> 4.2)
31
+ multi_json (~> 1.3)
32
+ thread_safe (~> 0.1)
33
+ tzinfo (~> 0.3.37)
34
+ arel (4.0.0)
35
+ atomic (1.1.13)
36
+ builder (3.1.4)
37
+ erubis (2.7.0)
38
+ hike (1.2.3)
39
+ i18n (0.6.5)
40
+ mail (2.5.4)
41
+ mime-types (~> 1.16)
42
+ treetop (~> 1.4.8)
43
+ mime-types (1.24)
44
+ minitest (4.7.5)
45
+ multi_json (1.7.9)
46
+ polyglot (0.3.3)
47
+ rack (1.5.2)
48
+ rack-test (0.6.2)
49
+ rack (>= 1.0)
50
+ rails (4.0.0)
51
+ actionmailer (= 4.0.0)
52
+ actionpack (= 4.0.0)
53
+ activerecord (= 4.0.0)
54
+ activesupport (= 4.0.0)
55
+ bundler (>= 1.3.0, < 2.0)
56
+ railties (= 4.0.0)
57
+ sprockets-rails (~> 2.0.0)
58
+ railties (4.0.0)
59
+ actionpack (= 4.0.0)
60
+ activesupport (= 4.0.0)
61
+ rake (>= 0.8.7)
62
+ thor (>= 0.18.1, < 2.0)
63
+ rake (10.1.0)
64
+ sprockets (2.10.0)
65
+ hike (~> 1.2)
66
+ multi_json (~> 1.0)
67
+ rack (~> 1.0)
68
+ tilt (~> 1.1, != 1.3.0)
69
+ sprockets-rails (2.0.0)
70
+ actionpack (>= 3.0)
71
+ activesupport (>= 3.0)
72
+ sprockets (~> 2.8)
73
+ thor (0.18.1)
74
+ thread_safe (0.1.2)
75
+ atomic
76
+ tilt (1.4.1)
77
+ treetop (1.4.15)
78
+ polyglot
79
+ polyglot (>= 0.3.1)
80
+ tzinfo (0.3.37)
81
+
82
+ PLATFORMS
83
+ ruby
84
+
85
+ DEPENDENCIES
86
+ prelaunch!
data/README.md ADDED
@@ -0,0 +1,66 @@
1
+ ## Prelaunch
2
+
3
+ [![Gem Version](https://badge.fury.io/rb/prelaunch.png)](http://badge.fury.io/rb/prelaunch)
4
+
5
+ Prelaunch allows you to restrict access to the Rails app while it is still in development. It supports Rails 3.2.6 and onwards (4 included).
6
+
7
+ ### Installation
8
+ Add **Prelaunch** to your Gemfile with:
9
+
10
+ ```ruby
11
+ gem 'prelaunch'
12
+ ```
13
+
14
+ Run the bundle command to install it.
15
+
16
+ After you install prelaunch, generate routes and initializer with:
17
+
18
+ ```console
19
+ rails generate prelaunch
20
+ ```
21
+
22
+ Take a second to ensure that `prelaunch_routes` is at the top of your routes table, like this:
23
+
24
+ ```ruby
25
+ Example::Application.routes.draw do
26
+ prelaunch_routes
27
+
28
+ ...
29
+ ```
30
+
31
+ You can also take a look at `config/initializers/prelaunch.rb` to see configuration options.
32
+
33
+ If you want to customize placeholder page just do:
34
+
35
+ ```console
36
+ rails generate prelaunch:view
37
+ ```
38
+
39
+ and edit `app/views/prelaunch/index.html`.
40
+
41
+
42
+ ### Usage
43
+
44
+ Immediately after installing gem your app in production environment for every route will show:
45
+
46
+ ```html
47
+ Under construction
48
+ ```
49
+
50
+ To view contents of your app navigate to:
51
+
52
+ [http://localhost:3000/prelaunch/letmein](http://localhost:3000/prelaunch/letmein)
53
+
54
+ After doing so you can continue to use your app normally.
55
+
56
+ You can configure path prefix `prelaunch` and token `letmein` in `config/initializers/prelaunch.rb`. You can also pass `Array`, `Proc` or `lambda` instead of `String` to `config.token` for more complex token verification.
57
+
58
+ To give user ability to end the session and logout add this piece of code to some view:
59
+
60
+ ```ruby
61
+ <%= prelaunch_logout_link 'Logout' %>
62
+ ```
63
+
64
+ ### License
65
+
66
+ Prelaunch is released under the [MIT License](http://www.opensource.org/licenses/MIT).
data/Rakefile ADDED
@@ -0,0 +1,28 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+
7
+ require 'rdoc/task'
8
+
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'Prelaunch'
12
+ rdoc.options << '--line-numbers'
13
+ rdoc.rdoc_files.include('README.rdoc')
14
+ rdoc.rdoc_files.include('lib/**/*.rb')
15
+ end
16
+
17
+ Bundler::GemHelper.install_tasks
18
+
19
+ require 'rake/testtask'
20
+
21
+ Rake::TestTask.new(:test) do |t|
22
+ t.libs << 'lib'
23
+ t.libs << 'test'
24
+ t.pattern = 'test/**/*_test.rb'
25
+ t.verbose = false
26
+ end
27
+
28
+ task default: :test
@@ -0,0 +1,31 @@
1
+ module Prelaunch
2
+ class PrelaunchController < ActionController::Base
3
+ def index
4
+ if Prelaunch.redirect_url
5
+ redirect_to Prelaunch.redirect_url
6
+ else
7
+ render template: 'prelaunch/index'
8
+ end
9
+ end
10
+
11
+ def redirect
12
+ redirect_to '/'
13
+ end
14
+
15
+ def verify
16
+ if Prelaunch::valid? params[:token]
17
+ session[:prelaunch_token] = params[:token]
18
+ end
19
+
20
+ redirect_to '/'
21
+ end
22
+
23
+ def logout
24
+ if Prelaunch::valid? session[:prelaunch_token]
25
+ session[:prelaunch_token] = nil
26
+ end
27
+
28
+ redirect_to '/'
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,28 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <title>Under construction</title>
6
+
7
+ <style type="text/css">
8
+ .text {
9
+ color: #444444;
10
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
11
+ font-size : 30px;
12
+ line-height: 40px;
13
+ text-align: center;
14
+ display: block;
15
+ width: 280px;
16
+ position: absolute;
17
+ left: 50%;
18
+ top: 50%;
19
+ margin-left: -140px;
20
+ margin-top: -20px;
21
+ }
22
+ </style>
23
+ </head>
24
+
25
+ <body>
26
+ <span class='text'>Under construction</span>
27
+ </body>
28
+ </html>
@@ -0,0 +1,18 @@
1
+ module Prelaunch
2
+ module Generators
3
+ class PrelaunchGenerator < ::Rails::Generators::Base
4
+ source_root File.expand_path('../../templates', __FILE__)
5
+
6
+ namespace 'prelaunch'
7
+ desc "Description:\n Generate route and initializer for prelaunch"
8
+
9
+ def copy_initializer
10
+ template 'prelaunch.rb', 'config/initializers/prelaunch.rb'
11
+ end
12
+
13
+ def create_route
14
+ route 'prelaunch_routes'
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,13 @@
1
+ module Prelaunch
2
+ module Generators
3
+ class ViewGenerator < ::Rails::Generators::Base
4
+ source_root File.expand_path('../../../../app/views', __FILE__)
5
+
6
+ desc "Description:\n Copy Prelaunch view for customization"
7
+
8
+ def copy_views
9
+ copy_file 'prelaunch/index.html', 'app/views/prelaunch/index.html'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,20 @@
1
+ # Use this hook to configure prelaunch
2
+ Prelaunch.setup do |config|
3
+ # The prefix for prelaunch routes. Prelaunch creates two routes:
4
+ # * '<path>/:token' for token verification.
5
+ # * '<path>/logout' for erasing current session.
6
+ config.path = 'prelaunch'
7
+
8
+ # The authentication token to use. This could either be a:
9
+ # * String to compare to. You can put it in the ENV so you can change token without redeploy.
10
+ # * Proc which will be called every time authentication of the token is needed.
11
+ config.token = 'letmein'
12
+
13
+ # Environments prelaunch will add routes to and render helper in.
14
+ # For all other environments it would look nonexistent.
15
+ config.environments = ['production']
16
+
17
+ # You can optionally redirect users to other path when they query the homepage
18
+ # or try to authenticate with invalid token instead of rendering prelaunch page.
19
+ # config.redirect_url = 'http://example.com'
20
+ end
@@ -0,0 +1,7 @@
1
+ module Prelaunch
2
+ class Constraint
3
+ def matches? request
4
+ not Prelaunch::valid? request.session[:prelaunch_token]
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ module Prelaunch
2
+ class Engine < ::Rails::Engine
3
+ isolate_namespace Prelaunch
4
+
5
+ initializer 'prelaunch.view_helpers' do
6
+ ActionView::Base.send :include, Helpers
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,23 @@
1
+ module Prelaunch
2
+ module Helpers
3
+ def prelaunch_logout_link name = nil, html_options = nil, &block
4
+ return unless Prelaunch::valid_env?
5
+
6
+ url = "#{strip_slashes(Prelaunch.path)}/logout"
7
+
8
+ html_options = name if block_given?
9
+ html_options ||= {}
10
+ html_options[:rel] = 'nofollow'
11
+ html_options['href'] ||= url
12
+
13
+ content_tag(:a, name || url, html_options, &block)
14
+ end
15
+
16
+ private
17
+ def strip_slashes string
18
+ result = string.gsub(/^(\/|\\)+/, '').gsub(/(\/|\\)+$/, '')
19
+
20
+ result.length > 0 ? '/' + result : result
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,15 @@
1
+ module ActionDispatch::Routing
2
+ class Mapper
3
+ def prelaunch_routes
4
+ return unless Prelaunch.valid_env?
5
+
6
+ contraint = Prelaunch::Constraint.new
7
+
8
+ get "#{Prelaunch.path}/logout", to: 'prelaunch/prelaunch#logout', as: ''
9
+ get "#{Prelaunch.path}/:token", to: 'prelaunch/prelaunch#verify', constraints: contraint
10
+
11
+ get '*path', to: 'prelaunch/prelaunch#redirect', constraints: contraint
12
+ get '/' , to: 'prelaunch/prelaunch#index' , constraints: contraint
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,3 @@
1
+ module Prelaunch
2
+ VERSION = '0.0.5'
3
+ end
data/lib/prelaunch.rb ADDED
@@ -0,0 +1,36 @@
1
+ require 'prelaunch/routing'
2
+ require 'prelaunch/constraint'
3
+ require 'prelaunch/engine'
4
+ require 'prelaunch/helpers'
5
+
6
+ module Prelaunch
7
+ mattr_accessor :path
8
+ @@path = 'prelaunch'
9
+
10
+ mattr_accessor :token
11
+ @@token = 'letmein'
12
+
13
+ mattr_accessor :redirect_url
14
+ @@redirect_url = nil
15
+
16
+ mattr_accessor :environments
17
+ @@environments = ['production']
18
+
19
+ def self.valid? token
20
+ if @@token.is_a? Proc
21
+ @@token.call token
22
+ elsif @@token.is_a? Array
23
+ @@token.include? token
24
+ else
25
+ @@token == token
26
+ end
27
+ end
28
+
29
+ def self.valid_env?
30
+ @@environments.include? Rails.env
31
+ end
32
+
33
+ def self.setup
34
+ yield self
35
+ end
36
+ end
data/prelaunch.gemspec ADDED
@@ -0,0 +1,22 @@
1
+ $:.push File.expand_path('../lib', __FILE__)
2
+
3
+ require 'prelaunch/version'
4
+
5
+ Gem::Specification.new do |s|
6
+ s.platform = Gem::Platform::RUBY
7
+ s.name = 'prelaunch'
8
+ s.version = Prelaunch::VERSION
9
+ s.license = 'MIT'
10
+ s.authors = ['Alexey Chernetsov']
11
+ s.email = ['alexey.chernetsov@forbinde.net']
12
+ s.summary = 'Development environment access restriction Rails plugin.'
13
+ s.description = 'Prelaunch allows you to restrict access to the Rails app while it is still in development.'
14
+
15
+ s.required_ruby_version = '>= 1.9.3'
16
+ s.required_rubygems_version = '>= 1.8.11'
17
+
18
+ s.files = `git ls-files`.split("\n")
19
+ s.test_files = `git ls-files -- test/*`.split("\n")
20
+
21
+ s.add_dependency 'rails', '>= 3.2.6', '< 5'
22
+ end
@@ -0,0 +1,6 @@
1
+ require 'test_helper'
2
+
3
+ module Prelaunch
4
+ class PrelaunchControllerTest < ActionController::TestCase
5
+ end
6
+ end
@@ -0,0 +1,3 @@
1
+ require File.expand_path('../config/application', __FILE__)
2
+
3
+ Dummy::Application.load_tasks
@@ -0,0 +1,2 @@
1
+ class ApplicationController < ActionController::Base
2
+ end
@@ -0,0 +1,4 @@
1
+ class TestController < ApplicationController
2
+ def index
3
+ end
4
+ end
@@ -0,0 +1,2 @@
1
+ module ApplicationHelper
2
+ end
@@ -0,0 +1,13 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <title>Dummy</title>
6
+ </head>
7
+
8
+ <body>
9
+ This should only be seen if token is valid.
10
+
11
+ <%= yield %>
12
+ </body>
13
+ </html>
@@ -0,0 +1 @@
1
+ And also this. <%= prelaunch_logout_link 'Logout from Prelaunch' %>
@@ -0,0 +1,3 @@
1
+ APP_PATH = File.expand_path('../../config/application', __FILE__)
2
+ require_relative '../config/boot'
3
+ require 'rails/commands'
@@ -0,0 +1,12 @@
1
+ require File.expand_path('../boot', __FILE__)
2
+
3
+ require "action_controller/railtie"
4
+
5
+ Bundler.require(*Rails.groups)
6
+
7
+ module Dummy
8
+ class Application < Rails::Application
9
+
10
+ end
11
+ end
12
+
@@ -0,0 +1,4 @@
1
+ ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../../Gemfile', __FILE__)
2
+
3
+ require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE'])
4
+ $LOAD_PATH.unshift File.expand_path('../../../../lib', __FILE__)
@@ -0,0 +1,3 @@
1
+ require File.expand_path('../application', __FILE__)
2
+
3
+ Dummy::Application.initialize!
@@ -0,0 +1,11 @@
1
+ Dummy::Application.configure do
2
+ config.cache_classes = false
3
+ config.eager_load = false
4
+
5
+ config.consider_all_requests_local = true
6
+ config.action_controller.perform_caching = false
7
+
8
+ config.active_support.deprecation = :log
9
+
10
+ config.assets.debug = true
11
+ end
@@ -0,0 +1,16 @@
1
+ Dummy::Application.configure do
2
+ config.cache_classes = true
3
+ config.eager_load = false
4
+
5
+ config.consider_all_requests_local = true
6
+
7
+ config.serve_static_assets = true
8
+ config.static_cache_control = "public, max-age=3600"
9
+
10
+ config.action_controller.allow_forgery_protection = false
11
+ config.action_controller.perform_caching = false
12
+
13
+ config.action_dispatch.show_exceptions = false
14
+
15
+ config.active_support.deprecation = :stderr
16
+ end
@@ -0,0 +1 @@
1
+ Rails.application.config.filter_parameters += [:password]
@@ -0,0 +1,7 @@
1
+ Prelaunch.setup do |config|
2
+ config.path = 'prelaunch'
3
+ config.token = 'letmein'
4
+
5
+ config.environments = ['development']
6
+ config.redirect_url = nil
7
+ end
@@ -0,0 +1 @@
1
+ Dummy::Application.config.secret_key_base = '5effa3a4e08517426cde2ee5dfd4a1590ef5432c600b4216ac07f4927cb025366fb5cc92f3d87a433b22522ce13d75a011a0f9363c34396e3cc34c36508c1780'
@@ -0,0 +1 @@
1
+ Dummy::Application.config.session_store :cookie_store, key: '_dummy_session'
@@ -0,0 +1,7 @@
1
+ Dummy::Application.routes.draw do
2
+ prelaunch_routes
3
+
4
+ root to: 'test#index'
5
+
6
+ get '/test', to: 'test#index'
7
+ end
@@ -0,0 +1,3 @@
1
+ require ::File.expand_path('../config/environment', __FILE__)
2
+
3
+ run Rails.application
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page requested doesn't exist (404)</title>
5
+ </head>
6
+
7
+ <body>
8
+ <h1>404: The page requested doesn't exist.</h1>
9
+ </body>
10
+ </html>
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change requested was rejected (422)</title>
5
+ </head>
6
+
7
+ <body>
8
+ <h1>422: The change requested was rejected.</h1>
9
+ </body>
10
+ </html>
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Internal Server Error (500)</title>
5
+ </head>
6
+
7
+ <body>
8
+ <h1>500: Internal Server Error.</h1>
9
+ </body>
10
+ </html>
File without changes
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class PrelaunchTest < ActiveSupport::TestCase
4
+ test 'that prelaunch module exists' do
5
+ assert_kind_of Module, Prelaunch
6
+ end
7
+ end
@@ -0,0 +1,12 @@
1
+ ENV['RAILS_ENV'] = 'test'
2
+
3
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
4
+ require 'rails/test_help'
5
+
6
+ Rails.backtrace_cleaner.remove_silencers!
7
+
8
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
9
+
10
+ if ActiveSupport::TestCase.method_defined?(:fixture_path=)
11
+ ActiveSupport::TestCase.fixture_path = File.expand_path('../fixtures', __FILE__)
12
+ end
metadata ADDED
@@ -0,0 +1,132 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: prelaunch
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.5
5
+ platform: ruby
6
+ authors:
7
+ - Alexey Chernetsov
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-08-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.2.6
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '5'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 3.2.6
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '5'
33
+ description: Prelaunch allows you to restrict access to the Rails app while it is
34
+ still in development.
35
+ email:
36
+ - alexey.chernetsov@forbinde.net
37
+ executables: []
38
+ extensions: []
39
+ extra_rdoc_files: []
40
+ files:
41
+ - .gitignore
42
+ - Gemfile
43
+ - Gemfile.lock
44
+ - README.md
45
+ - Rakefile
46
+ - app/controllers/prelaunch/prelaunch_controller.rb
47
+ - app/views/prelaunch/index.html
48
+ - lib/generators/prelaunch/prelaunch_generator.rb
49
+ - lib/generators/prelaunch/view_generator.rb
50
+ - lib/generators/templates/prelaunch.rb
51
+ - lib/prelaunch.rb
52
+ - lib/prelaunch/constraint.rb
53
+ - lib/prelaunch/engine.rb
54
+ - lib/prelaunch/helpers.rb
55
+ - lib/prelaunch/routing.rb
56
+ - lib/prelaunch/version.rb
57
+ - prelaunch.gemspec
58
+ - test/controllers/prelaunch/prelaunch_controller_test.rb
59
+ - test/dummy/Rakefile
60
+ - test/dummy/app/controllers/application_controller.rb
61
+ - test/dummy/app/controllers/test_controller.rb
62
+ - test/dummy/app/helpers/application_helper.rb
63
+ - test/dummy/app/views/layouts/application.html.erb
64
+ - test/dummy/app/views/test/index.html.erb
65
+ - test/dummy/bin/rails
66
+ - test/dummy/config.ru
67
+ - test/dummy/config/application.rb
68
+ - test/dummy/config/boot.rb
69
+ - test/dummy/config/environment.rb
70
+ - test/dummy/config/environments/development.rb
71
+ - test/dummy/config/environments/test.rb
72
+ - test/dummy/config/initializers/filter_parameter_logging.rb
73
+ - test/dummy/config/initializers/prelaunch.rb
74
+ - test/dummy/config/initializers/secret_token.rb
75
+ - test/dummy/config/initializers/session_store.rb
76
+ - test/dummy/config/routes.rb
77
+ - test/dummy/public/404.html
78
+ - test/dummy/public/422.html
79
+ - test/dummy/public/500.html
80
+ - test/dummy/public/favicon.ico
81
+ - test/prelaunch_test.rb
82
+ - test/test_helper.rb
83
+ homepage:
84
+ licenses:
85
+ - MIT
86
+ metadata: {}
87
+ post_install_message:
88
+ rdoc_options: []
89
+ require_paths:
90
+ - lib
91
+ required_ruby_version: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ! '>='
94
+ - !ruby/object:Gem::Version
95
+ version: 1.9.3
96
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: 1.8.11
101
+ requirements: []
102
+ rubyforge_project:
103
+ rubygems_version: 2.0.7
104
+ signing_key:
105
+ specification_version: 4
106
+ summary: Development environment access restriction Rails plugin.
107
+ test_files:
108
+ - test/controllers/prelaunch/prelaunch_controller_test.rb
109
+ - test/dummy/Rakefile
110
+ - test/dummy/app/controllers/application_controller.rb
111
+ - test/dummy/app/controllers/test_controller.rb
112
+ - test/dummy/app/helpers/application_helper.rb
113
+ - test/dummy/app/views/layouts/application.html.erb
114
+ - test/dummy/app/views/test/index.html.erb
115
+ - test/dummy/bin/rails
116
+ - test/dummy/config.ru
117
+ - test/dummy/config/application.rb
118
+ - test/dummy/config/boot.rb
119
+ - test/dummy/config/environment.rb
120
+ - test/dummy/config/environments/development.rb
121
+ - test/dummy/config/environments/test.rb
122
+ - test/dummy/config/initializers/filter_parameter_logging.rb
123
+ - test/dummy/config/initializers/prelaunch.rb
124
+ - test/dummy/config/initializers/secret_token.rb
125
+ - test/dummy/config/initializers/session_store.rb
126
+ - test/dummy/config/routes.rb
127
+ - test/dummy/public/404.html
128
+ - test/dummy/public/422.html
129
+ - test/dummy/public/500.html
130
+ - test/dummy/public/favicon.ico
131
+ - test/prelaunch_test.rb
132
+ - test/test_helper.rb