diff --git a/.travis.yml b/.travis.yml index 1dc8dd66c..39839b347 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,7 +18,9 @@ cache: - bundler script: - bundle exec rake db:migrate --trace - - bundle exec rake + - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then bundle exec rspec spec; fi + - if [ "$TRAVIS_PULL_REQUEST" != "false" ] && [ "$TRAVIS_PULL_REQUEST_SLUG" = "coderdojo-japan/coderdojo.jp" ]; then bundle exec rspec spec; fi + - if [ "$TRAVIS_PULL_REQUEST" != "false" ] && [ "$TRAVIS_PULL_REQUEST_SLUG" != "coderdojo-japan/coderdojo.jp" ]; then bundle exec rspec spec --tag ~@scrivito; fi env: global: - TZ='Asia/Tokyo' diff --git a/app/controllers/cms_controller.rb b/app/controllers/cms_controller.rb index e0a560007..b30b7363e 100644 --- a/app/controllers/cms_controller.rb +++ b/app/controllers/cms_controller.rb @@ -1,9 +1,3 @@ class CmsController < ApplicationController include Scrivito::ControllerActions - - title ||= ENV['SCRIVITO_WORKSPACE'] || 'DEFAULT_WORKSPACE' - Scrivito::Workspace.create(title: title) unless Scrivito::Workspace.find_by_title(title) - Scrivito::Workspace.use(title) - - LoginPage.create(title: 'ログイン') end diff --git a/app/controllers/docs_controller.rb b/app/controllers/docs_controller.rb index f8b046d68..b4604fe6e 100644 --- a/app/controllers/docs_controller.rb +++ b/app/controllers/docs_controller.rb @@ -7,7 +7,7 @@ def index def show @doc = Document.new(params[:id]) - redirect_to scrivito_path(Obj.root) if not @doc.exists? + redirect_to root_url unless @doc.exists? @content = Kramdown::Document.new(@doc.content, input: 'GFM').to_html @url = request.url end diff --git a/config/initializers/scrivito.rb b/config/initializers/scrivito.rb index e105eb4fb..282399047 100644 --- a/config/initializers/scrivito.rb +++ b/config/initializers/scrivito.rb @@ -23,3 +23,11 @@ end end end + +if ENV.key?('SCRIVITO_TENANT') && ENV.key?('SCRIVITO_API_KEY') + title ||= ENV['SCRIVITO_WORKSPACE'] || 'DEFAULT_WORKSPACE' + Scrivito::Workspace.create(title: title) unless Scrivito::Workspace.find_by_title(title) + Scrivito::Workspace.use(title) + + LoginPage.create(title: 'ログイン') +end diff --git a/spec/controllers/blog_post_page_controller_spec.rb b/spec/controllers/blog_post_page_controller_spec.rb index 01a2db71b..cc3b887c1 100644 --- a/spec/controllers/blog_post_page_controller_spec.rb +++ b/spec/controllers/blog_post_page_controller_spec.rb @@ -1,6 +1,6 @@ require 'rails_helper' -RSpec.describe BlogPostPageController, type: :controller do +RSpec.describe BlogPostPageController, type: :controller, scrivito: true do render_views describe "GET Blog Post Page" do diff --git a/spec/controllers/docs_controller_spec.rb b/spec/controllers/docs_controller_spec.rb index d7421514c..0b1d53c7b 100644 --- a/spec/controllers/docs_controller_spec.rb +++ b/spec/controllers/docs_controller_spec.rb @@ -18,7 +18,7 @@ it 'when invalid filename' do get :show, params: { id: '../not_found' } - expect(response).to redirect_to controller.scrivito_path(Obj.root) + expect(response).to redirect_to controller.root_url expect(response.status).to eq 302 end end diff --git a/spec/controllers/sessions_controller_spec.rb b/spec/controllers/sessions_controller_spec.rb index 7f083909d..6b13e886a 100644 --- a/spec/controllers/sessions_controller_spec.rb +++ b/spec/controllers/sessions_controller_spec.rb @@ -1,6 +1,6 @@ require 'rails_helper' -RSpec.describe SessionsController, type: :controller do +RSpec.describe SessionsController, type: :controller, scrivito: true do describe "GET #create" do it "param match" do get :create, params: { email: ENV['SCRIVITO_EMAIL'], diff --git a/spec/controllers/sotechsha_overview_page_controller_spec.rb b/spec/controllers/sotechsha_overview_page_controller_spec.rb index 91436f82c..6157e5d8b 100644 --- a/spec/controllers/sotechsha_overview_page_controller_spec.rb +++ b/spec/controllers/sotechsha_overview_page_controller_spec.rb @@ -1,6 +1,6 @@ require 'rails_helper' -RSpec.describe SotechshaOverviewPageController, type: :controller do +RSpec.describe SotechshaOverviewPageController, type: :controller, scrivito: true do render_views describe "GET #index" do diff --git a/spec/features/news_spec.rb b/spec/features/news_spec.rb index 4cd5319bd..367d2c576 100644 --- a/spec/features/news_spec.rb +++ b/spec/features/news_spec.rb @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- require 'rails_helper' -RSpec.feature "News", type: :feature do +RSpec.feature "News", type: :feature, scrivito: true do describe "GET /news/2016/12/12/new-backend" do scenario "Title should be formatted" do visit "/news/2016/12/12/new-backend" diff --git a/spec/features/sotechsha_spec.rb b/spec/features/sotechsha_spec.rb index 212641292..a8e1887cb 100644 --- a/spec/features/sotechsha_spec.rb +++ b/spec/features/sotechsha_spec.rb @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- require 'rails_helper' -RSpec.feature "Sotechsha", type: :feature, retry: 3 do +RSpec.feature "Sotechsha", type: :feature, scrivito: true, retry: 3 do describe "GET /sotechsha/num" do scenario "Quizzes should be permalink" do diff --git a/spec/features/users_spec.rb b/spec/features/users_spec.rb index 6aca92c61..55725e145 100644 --- a/spec/features/users_spec.rb +++ b/spec/features/users_spec.rb @@ -2,7 +2,7 @@ require 'rails_helper' include Scrivito::ControllerHelper -RSpec.feature "Users", type: :feature do +RSpec.feature "Users", type: :feature, scrivito: true do subject { page } describe "log in" do diff --git a/spec/requests/news_pages_spec.rb b/spec/requests/news_pages_spec.rb index 233a54bbd..feaead20f 100644 --- a/spec/requests/news_pages_spec.rb +++ b/spec/requests/news_pages_spec.rb @@ -1,6 +1,6 @@ require 'rails_helper' -RSpec.describe "NewsPages", type: :request do +RSpec.describe "NewsPages", type: :request, scrivito: true do describe "GET /news/2016/12/12/new-backend" do it "Blog post should be rendered" do get '/news/2016/12/12/new-backend' diff --git a/spec/requests/sotechshas_spec.rb b/spec/requests/sotechshas_spec.rb index 04b3e58b3..a9eb397af 100644 --- a/spec/requests/sotechshas_spec.rb +++ b/spec/requests/sotechshas_spec.rb @@ -1,6 +1,6 @@ require 'rails_helper' -RSpec.describe "Sotechshas", type: :request do +RSpec.describe "Sotechshas", type: :request, scrivito: true do describe "Quizzes should be permalink" do it "Quizzes should be permalink" do