forked from External/greenlight
Merge pull request #4 from bigbluebutton/easy-upgrading
Make upgrading from 1.0 easier.
This commit is contained in:
commit
cbdf32e7b1
|
@ -14,7 +14,7 @@ tmp
|
||||||
/db/**/*.sqlite3-journal
|
/db/**/*.sqlite3-journal
|
||||||
/db/production
|
/db/production
|
||||||
public/assets
|
public/assets
|
||||||
public/gl
|
public/b
|
||||||
coverage/
|
coverage/
|
||||||
spec/tmp
|
spec/tmp
|
||||||
.rvmrc
|
.rvmrc
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
# Ignore static assets.
|
# Ignore static assets.
|
||||||
/public/system/**
|
/public/system/**
|
||||||
/public/assets/**
|
/public/assets/**
|
||||||
/public/gl/**
|
/public/b/**
|
||||||
|
|
||||||
# Ignore production paths.
|
# Ignore production paths.
|
||||||
/db/production
|
/db/production
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
FROM ruby:2.5
|
FROM ruby:2.5
|
||||||
|
|
||||||
# Install app dependencies.
|
# Install app dependencies.
|
||||||
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
|
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
|
||||||
|
|
||||||
# Set an environment variable for the install location.
|
# Set an environment variable for the install location.
|
||||||
ENV RAILS_ROOT /usr/src/app
|
ENV RAILS_ROOT /usr/src/app
|
||||||
|
@ -23,8 +23,8 @@ RUN bundle install --without development test --deployment --clean
|
||||||
RUN bundle exec rake assets:clean
|
RUN bundle exec rake assets:clean
|
||||||
RUN bundle exec rake assets:precompile
|
RUN bundle exec rake assets:precompile
|
||||||
|
|
||||||
# Expose port 3000.
|
# Expose port 80.
|
||||||
EXPOSE 3000
|
EXPOSE 80
|
||||||
|
|
||||||
# Start the application.
|
# Start the application.
|
||||||
CMD ["bin/start"]
|
CMD ["bin/start"]
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
# Greenlight
|
# Greenlight
|
||||||
|
|
||||||
|
Greenlight is currently on version 2.0. If you are still running Greenlight 1.0 we suggest [upgrading to 2.0](http://docs.bigbluebutton.org/install/greenlight-v2.html#upgrading-from-greenlight-10).
|
||||||
|
|
||||||
Greenlight is a simple front-end interface for your BigBlueButton server. At it's heart, Greenlight provides a minimalistic web-based application that allows users to:
|
Greenlight is a simple front-end interface for your BigBlueButton server. At it's heart, Greenlight provides a minimalistic web-based application that allows users to:
|
||||||
|
|
||||||
* Signup/Login with Twitter, Google, or through the application itself.
|
* Signup/Login with Twitter, Google, or through the application itself.
|
||||||
|
@ -10,7 +12,7 @@ Greenlight is a simple front-end interface for your BigBlueButton server. At it'
|
||||||
|
|
||||||
Interested? Try Greenlight out on our [demo server](https://demo.bigbluebutton.org/gl)!
|
Interested? Try Greenlight out on our [demo server](https://demo.bigbluebutton.org/gl)!
|
||||||
|
|
||||||
Greenlight is also completely configurable. This means you can turn on/off features to make Greenlight fit your specific use case. For more information on Greenlight and its features, see our [documentation](http://docs.bigbluebutton.org/install/greenlight.html).
|
Greenlight is also completely configurable. This means you can turn on/off features to make Greenlight fit your specific use case. For more information on Greenlight and its features, see our [documentation](http://docs.bigbluebutton.org/install/greenlight-v2.html).
|
||||||
|
|
||||||
For a overview of how Greenlight works, checkout our Introduction to Greenlight Video:
|
For a overview of how Greenlight works, checkout our Introduction to Greenlight Video:
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,13 @@ require 'bigbluebutton_api'
|
||||||
class ApplicationController < ActionController::Base
|
class ApplicationController < ActionController::Base
|
||||||
include SessionsHelper
|
include SessionsHelper
|
||||||
|
|
||||||
|
before_action :migration_error?
|
||||||
|
|
||||||
|
# Show an information page when migration fails and there is a version error.
|
||||||
|
def migration_error?
|
||||||
|
render :migration_error unless ENV["DB_MIGRATE_FAILED"].blank?
|
||||||
|
end
|
||||||
|
|
||||||
protect_from_forgery with: :exception
|
protect_from_forgery with: :exception
|
||||||
|
|
||||||
MEETING_NAME_LIMIT = 90
|
MEETING_NAME_LIMIT = 90
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
<div class="page mt-0">
|
||||||
|
<div class="page-content mt-0">
|
||||||
|
<div class="container text-center">
|
||||||
|
<i class="fas fa-database fa-6x mb-4"></i>
|
||||||
|
<h1 class="h3 mb-2">Greenlight encountered a database migration error.<br>This may be because you haven't updated to Greenlight 2.0.</h1>
|
||||||
|
<p class="h4 text-muted font-weight-normal mb-7">If you are not an administrator, please contact one.</p>
|
||||||
|
<h1 class="h3 mb-3">We've released a new version of Greenlight, but your database isn't compatible.</h1>
|
||||||
|
<a class="btn btn-success mt-3 mx-3" href="http://docs.bigbluebutton.org/install/greenlight-v2.html#upgrading-from-greenlight-10" target="_blank">
|
||||||
|
<i class="far fa-star mr-2"></i>Show me how to upgrade to 2.0!
|
||||||
|
</a>
|
||||||
|
<a class="btn btn-info mt-3 mx-3 w-20" href="" target="_blank">
|
||||||
|
<i class="far fa-hand-paper mr-2"></i>I'd like to stay using 1.0.
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -1,6 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
bundle exec rake db:create
|
bundle exec rake db:create
|
||||||
bundle exec rake db:migrate
|
if ! bundle exec rake db:migrate ; then
|
||||||
|
export DB_MIGRATE_FAILED=1
|
||||||
|
fi
|
||||||
|
|
||||||
exec bundle exec puma -C config/puma.rb
|
exec bundle exec puma -C config/puma.rb
|
||||||
|
|
|
@ -87,6 +87,7 @@ Rails.application.configure do
|
||||||
config.active_record.dump_schema_after_migration = false
|
config.active_record.dump_schema_after_migration = false
|
||||||
|
|
||||||
# Set the relative url root for deployment to a subdirectory.
|
# Set the relative url root for deployment to a subdirectory.
|
||||||
config.relative_url_root = "/"
|
if ENV['RELATIVE_URL_ROOT'] != "/"
|
||||||
config.relative_url_root = ENV['RELATIVE_URL_ROOT'] if ENV['RELATIVE_URL_ROOT'].present?
|
config.relative_url_root = ENV['RELATIVE_URL_ROOT'] || "/b"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -11,7 +11,7 @@ threads threads_count, threads_count
|
||||||
|
|
||||||
# Specifies the `port` that Puma will listen on to receive requests, default is 3000.
|
# Specifies the `port` that Puma will listen on to receive requests, default is 3000.
|
||||||
#
|
#
|
||||||
port ENV.fetch("PORT") { 3000 }
|
port ENV.fetch("PORT") { 80 }
|
||||||
|
|
||||||
# Specifies the `environment` that Puma will run in.
|
# Specifies the `environment` that Puma will run in.
|
||||||
#
|
#
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
version: '3'
|
version: '3'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
entrypoint: [bin/start]
|
entrypoint: [bin/start]
|
||||||
image: joshblind/greenlight:latest
|
image: bigbluebutton/greenlight:v2
|
||||||
container_name: greenlight-web
|
container_name: greenlight-v2
|
||||||
env_file: env
|
env_file: env
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- 6000:3000
|
- 5000:80
|
||||||
volumes:
|
volumes:
|
||||||
- ./db/production:/usr/src/app/db/production
|
- ./db/production:/usr/src/app/db/production
|
||||||
- ./log:/usr/src/app/log
|
- ./log:/usr/src/app/log
|
||||||
|
|
|
@ -1,18 +1,18 @@
|
||||||
# Routes requests to Greenlight based on the '/gl' prefix.
|
# Routes requests to Greenlight based on the '/b' prefix.
|
||||||
# Use this file to route '/gl' paths on your BigBlueButton server
|
# Use this file to route '/b' paths on your BigBlueButton server
|
||||||
# to the Greenlight application. If you are using a different
|
# to the Greenlight application. If you are using a different
|
||||||
# subpath, you should change it here.
|
# subpath, you should change it here.
|
||||||
|
|
||||||
location /gl {
|
location /b {
|
||||||
proxy_pass http://127.0.0.1:6000;
|
proxy_pass http://127.0.0.1:5000;
|
||||||
proxy_set_header Host $host;
|
proxy_set_header Host $host;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /gl/cable {
|
location /b/cable {
|
||||||
proxy_pass http://127.0.0.1:6000;
|
proxy_pass http://127.0.0.1:5000;
|
||||||
proxy_set_header Host $host;
|
proxy_set_header Host $host;
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
|
|
@ -50,6 +50,6 @@ ALLOW_GREENLIGHT_ACCOUNTS=true
|
||||||
# if deploying on a BigBlueButton server. Keep in mind that if you change this, you'll
|
# if deploying on a BigBlueButton server. Keep in mind that if you change this, you'll
|
||||||
# have to update your authentication callback URL's to reflect this change.
|
# have to update your authentication callback URL's to reflect this change.
|
||||||
#
|
#
|
||||||
# The recommended prefix is "/gl".
|
# The recommended prefix is "/b".
|
||||||
#
|
#
|
||||||
RELATIVE_URL_ROOT=/gl
|
RELATIVE_URL_ROOT=/b
|
||||||
|
|
Loading…
Reference in New Issue