pageflow-support 0.11.3
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.
- checksums.yaml +7 -0
- data/pageflow/dummy/app.rb +30 -0
- data/pageflow/dummy/rails_template.rb +63 -0
- data/pageflow/dummy/templates/add_custom_fields.rb +7 -0
- data/pageflow/dummy/templates/create_test_hosted_file.rb +7 -0
- data/pageflow/dummy/templates/create_test_revision_component.rb +10 -0
- data/pageflow/dummy/templates/database.yml +27 -0
- data/pageflow/dummy.rb +9 -0
- data/pageflow/rails_version.rb +23 -0
- data/pageflow/support.rb +1 -0
- metadata +66 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3246fffe4faa9caa8e2ff6557d8579ee01b3cb2d
|
4
|
+
data.tar.gz: d66d49044b8bfb4e457933d33b34e0e0dd535faa
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 57b7940599d595193aefe1161f972bd420f5915a66ad133c413c1f77dea4a2338ac8345502cc505e41172ea4d324c0f517dd092f7bba61cc0ccce59c99444fd6
|
7
|
+
data.tar.gz: 3a27fa3d6677921d02c459494d020a6a325222749c7f73c3f185bfdbb8fb5d211e77984242abacc61f3a3bbb7775da4849800d4189afb1d3e3825818d4f6d4fa
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module Pageflow
|
2
|
+
module Dummy
|
3
|
+
class App
|
4
|
+
def generate
|
5
|
+
ENV['RAILS_ROOT'] = File.expand_path(directory)
|
6
|
+
|
7
|
+
if File.exists?(directory)
|
8
|
+
puts("Dummy directory #{directory} exists.")
|
9
|
+
else
|
10
|
+
system("bundle exec rails new #{directory} --template #{template_path} #{rails_new_options}")
|
11
|
+
end
|
12
|
+
|
13
|
+
require(File.join(ENV['RAILS_ROOT'], 'config', 'environment'))
|
14
|
+
end
|
15
|
+
|
16
|
+
def directory
|
17
|
+
require 'rails/version'
|
18
|
+
File.join('spec', 'dummy', "rails-#{Rails::VERSION::STRING}")
|
19
|
+
end
|
20
|
+
|
21
|
+
def template_path
|
22
|
+
File.expand_path(File.join('..', 'rails_template.rb'), __FILE__)
|
23
|
+
end
|
24
|
+
|
25
|
+
def rails_new_options
|
26
|
+
'--skip-test-unit --skip-bundle --database=mysql'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,63 @@
|
|
1
|
+
def source_paths
|
2
|
+
[File.join(File.expand_path(File.dirname(__FILE__)), 'templates')]
|
3
|
+
end
|
4
|
+
|
5
|
+
# The Gemfile is not required. We'll use the one from the project root instead.
|
6
|
+
|
7
|
+
run 'rm Gemfile'
|
8
|
+
|
9
|
+
# Setup database.yml to use credentials from env variable.
|
10
|
+
|
11
|
+
copy_file('database.yml', 'config/database.yml', force: true)
|
12
|
+
|
13
|
+
rails_version_string = Rails::VERSION::STRING.tr!('.', '_')
|
14
|
+
|
15
|
+
engine_name = ENV.fetch('PAGEFLOW_PLUGIN_ENGINE', 'pageflow')
|
16
|
+
database_prefix = "#{engine_name}-rails-#{rails_version_string}"
|
17
|
+
|
18
|
+
gsub_file('config/database.yml',
|
19
|
+
/^ database: /,
|
20
|
+
" database: #{database_prefix}-")
|
21
|
+
|
22
|
+
append_to_file('config/application.rb', <<-END)
|
23
|
+
if ENV['PAGEFLOW_DB_HOST'].present?
|
24
|
+
ActiveRecord::Tasks::DatabaseTasks::LOCAL_HOSTS << ENV['PAGEFLOW_DB_HOST']
|
25
|
+
end
|
26
|
+
END
|
27
|
+
|
28
|
+
# Remove requires to missing gems (i.e. turbolinks)
|
29
|
+
gsub_file('app/assets/javascripts/application.js', %r'//=.*', '')
|
30
|
+
|
31
|
+
# Recreate db. Ignore if it does not exist.
|
32
|
+
|
33
|
+
log :rake, 'db:drop:all'
|
34
|
+
in_root { run('rake db:drop:all 2> /dev/null', verbose: false) }
|
35
|
+
|
36
|
+
rake 'db:create:all'
|
37
|
+
|
38
|
+
# Install pageflow and the tested engine via their generators.
|
39
|
+
|
40
|
+
generate 'pageflow:install', '--force'
|
41
|
+
generate "#{ENV['PAGEFLOW_PLUGIN_ENGINE']}:install", '--force' if ENV['PAGEFLOW_PLUGIN_ENGINE']
|
42
|
+
|
43
|
+
run 'rm -r spec'
|
44
|
+
|
45
|
+
# Devise needs default_url_options for generating mails.
|
46
|
+
|
47
|
+
inject_into_file('config/environments/test.rb',
|
48
|
+
" config.action_mailer.default_url_options = {host: 'test.host'}\n",
|
49
|
+
after: "config.action_mailer.delivery_method = :test\n")
|
50
|
+
|
51
|
+
# ActiveAdmin does not look for admin definitions inside dummy apps by default.
|
52
|
+
|
53
|
+
prepend_to_file('config/initializers/pageflow.rb', <<-END)
|
54
|
+
ActiveAdmin.application.load_paths.unshift(Dir[Rails.root.join('app/admin')].first)\n
|
55
|
+
END
|
56
|
+
|
57
|
+
# Create database tables for fake hosted files and revision components.
|
58
|
+
|
59
|
+
copy_file('create_test_hosted_file.rb', 'db/migrate/00000000000000_create_test_hosted_file.rb')
|
60
|
+
copy_file('create_test_revision_component.rb', 'db/migrate/00000000000001_create_test_revision_component.rb')
|
61
|
+
copy_file('add_custom_fields.rb', 'db/migrate/99990000000000_add_custom_fields.rb')
|
62
|
+
|
63
|
+
rake 'db:migrate db:test:load', env: 'development'
|
@@ -0,0 +1,27 @@
|
|
1
|
+
development:
|
2
|
+
adapter: mysql2
|
3
|
+
encoding: utf8
|
4
|
+
database: development
|
5
|
+
pool: 5
|
6
|
+
username: <%= ENV.fetch('PAGEFLOW_DB_USER', 'root') %>
|
7
|
+
password: <%= ENV.fetch('PAGEFLOW_DB_PASSWORD', '') %>
|
8
|
+
<% if ENV['PAGEFLOW_DB_HOST'].present? %>
|
9
|
+
host: <%= ENV['PAGEFLOW_DB_HOST'] %>
|
10
|
+
port: <%= ENV.fetch('PAGEFLOW_DB_PORT', '3306') %>
|
11
|
+
<% else %>
|
12
|
+
socket: /var/run/mysqld/mysqld.sock
|
13
|
+
<% end %>
|
14
|
+
|
15
|
+
test:
|
16
|
+
adapter: mysql2
|
17
|
+
encoding: utf8
|
18
|
+
database: test
|
19
|
+
pool: 5
|
20
|
+
username: <%= ENV.fetch('PAGEFLOW_DB_USER', 'root') %>
|
21
|
+
password: <%= ENV.fetch('PAGEFLOW_DB_PASSWORD', '') %>
|
22
|
+
<% if ENV['PAGEFLOW_DB_HOST'].present? %>
|
23
|
+
host: <%= ENV['PAGEFLOW_DB_HOST'] %>
|
24
|
+
port: <%= ENV.fetch('PAGEFLOW_DB_PORT', '3306') %>
|
25
|
+
<% else %>
|
26
|
+
socket: /var/run/mysqld/mysqld.sock
|
27
|
+
<% end %>
|
data/pageflow/dummy.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
module Pageflow
|
2
|
+
module RailsVersion
|
3
|
+
extend self
|
4
|
+
|
5
|
+
RAILS_VERSION_FILE = File.expand_path('../../../../.rails_version')
|
6
|
+
|
7
|
+
def detect
|
8
|
+
from_env || from_file || '4.2.6'
|
9
|
+
end
|
10
|
+
|
11
|
+
private
|
12
|
+
|
13
|
+
def from_env
|
14
|
+
ENV['PAGEFLOW_RAILS_VERSION']
|
15
|
+
end
|
16
|
+
|
17
|
+
def from_file
|
18
|
+
if File.exists?(RAILS_VERSION_FILE)
|
19
|
+
File.read(RAILS_VERSION_FILE).chomp.strip.presence
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/pageflow/support.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require 'pageflow/dummy'
|
metadata
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: pageflow-support
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.11.3
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Codevise Solutions Ltd
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2017-04-04 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: mysql2
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
description:
|
28
|
+
email:
|
29
|
+
- info@codevise.de
|
30
|
+
executables: []
|
31
|
+
extensions: []
|
32
|
+
extra_rdoc_files: []
|
33
|
+
files:
|
34
|
+
- pageflow/dummy.rb
|
35
|
+
- pageflow/dummy/app.rb
|
36
|
+
- pageflow/dummy/rails_template.rb
|
37
|
+
- pageflow/dummy/templates/add_custom_fields.rb
|
38
|
+
- pageflow/dummy/templates/create_test_hosted_file.rb
|
39
|
+
- pageflow/dummy/templates/create_test_revision_component.rb
|
40
|
+
- pageflow/dummy/templates/database.yml
|
41
|
+
- pageflow/rails_version.rb
|
42
|
+
- pageflow/support.rb
|
43
|
+
homepage: http://www.pageflow.io
|
44
|
+
licenses: []
|
45
|
+
metadata: {}
|
46
|
+
post_install_message:
|
47
|
+
rdoc_options: []
|
48
|
+
require_paths:
|
49
|
+
- "."
|
50
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
56
|
+
requirements:
|
57
|
+
- - ">="
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '0'
|
60
|
+
requirements: []
|
61
|
+
rubyforge_project:
|
62
|
+
rubygems_version: 2.6.8
|
63
|
+
signing_key:
|
64
|
+
specification_version: 4
|
65
|
+
summary: Spec support for Pageflow extensions.
|
66
|
+
test_files: []
|