production settings

This commit is contained in:
Josh 2018-06-14 14:22:19 -04:00
parent 37d9ae4136
commit b81eadda8d
8 changed files with 60 additions and 47 deletions

22
Gemfile
View File

@ -5,30 +5,36 @@ git_source(:github) do |repo_name|
"https://github.com/#{repo_name}.git" "https://github.com/#{repo_name}.git"
end end
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.7' gem 'rails', '~> 5.0.7'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use Puma as the app server # Use Puma as the app server
gem 'puma', '~> 3.0' gem 'puma', '~> 3.0'
# Use SCSS for stylesheets # Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0' gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets # Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0' gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views # Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2' gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes # See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby # gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library # Use jquery as the JavaScript library
gem 'jquery-rails' gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5' gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5' gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production # Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0' gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password # Use ActiveModel has_secure_password
gem 'bcrypt', '~> 3.1.7' gem 'bcrypt', '~> 3.1.7'
@ -50,7 +56,15 @@ gem "font-awesome-sass", '~> 5.0.13'
# Use Capistrano for deployment # Use Capistrano for deployment
# gem 'capistrano-rails', group: :development # gem 'capistrano-rails', group: :development
group :production do
# Use a postgres database in production.
gem 'pg', '~> 0.18'
end
group :development, :test do group :development, :test do
# Use SQLite in development and test.
gem 'sqlite3'
# Call 'byebug' anywhere in the code to stop execution and get a debugger console # Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platform: :mri gem 'byebug', platform: :mri

View File

@ -39,9 +39,9 @@ GEM
minitest (~> 5.1) minitest (~> 5.1)
tzinfo (~> 1.1) tzinfo (~> 1.1)
arel (7.1.4) arel (7.1.4)
autoprefixer-rails (8.5.0) autoprefixer-rails (8.6.2)
execjs execjs
bcrypt (3.1.11) bcrypt (3.1.12)
bigbluebutton-api-ruby (1.6.0) bigbluebutton-api-ruby (1.6.0)
xml-simple (~> 1.1) xml-simple (~> 1.1)
bindex (0.5.0) bindex (0.5.0)
@ -61,22 +61,22 @@ GEM
concurrent-ruby (1.0.5) concurrent-ruby (1.0.5)
crass (1.0.4) crass (1.0.4)
diff-lcs (1.3) diff-lcs (1.3)
dotenv (2.2.1) dotenv (2.4.0)
dotenv-rails (2.2.1) dotenv-rails (2.4.0)
dotenv (= 2.2.1) dotenv (= 2.4.0)
railties (>= 3.2, < 5.2) railties (>= 3.2, < 6.0)
erubis (2.7.0) erubis (2.7.0)
execjs (2.7.0) execjs (2.7.0)
factory_bot (4.8.2) factory_bot (4.10.0)
activesupport (>= 3.0.0) activesupport (>= 3.0.0)
factory_bot_rails (4.8.2) factory_bot_rails (4.10.0)
factory_bot (~> 4.8.2) factory_bot (~> 4.10.0)
railties (>= 3.0.0) railties (>= 3.0.0)
faker (1.8.7) faker (1.8.7)
i18n (>= 0.7) i18n (>= 0.7)
faraday (0.12.2) faraday (0.12.2)
multipart-post (>= 1.2, < 3) multipart-post (>= 1.2, < 3)
ffi (1.9.23) ffi (1.9.25)
font-awesome-sass (5.0.13) font-awesome-sass (5.0.13)
sassc (>= 1.11) sassc (>= 1.11)
globalid (0.4.1) globalid (0.4.1)
@ -133,6 +133,7 @@ GEM
omniauth-twitter (1.4.0) omniauth-twitter (1.4.0)
omniauth-oauth (~> 1.1) omniauth-oauth (~> 1.1)
rack rack
pg (0.21.0)
popper_js (1.12.9) popper_js (1.12.9)
puma (3.11.4) puma (3.11.4)
rack (2.0.5) rack (2.0.5)
@ -169,6 +170,7 @@ GEM
rb-fsevent (0.10.3) rb-fsevent (0.10.3)
rb-inotify (0.9.10) rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2) ffi (>= 0.5.0, < 2)
redis (3.3.5)
rspec-core (3.7.1) rspec-core (3.7.1)
rspec-support (~> 3.7.0) rspec-support (~> 3.7.0)
rspec-expectations (3.7.0) rspec-expectations (3.7.0)
@ -224,7 +226,7 @@ GEM
turbolinks-source (5.1.0) turbolinks-source (5.1.0)
tzinfo (1.2.5) tzinfo (1.2.5)
thread_safe (~> 0.1) thread_safe (~> 0.1)
uglifier (4.1.10) uglifier (4.1.11)
execjs (>= 0.3.0, < 3) execjs (>= 0.3.0, < 3)
web-console (3.6.2) web-console (3.6.2)
actionview (>= 5.0) actionview (>= 5.0)
@ -255,9 +257,11 @@ DEPENDENCIES
omniauth omniauth
omniauth-google-oauth2 omniauth-google-oauth2
omniauth-twitter omniauth-twitter
pg (~> 0.18)
puma (~> 3.0) puma (~> 3.0)
rails (~> 5.0.7) rails (~> 5.0.7)
rails-controller-testing rails-controller-testing
redis (~> 3.0)
rspec-rails (~> 3.7) rspec-rails (~> 3.7)
sass-rails (~> 5.0) sass-rails (~> 5.0)
spring spring

View File

@ -10,9 +10,7 @@ Greenlight is a simple front-end interface for your BigBlueButton server. At it'
Furthermore, Greenlight is completely configurable. This means you can turn on/off features to make Greenlight fit your specific use case. For more information on this, see our [documentation](http://docs.bigbluebutton.org/install/green-light.html). Furthermore, Greenlight is completely configurable. This means you can turn on/off features to make Greenlight fit your specific use case. For more information on this, see our [documentation](http://docs.bigbluebutton.org/install/green-light.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](https://youtu.be/yGX3JCv7OVM).
[![GreenLight Overview](https://img.youtube.com/vi/yGX3JCv7OVM/0.jpg)](https://youtu.be/yGX3JCv7OVM)
## Installation on a BigBlueButton Server ## Installation on a BigBlueButton Server
@ -27,7 +25,7 @@ Greenlight is designed to work on a [BigBlueButton 2.0](https://github.com/bigbl
## Source Code ## Source Code & Contributing
GreenLight is built using Ruby on Rails. Many developers already know Rails well, and we wanted to create both a full front-end to BigBlueButton but also a reference implementation of how to fully leverage the [BigBlueButton API](http://docs.bigbluebutton.org/dev/api.html). GreenLight is built using Ruby on Rails. Many developers already know Rails well, and we wanted to create both a full front-end to BigBlueButton but also a reference implementation of how to fully leverage the [BigBlueButton API](http://docs.bigbluebutton.org/dev/api.html).

View File

@ -1,25 +1,23 @@
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default default: &default
adapter: sqlite3
pool: 5 pool: 5
timeout: 5000 timeout: 5000
development: development:
<<: *default <<: *default
adapter: sqlite3
database: db/development.sqlite3 database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test: test:
<<: *default <<: *default
database: db/test.sqlite3 adapter: sqlite3
database: db/development.sqlite3
production: production:
<<: *default <<: *default
database: db/production.sqlite3 adapter: postgresql
database: greenlight_production
encoding: unicode
username: postgres
password:
host: db

View File

@ -19,11 +19,11 @@ Rails.application.configure do
config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
# Compress JavaScripts and CSS. # Compress JavaScripts and CSS.
config.assets.js_compressor = :uglifier config.assets.js_compressor = Uglifier.new(harmony: true)
# config.assets.css_compressor = :sass # config.assets.css_compressor = :sass
# Do not fallback to assets pipeline if a precompiled asset is missed. # Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = false config.assets.compile = true
# `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb

View File

@ -8,4 +8,4 @@ Rails.application.config.assets.version = '1.0'
# Precompile additional assets. # Precompile additional assets.
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added. # application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
# Rails.application.config.assets.precompile += %w() Rails.application.config.assets.precompile += %w(application.css)

View File

@ -1,10 +1,15 @@
# If set to true, GreenLight will attempt to fetch the endpoint and secret from the credentials # This is a sample of the environment variables you will need
# endpoint by passing it the users provider. This is useful when launching into GreenLight from # To use, copy this file to .env `cp sample.env .env`
# and external service with a customer provider (who may have different credentials).
# Create a Secret Key for Rails
#
# You can generate a secure one through the Greenlight docker image
# with with the command.
#
# docker run --rm bigbluebutton/greenlight rake secret
#
SECRET_KEY_BASE=
# It is also worth noting that ALL Omniauth providers resolve to "greenlight" before being sent.
# If you are configuring GreenLight for use with a single BigBlueButton server, set this to false.
USE_LOADBALANCED_CONFIGURATION=false
# The endpoint and secret for your BigBlueButton server. # The endpoint and secret for your BigBlueButton server.
# Set these if you are running GreenLight on a single BigBlueButton server. # Set these if you are running GreenLight on a single BigBlueButton server.
@ -15,12 +20,6 @@ USE_LOADBALANCED_CONFIGURATION=false
BIGBLUEBUTTON_ENDPOINT= BIGBLUEBUTTON_ENDPOINT=
BIGBLUEBUTTON_SECRET= BIGBLUEBUTTON_SECRET=
# The endpoint and secret for your Loadbalancer server.
# Set these ONLY IF you are running BigBlueButton under a loadbalanced configuration.
# GreenLight will use these credentials to retrieve provider based server credentials.
LOADBALANCER_ENDPOINT=
LOADBALANCER_SECRET=
# Google Login Provider (optional) # Google Login Provider (optional)
# #
# For in-depth steps on setting up a Google Login Provider, see: # For in-depth steps on setting up a Google Login Provider, see: