Skip to content
Permalink
Browse files

Setup Rails project and dockerize

  • Loading branch information
riggraz committed Aug 18, 2019
0 parents commit 467d5a9a0f44b36fd938c0412de48939c9af652a
Showing with 8,941 additions and 0 deletions.
  1. +1 βˆ’0 .browserslistrc
  2. +31 βˆ’0 .gitignore
  3. +1 βˆ’0 .ruby-version
  4. +26 βˆ’0 Dockerfile
  5. +54 βˆ’0 Gemfile
  6. +226 βˆ’0 Gemfile.lock
  7. +23 βˆ’0 README.md
  8. +6 βˆ’0 Rakefile
  9. +2 βˆ’0 app/assets/config/manifest.js
  10. 0 app/assets/images/.keep
  11. +15 βˆ’0 app/assets/stylesheets/application.css
  12. +4 βˆ’0 app/channels/application_cable/channel.rb
  13. +4 βˆ’0 app/channels/application_cable/connection.rb
  14. +2 βˆ’0 app/controllers/application_controller.rb
  15. 0 app/controllers/concerns/.keep
  16. +2 βˆ’0 app/helpers/application_helper.rb
  17. +6 βˆ’0 app/javascript/channels/consumer.js
  18. +5 βˆ’0 app/javascript/channels/index.js
  19. +17 βˆ’0 app/javascript/packs/application.js
  20. +7 βˆ’0 app/jobs/application_job.rb
  21. +4 βˆ’0 app/mailers/application_mailer.rb
  22. +3 βˆ’0 app/models/application_record.rb
  23. 0 app/models/concerns/.keep
  24. +15 βˆ’0 app/views/layouts/application.html.erb
  25. +13 βˆ’0 app/views/layouts/mailer.html.erb
  26. +1 βˆ’0 app/views/layouts/mailer.text.erb
  27. +72 βˆ’0 babel.config.js
  28. +105 βˆ’0 bin/bundle
  29. +9 βˆ’0 bin/rails
  30. +9 βˆ’0 bin/rake
  31. +36 βˆ’0 bin/setup
  32. +17 βˆ’0 bin/spring
  33. +19 βˆ’0 bin/webpack
  34. +19 βˆ’0 bin/webpack-dev-server
  35. +11 βˆ’0 bin/yarn
  36. +5 βˆ’0 config.ru
  37. +19 βˆ’0 config/application.rb
  38. +4 βˆ’0 config/boot.rb
  39. +10 βˆ’0 config/cable.yml
  40. +1 βˆ’0 config/credentials.yml.enc
  41. +86 βˆ’0 config/database.yml
  42. +5 βˆ’0 config/environment.rb
  43. +62 βˆ’0 config/environments/development.rb
  44. +112 βˆ’0 config/environments/production.rb
  45. +48 βˆ’0 config/environments/test.rb
  46. +8 βˆ’0 config/initializers/application_controller_renderer.rb
  47. +14 βˆ’0 config/initializers/assets.rb
  48. +7 βˆ’0 config/initializers/backtrace_silencers.rb
  49. +30 βˆ’0 config/initializers/content_security_policy.rb
  50. +5 βˆ’0 config/initializers/cookies_serializer.rb
  51. +4 βˆ’0 config/initializers/filter_parameter_logging.rb
  52. +16 βˆ’0 config/initializers/inflections.rb
  53. +4 βˆ’0 config/initializers/mime_types.rb
  54. +14 βˆ’0 config/initializers/wrap_parameters.rb
  55. +33 βˆ’0 config/locales/en.yml
  56. +38 βˆ’0 config/puma.rb
  57. +3 βˆ’0 config/routes.rb
  58. +6 βˆ’0 config/spring.rb
  59. +34 βˆ’0 config/storage.yml
  60. +5 βˆ’0 config/webpack/development.js
  61. +3 βˆ’0 config/webpack/environment.js
  62. +5 βˆ’0 config/webpack/production.js
  63. +5 βˆ’0 config/webpack/test.js
  64. +95 βˆ’0 config/webpacker.yml
  65. +7 βˆ’0 db/seeds.rb
  66. +15 βˆ’0 docker-compose.yml
  67. +8 βˆ’0 entrypoint.sh
  68. 0 lib/assets/.keep
  69. 0 lib/tasks/.keep
  70. 0 log/.keep
  71. +15 βˆ’0 package.json
  72. +12 βˆ’0 postcss.config.js
  73. +67 βˆ’0 public/404.html
  74. +67 βˆ’0 public/422.html
  75. +66 βˆ’0 public/500.html
  76. 0 public/apple-touch-icon-precomposed.png
  77. 0 public/apple-touch-icon.png
  78. 0 public/favicon.ico
  79. +1 βˆ’0 public/robots.txt
  80. 0 storage/.keep
  81. +5 βˆ’0 test/application_system_test_case.rb
  82. +11 βˆ’0 test/channels/application_cable/connection_test.rb
  83. 0 test/controllers/.keep
  84. 0 test/fixtures/.keep
  85. 0 test/fixtures/files/.keep
  86. 0 test/helpers/.keep
  87. 0 test/integration/.keep
  88. 0 test/mailers/.keep
  89. 0 test/models/.keep
  90. 0 test/system/.keep
  91. +13 βˆ’0 test/test_helper.rb
  92. 0 tmp/.keep
  93. 0 vendor/.keep
  94. +7,208 βˆ’0 yarn.lock
@@ -0,0 +1 @@
defaults
@@ -0,0 +1,31 @@
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile '~/.gitignore_global'

# Ignore bundler config.
/.bundle

# Ignore all logfiles and tempfiles.
/log/*
/tmp/*
!/log/.keep
!/tmp/.keep

# Ignore uploaded files in development.
/storage/*
!/storage/.keep

/public/assets
.byebug_history

# Ignore master key for decrypting credentials and more.
/config/master.key

/public/packs
/public/packs-test
/node_modules
/yarn-error.log
yarn-debug.log*
.yarn-integrity
@@ -0,0 +1 @@
ruby-2.6.3
@@ -0,0 +1,26 @@
FROM ruby:2.6.3

RUN curl -sL https://deb.nodesource.com/setup_11.x | bash -
RUN apt-get update -qq && apt-get install -y nodejs postgresql-client
RUN npm install -g yarn

RUN mkdir /app
WORKDIR /app

COPY Gemfile /app/Gemfile
COPY Gemfile.lock /app/Gemfile.lock

RUN bundle install
RUN yarn install --check-files

COPY . /app

# Add a script to be executed every time the container starts.
COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]

EXPOSE 3000

# Start the main process.
CMD ["rails", "server", "-b", "0.0.0.0"]
54 Gemfile
@@ -0,0 +1,54 @@
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '2.6.3'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 6.0.0'
# Use postgresql as the database for Active Record
gem 'pg', '>= 0.18', '< 2.0'
# Use Puma as the app server
gem 'puma', '~> 3.11'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5'
# Transpile app-like JavaScript. Read more: https://github.com/rails/webpacker
gem 'webpacker', '~> 4.0'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.7'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 4.0'
# Use Active Model has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Active Storage variant
# gem 'image_processing', '~> 1.2'

# Reduces boot times through caching; required in config/boot.rb
gem 'bootsnap', '>= 1.4.2', require: false

group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
end

group :development do
# Access an interactive console on exception pages or by calling 'console' anywhere in the code.
gem 'web-console', '>= 3.3.0'
gem 'listen', '>= 3.0.5', '< 3.2'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
gem 'spring'
gem 'spring-watcher-listen', '~> 2.0.0'
end

group :test do
# Adds support for Capybara system testing and selenium driver
gem 'capybara', '>= 2.15'
gem 'selenium-webdriver'
# Easy installation and use of web drivers to run system tests with browsers
gem 'webdrivers'
end

# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
@@ -0,0 +1,226 @@
GEM
remote: https://rubygems.org/
specs:
actioncable (6.0.0)
actionpack (= 6.0.0)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
actionmailbox (6.0.0)
actionpack (= 6.0.0)
activejob (= 6.0.0)
activerecord (= 6.0.0)
activestorage (= 6.0.0)
activesupport (= 6.0.0)
mail (>= 2.7.1)
actionmailer (6.0.0)
actionpack (= 6.0.0)
actionview (= 6.0.0)
activejob (= 6.0.0)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (6.0.0)
actionview (= 6.0.0)
activesupport (= 6.0.0)
rack (~> 2.0)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.2.0)
actiontext (6.0.0)
actionpack (= 6.0.0)
activerecord (= 6.0.0)
activestorage (= 6.0.0)
activesupport (= 6.0.0)
nokogiri (>= 1.8.5)
actionview (6.0.0)
activesupport (= 6.0.0)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.1, >= 1.2.0)
activejob (6.0.0)
activesupport (= 6.0.0)
globalid (>= 0.3.6)
activemodel (6.0.0)
activesupport (= 6.0.0)
activerecord (6.0.0)
activemodel (= 6.0.0)
activesupport (= 6.0.0)
activestorage (6.0.0)
actionpack (= 6.0.0)
activejob (= 6.0.0)
activerecord (= 6.0.0)
marcel (~> 0.3.1)
activesupport (6.0.0)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
tzinfo (~> 1.1)
zeitwerk (~> 2.1, >= 2.1.8)
addressable (2.6.0)
public_suffix (>= 2.0.2, < 4.0)
bindex (0.8.1)
bootsnap (1.4.4)
msgpack (~> 1.0)
builder (3.2.3)
byebug (11.0.1)
capybara (3.28.0)
addressable
mini_mime (>= 0.1.3)
nokogiri (~> 1.8)
rack (>= 1.6.0)
rack-test (>= 0.6.3)
regexp_parser (~> 1.5)
xpath (~> 3.2)
childprocess (1.0.1)
rake (< 13.0)
concurrent-ruby (1.1.5)
crass (1.0.4)
erubi (1.8.0)
ffi (1.11.1)
globalid (0.4.2)
activesupport (>= 4.2.0)
i18n (1.6.0)
concurrent-ruby (~> 1.0)
jbuilder (2.9.1)
activesupport (>= 4.2.0)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
loofah (2.2.3)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mail (2.7.1)
mini_mime (>= 0.1.1)
marcel (0.3.3)
mimemagic (~> 0.3.2)
method_source (0.9.2)
mimemagic (0.3.3)
mini_mime (1.0.2)
mini_portile2 (2.4.0)
minitest (5.11.3)
msgpack (1.3.1)
nio4r (2.4.0)
nokogiri (1.10.4)
mini_portile2 (~> 2.4.0)
pg (1.1.4)
public_suffix (3.1.1)
puma (3.12.1)
rack (2.0.7)
rack-proxy (0.6.5)
rack
rack-test (1.1.0)
rack (>= 1.0, < 3)
rails (6.0.0)
actioncable (= 6.0.0)
actionmailbox (= 6.0.0)
actionmailer (= 6.0.0)
actionpack (= 6.0.0)
actiontext (= 6.0.0)
actionview (= 6.0.0)
activejob (= 6.0.0)
activemodel (= 6.0.0)
activerecord (= 6.0.0)
activestorage (= 6.0.0)
activesupport (= 6.0.0)
bundler (>= 1.3.0)
railties (= 6.0.0)
sprockets-rails (>= 2.0.0)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.2.0)
loofah (~> 2.2, >= 2.2.2)
railties (6.0.0)
actionpack (= 6.0.0)
activesupport (= 6.0.0)
method_source
rake (>= 0.8.7)
thor (>= 0.20.3, < 2.0)
rake (12.3.3)
rb-fsevent (0.10.3)
rb-inotify (0.10.0)
ffi (~> 1.0)
regexp_parser (1.6.0)
ruby_dep (1.5.0)
rubyzip (1.2.3)
sass (3.7.4)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
sass-rails (5.1.0)
railties (>= 5.2.0)
sass (~> 3.1)
sprockets (>= 2.8, < 4.0)
sprockets-rails (>= 2.0, < 4.0)
tilt (>= 1.1, < 3)
selenium-webdriver (3.142.3)
childprocess (>= 0.5, < 2.0)
rubyzip (~> 1.2, >= 1.2.2)
spring (2.1.0)
spring-watcher-listen (2.0.1)
listen (>= 2.7, < 4.0)
spring (>= 1.2, < 3.0)
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.2.1)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
thor (0.20.3)
thread_safe (0.3.6)
tilt (2.0.9)
turbolinks (5.2.0)
turbolinks-source (~> 5.2)
turbolinks-source (5.2.0)
tzinfo (1.2.5)
thread_safe (~> 0.1)
web-console (4.0.1)
actionview (>= 6.0.0)
activemodel (>= 6.0.0)
bindex (>= 0.4.0)
railties (>= 6.0.0)
webdrivers (4.1.2)
nokogiri (~> 1.6)
rubyzip (~> 1.0)
selenium-webdriver (>= 3.0, < 4.0)
webpacker (4.0.7)
activesupport (>= 4.2)
rack-proxy (>= 0.6.1)
railties (>= 4.2)
websocket-driver (0.7.1)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.4)
xpath (3.2.0)
nokogiri (~> 1.8)
zeitwerk (2.1.9)

PLATFORMS
ruby

DEPENDENCIES
bootsnap (>= 1.4.2)
byebug
capybara (>= 2.15)
jbuilder (~> 2.7)
listen (>= 3.0.5, < 3.2)
pg (>= 0.18, < 2.0)
puma (~> 3.11)
rails (~> 6.0.0)
sass-rails (~> 5)
selenium-webdriver
spring
spring-watcher-listen (~> 2.0.0)
turbolinks (~> 5)
tzinfo-data
web-console (>= 3.3.0)
webdrivers
webpacker (~> 4.0)

RUBY VERSION
ruby 2.6.3p62

BUNDLED WITH
1.17.2
@@ -0,0 +1,23 @@
# astuto

an open-source self-hosted solution for customer feedback

Things you may want to cover:

* Ruby version

* System dependencies

* Configuration

* Database creation

* Database initialization

* How to run the test suite

* Services (job queues, cache servers, search engines, etc.)

* Deployment instructions

* ...
@@ -0,0 +1,6 @@
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.

require_relative 'config/application'

Rails.application.load_tasks
@@ -0,0 +1,2 @@
//= link_tree ../images
//= link_directory ../stylesheets .css
No changes.
@@ -0,0 +1,15 @@
/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
* vendor/assets/stylesheets directory can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
* files in this directory. Styles in this file should be added after the last require_* statement.
* It is generally better to create a new file per style scope.
*
*= require_tree .
*= require_self
*/
@@ -0,0 +1,4 @@
module ApplicationCable
class Channel < ActionCable::Channel::Base
end
end

0 comments on commit 467d5a9

Please sign in to comment.
You can’t perform that action at this time.