sbidu_generators 0.1.0
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/MIT-LICENSE +20 -0
- data/README.md +81 -0
- data/Rakefile +36 -0
- data/app/assets/config/sbidu_generators_manifest.js +2 -0
- data/app/assets/javascripts/sbidu_generators/application.js +13 -0
- data/app/assets/stylesheets/sbidu_generators/application.css +15 -0
- data/app/controllers/sbidu_generators/application_controller.rb +5 -0
- data/app/helpers/sbidu_generators/application_helper.rb +4 -0
- data/app/jobs/sbidu_generators/application_job.rb +4 -0
- data/app/mailers/sbidu_generators/application_mailer.rb +6 -0
- data/app/models/sbidu_generators/application_record.rb +5 -0
- data/app/views/layouts/sbidu_generators/application.html.erb +14 -0
- data/config/routes.rb +2 -0
- data/lib/generators/sbidu_generators/setup_generator.rb +99 -0
- data/lib/generators/sbidu_generators/setup_templates/Dockerfile +40 -0
- data/lib/generators/sbidu_generators/setup_templates/Gemfile +103 -0
- data/lib/generators/sbidu_generators/setup_templates/README.md +165 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/starter_kit.js +16 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/starter_kit/bootstrap.min.js +7 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/starter_kit/holder.min.js +13 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/starter_kit/jquery-3.2.1.slim.min.js +4 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/starter_kit/popper.min.js +4 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/javascripts/website.js +14 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/starter_kit.css +15 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/starter_kit/banner.css +36 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/starter_kit/bootstrap.min.css +7 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/starter_kit/carousel.css +91 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/starter_kit/general.css +50 -0
- data/lib/generators/sbidu_generators/setup_templates/app/assets/stylesheets/website.css +15 -0
- data/lib/generators/sbidu_generators/setup_templates/app/controllers/application_controller.rb +20 -0
- data/lib/generators/sbidu_generators/setup_templates/app/controllers/dashboard_controller.rb +24 -0
- data/lib/generators/sbidu_generators/setup_templates/app/controllers/landing_controller.rb +12 -0
- data/lib/generators/sbidu_generators/setup_templates/app/controllers/website/base_controller.rb +19 -0
- data/lib/generators/sbidu_generators/setup_templates/app/controllers/website/home_controller.rb +14 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/dashboard/index.html.erb +4 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/common/_disqus.html.erb +21 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/kuppayam/_footer.html.erb +25 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/kuppayam/_navbar.html.erb +58 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/mailer.html.erb +13 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/mailer.text.erb +1 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/website/_footer.html.erb +9 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/website/_head.html.erb +20 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/website/_header.html.erb +27 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/layouts/website/theme.html.erb +38 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/website/home/_slide.html.erb +10 -0
- data/lib/generators/sbidu_generators/setup_templates/app/views/website/home/index.html.erb +113 -0
- data/lib/generators/sbidu_generators/setup_templates/config/application.yml +5 -0
- data/lib/generators/sbidu_generators/setup_templates/config/database.sample.yml +57 -0
- data/lib/generators/sbidu_generators/setup_templates/config/database.yml +57 -0
- data/lib/generators/sbidu_generators/setup_templates/config/deploy/production.rb +26 -0
- data/lib/generators/sbidu_generators/setup_templates/config/initializers/assets.rb +15 -0
- data/lib/generators/sbidu_generators/setup_templates/config/initializers/overide_dhatu_controllers.rb +7 -0
- data/lib/generators/sbidu_generators/setup_templates/config/initializers/overide_kuppayam_controllers.rb +47 -0
- data/lib/generators/sbidu_generators/setup_templates/config/initializers/overide_pattana_controllers.rb +46 -0
- data/lib/generators/sbidu_generators/setup_templates/config/initializers/overide_usman_controllers.rb +7 -0
- data/lib/generators/sbidu_generators/setup_templates/config/nginx.conf +68 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/categories.csv +26 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/categories.csv +26 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/events.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/offers.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/permissions.csv +34 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/prices.csv +91 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/section_types.csv +10 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/sections.csv +11 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/services.csv +117 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/team_members.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/testimonials.csv +1 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/dummy/users.csv +6 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/events.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/offers.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/permissions.csv +34 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/prices.csv +91 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/section_types.csv +11 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/sections.csv +11 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/services.csv +117 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/team_members.csv +2 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/testimonials.csv +1 -0
- data/lib/generators/sbidu_generators/setup_templates/db/data/users.csv +6 -0
- data/lib/generators/sbidu_generators/setup_templates/db/master_data/features.csv +25 -0
- data/lib/generators/sbidu_generators/setup_templates/db/master_data/roles.csv +3 -0
- data/lib/generators/sbidu_generators/setup_templates/docker-compose.yml +24 -0
- data/lib/generators/sbidu_generators/setup_templates/gitignore +46 -0
- data/lib/generators/sbidu_generators/setup_templates/lib/tasks/data.rake +133 -0
- data/lib/generators/sbidu_generators/setup_templates/rspec +2 -0
- data/lib/generators/sbidu_generators/setup_templates/ruby-version +1 -0
- data/lib/generators/sbidu_generators/website_generator.rb +34 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/about_us_controller.rb +16 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/base_controller.rb +67 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/blog_controller.rb +29 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/booking_controller.rb +26 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/careers_controller.rb +14 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/categories_controller.rb +39 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/contact_us_controller.rb +36 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/home_controller.rb +32 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/news_controller.rb +15 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/offers_controller.rb +17 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/products_controller.rb +43 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/promotion_enquiries_controller.rb +32 -0
- data/lib/generators/sbidu_generators/website_templates/app/controllers/website/services_controller.rb +32 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/layouts/common/_banner.html.erb +22 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/about_us/index.html.erb +23 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/blog/_item.html.erb +12 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/blog/index.html.erb +48 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/blog/show.html.erb +115 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/booking/_thank_you.html.erb +19 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/booking/create.js.erb +20 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/contact_us/_contact_us.html.erb +82 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/contact_us/index.html.erb +40 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/home/_slide.html.erb +10 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/home/index.html.erb +113 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_first_page.html.erb +3 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_gap.html.erb +3 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_last_page.html.erb +3 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_next_page.html.erb +3 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_page.html.erb +9 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_paginator.html.erb +15 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/kaminari/_prev_page.html.erb +3 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/offers/_offer_tab.html.erb +100 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/offers/_package_tab.html.erb +128 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/offers/_price_tab.html.erb +114 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/offers/index.html.erb +91 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/promotion_enquiries/_thank_you.html.erb +19 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/promotion_enquiries/create.js.erb +20 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/services/_show.html.erb +78 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/services/index.html.erb +105 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/services/show.html.erb +56 -0
- data/lib/generators/sbidu_generators/website_templates/app/views/website/website_generator.rb +34 -0
- data/lib/generators/sbidu_generators/website_templates/config/routes.rb +32 -0
- data/lib/sbidu_generators.rb +5 -0
- data/lib/sbidu_generators/engine.rb +5 -0
- data/lib/sbidu_generators/version.rb +3 -0
- data/lib/tasks/sbidu_generators_tasks.rake +4 -0
- metadata +314 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 445e674926bb672be97650ee3d801fe3f97d447d
|
|
4
|
+
data.tar.gz: '08b9e9d69921576504b7c6be758a3a78dc6b2f6e'
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 8db3e8b86eaa5e1328565088bf908e98758227308459c9936a043f3f9f557aa767c0c033ba859f0978f7c0a9a0253adbd2e164b0720beb5fa234690a77f55c16
|
|
7
|
+
data.tar.gz: cc9e1c5d2972c101e7c928d9b87c3471e29b0ebbcb37eb1b29b4c923b667aa373e065e800fad65e5c626c4592bae8b61bbae76975b7a03d62159468adf9b3355
|
data/MIT-LICENSE
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Copyright 2017 Krishna Prasad Varma
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
4
|
+
a copy of this software and associated documentation files (the
|
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
9
|
+
the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be
|
|
12
|
+
included in all copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Sbidu Generators
|
|
2
|
+
|
|
3
|
+
Use the generators provided by Sbidu to create sbidu applications fast.
|
|
4
|
+
|
|
5
|
+
## Create a Rails App
|
|
6
|
+
|
|
7
|
+
In order to use the generator you need to first create a blank rails application to run this generator
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
rails new demo-site.com -T -d mysql --skip-bundle
|
|
11
|
+
cd demo-site.com
|
|
12
|
+
```
|
|
13
|
+
### Add sbidu_generators to Gemfile
|
|
14
|
+
|
|
15
|
+
Add this line to your application's Gemfile:
|
|
16
|
+
|
|
17
|
+
```ruby
|
|
18
|
+
gem 'sbidu_generators'
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
And then execute:
|
|
22
|
+
```bash
|
|
23
|
+
$ bundle
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Or install it yourself as:
|
|
27
|
+
```bash
|
|
28
|
+
$ gem install sbidu_generators
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Setup Generator
|
|
32
|
+
|
|
33
|
+
### Run the generator script for setup
|
|
34
|
+
|
|
35
|
+
This will add necessary files like .gitignore, Dockerfile, docker-compose.yml, database.yml template etc to the current project
|
|
36
|
+
|
|
37
|
+
The only argument it requires is the application name.
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
$ rails g sbidu_generators:setup demo-site.com
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
It will also mount the required engines (pattana, usman & dhatu) to the config/routes.rb
|
|
44
|
+
|
|
45
|
+
```ruby
|
|
46
|
+
Rails.application.routes.draw do
|
|
47
|
+
mount Pattana::Engine => "/"
|
|
48
|
+
mount Usman::Engine => "/"
|
|
49
|
+
mount Dhatu::Engine => "/"
|
|
50
|
+
end
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Do bundle again as the above command had changed the Gemfile.
|
|
54
|
+
You might want to delete Gemfile.lock if you run into errors like compatible issues
|
|
55
|
+
```bash
|
|
56
|
+
$ rm Gemfile.lock
|
|
57
|
+
$ bundle
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Create Database, Copy and Run Migrations
|
|
61
|
+
|
|
62
|
+
```ruby
|
|
63
|
+
rails railties:install:migrations
|
|
64
|
+
rails db:create db:migrate
|
|
65
|
+
rails db:migrate RAILS_ENV=test
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Import Data
|
|
69
|
+
|
|
70
|
+
```ruby
|
|
71
|
+
bundle exec rails import:data:all
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
You can also insert some dummy data (seed data) if you want.
|
|
75
|
+
|
|
76
|
+
```ruby
|
|
77
|
+
bundle exec rails import:data:dummy:all
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## License
|
|
81
|
+
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
data/Rakefile
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
begin
|
|
2
|
+
require 'bundler/setup'
|
|
3
|
+
rescue LoadError
|
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
require 'rdoc/task'
|
|
8
|
+
|
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
|
11
|
+
rdoc.title = 'SbiduGenerators'
|
|
12
|
+
rdoc.options << '--line-numbers'
|
|
13
|
+
rdoc.rdoc_files.include('README.md')
|
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
|
18
|
+
load 'rails/tasks/engine.rake'
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
load 'rails/tasks/statistics.rake'
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
require 'bundler/gem_tasks'
|
|
26
|
+
|
|
27
|
+
require 'rake/testtask'
|
|
28
|
+
|
|
29
|
+
Rake::TestTask.new(:test) do |t|
|
|
30
|
+
t.libs << 'test'
|
|
31
|
+
t.pattern = 'test/**/*_test.rb'
|
|
32
|
+
t.verbose = false
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
task default: :test
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
|
2
|
+
// listed below.
|
|
3
|
+
//
|
|
4
|
+
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
|
5
|
+
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
|
6
|
+
//
|
|
7
|
+
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
|
8
|
+
// compiled file. JavaScript code in this file should be added after the last require_* statement.
|
|
9
|
+
//
|
|
10
|
+
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
|
11
|
+
// about supported directives.
|
|
12
|
+
//
|
|
13
|
+
//= require_tree .
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
+
* listed below.
|
|
4
|
+
*
|
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
+
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
|
|
7
|
+
*
|
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
|
|
10
|
+
* files in this directory. Styles in this file should be added after the last require_* statement.
|
|
11
|
+
* It is generally better to create a new file per style scope.
|
|
12
|
+
*
|
|
13
|
+
*= require_tree .
|
|
14
|
+
*= require_self
|
|
15
|
+
*/
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>Sbidu generators</title>
|
|
5
|
+
<%= stylesheet_link_tag "sbidu_generators/application", media: "all" %>
|
|
6
|
+
<%= javascript_include_tag "sbidu_generators/application" %>
|
|
7
|
+
<%= csrf_meta_tags %>
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
|
|
11
|
+
<%= yield %>
|
|
12
|
+
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
data/config/routes.rb
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
require 'rails/generators'
|
|
2
|
+
|
|
3
|
+
class SbiduGenerators::SetupGenerator < Rails::Generators::Base
|
|
4
|
+
|
|
5
|
+
source_root File.expand_path('../setup_templates', __FILE__)
|
|
6
|
+
|
|
7
|
+
desc "Copies the basic files to kick start a new sbidu app"
|
|
8
|
+
|
|
9
|
+
argument :app_name, :type=>:string
|
|
10
|
+
# argument :fields, :type=>:hash, :banner =>"Resource Fields."
|
|
11
|
+
|
|
12
|
+
class_option :debug, :type => :boolean, :default => false, :desc => "This will print the arguments for debugging"
|
|
13
|
+
|
|
14
|
+
def debug_args
|
|
15
|
+
print_args if options.debug?
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def start_setting_up
|
|
19
|
+
# Copy .gitignore, Dockerfile,
|
|
20
|
+
template "gitignore", ".gitignore"
|
|
21
|
+
template "rspec", ".rspec"
|
|
22
|
+
template "ruby-version", ".ruby-version"
|
|
23
|
+
template "Gemfile", "Gemfile"
|
|
24
|
+
template "README.md", "README.md"
|
|
25
|
+
|
|
26
|
+
# Copy Docker related files
|
|
27
|
+
template "Dockerfile", "Dockerfile"
|
|
28
|
+
template "docker-compose.yml", "docker-compose.yml"
|
|
29
|
+
|
|
30
|
+
# Create the configuration files
|
|
31
|
+
template "config/application.yml", "config/application.yml"
|
|
32
|
+
template "config/database.yml", "config/database.yml"
|
|
33
|
+
template "config/database.sample.yml", "config/database.yml"
|
|
34
|
+
template "config/nginx.conf", "config/nginx.conf"
|
|
35
|
+
|
|
36
|
+
# Copy Deploy Configurations
|
|
37
|
+
template "config/deploy/production.rb", "config/deploy/production.rb"
|
|
38
|
+
|
|
39
|
+
# Copy Initializers
|
|
40
|
+
template "config/initializers/assets.rb", "config/initializers/assets.rb"
|
|
41
|
+
template "config/initializers/overide_kuppayam_controllers.rb", "config/initializers/overide_kuppayam_controllers.rb"
|
|
42
|
+
template "config/initializers/overide_pattana_controllers.rb", "config/initializers/overide_pattana_controllers.rb"
|
|
43
|
+
template "config/initializers/overide_usman_controllers.rb", "config/initializers/overide_usman_controllers.rb"
|
|
44
|
+
template "config/initializers/overide_dhatu_controllers.rb", "config/initializers/overide_dhatu_controllers.rb"
|
|
45
|
+
|
|
46
|
+
# Copy Import Data and Data CSVs
|
|
47
|
+
directory "db/data", "db/data"
|
|
48
|
+
directory "db/master_data", "db/master_data"
|
|
49
|
+
|
|
50
|
+
# Copy data.rake task
|
|
51
|
+
template "lib/tasks/data.rake", "lib/tasks/data.rake"
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def configure_routes
|
|
55
|
+
# Dashboard Page - Landing Page Redirects to this page
|
|
56
|
+
route "get '/dashboard', to: 'dashboard#index', as: :dashboard"
|
|
57
|
+
|
|
58
|
+
# Default Landing Page after successful signin
|
|
59
|
+
route "get '/landing', to: 'landing#index', as: :user_landing"
|
|
60
|
+
|
|
61
|
+
# Website Pages
|
|
62
|
+
route "root 'website/home#index'"
|
|
63
|
+
|
|
64
|
+
# Mount required engines
|
|
65
|
+
route "mount Pattana::Engine => '/'"
|
|
66
|
+
route "mount Usman::Engine => '/'"
|
|
67
|
+
route "mount Dhatu::Engine => '/'"
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def setup_controllers
|
|
71
|
+
template "app/controllers/application_controller.rb", "app/controllers/application_controller.rb"
|
|
72
|
+
template "app/controllers/dashboard_controller.rb", "app/controllers/dashboard_controller.rb"
|
|
73
|
+
template "app/controllers/landing_controller.rb", "app/controllers/landing_controller.rb"
|
|
74
|
+
template "app/controllers/website/base_controller.rb", "app/controllers/website/base_controller.rb"
|
|
75
|
+
template "app/controllers/website/home_controller.rb", "app/controllers/website/home_controller.rb"
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def setup_views
|
|
79
|
+
remove_file "app/views/application.html.erb"
|
|
80
|
+
directory "app/views/dashboard", "app/views/dashboard"
|
|
81
|
+
directory "app/views/layouts", "app/views/layouts"
|
|
82
|
+
directory "app/views/website/home", "app/views/website/home"
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def setup_basic_assets
|
|
86
|
+
template "app/assets/stylesheets/starter_kit.css", "app/assets/stylesheets/starter_kit.css"
|
|
87
|
+
template "app/assets/javascripts/starter_kit.js", "app/assets/javascripts/starter_kit.js"
|
|
88
|
+
|
|
89
|
+
directory "app/assets/stylesheets/starter_kit", "app/assets/stylesheets/starter_kit"
|
|
90
|
+
directory "app/assets/javascripts/starter_kit", "app/assets/javascripts/starter_kit"
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
private
|
|
94
|
+
|
|
95
|
+
def print_args
|
|
96
|
+
puts ":app_name: #{app_name}"
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Base image:
|
|
2
|
+
FROM ruby:2.4.3
|
|
3
|
+
ENV LANG C.UTF-8
|
|
4
|
+
|
|
5
|
+
# Sbidu Generators - You might want to change the Author Info
|
|
6
|
+
# Author Info
|
|
7
|
+
MAINTAINER Sbidu Generator <info@rightsolutions.ae>
|
|
8
|
+
|
|
9
|
+
# Install dependencies
|
|
10
|
+
RUN apt-get update -qq && \
|
|
11
|
+
apt-get install -y build-essential libpq-dev nodejs vim && \
|
|
12
|
+
apt-get install -y mysql-client --no-install-recommends && \
|
|
13
|
+
rm -rf /var/lib/apt/lists/*
|
|
14
|
+
|
|
15
|
+
# Set an environment variable where the Rails app is installed to inside of Docker image:
|
|
16
|
+
ENV RAILS_ROOT /var/app
|
|
17
|
+
RUN mkdir -p $RAILS_ROOT
|
|
18
|
+
|
|
19
|
+
# Set working directory, where the commands will be ran:
|
|
20
|
+
WORKDIR $RAILS_ROOT
|
|
21
|
+
|
|
22
|
+
# Copy the Gemfile as well as the Gemfile.lock and install
|
|
23
|
+
# the RubyGems. This is a separate step so the dependencies
|
|
24
|
+
# will be cached unless changes to one of those two files
|
|
25
|
+
# are made.
|
|
26
|
+
COPY Gemfile /var/app/Gemfile
|
|
27
|
+
COPY Gemfile.lock /var/app/Gemfile.lock
|
|
28
|
+
RUN gem install bundler && bundle install --jobs 20 --retry 5
|
|
29
|
+
|
|
30
|
+
# Copy the main application.
|
|
31
|
+
COPY . .
|
|
32
|
+
|
|
33
|
+
# Expose port 3000 to the Docker host, so we can access it
|
|
34
|
+
# from the outside.
|
|
35
|
+
EXPOSE 3000
|
|
36
|
+
|
|
37
|
+
# The main command to run when the container starts. Also
|
|
38
|
+
# tell the Rails dev server to bind to all interfaces by
|
|
39
|
+
# default.
|
|
40
|
+
CMD ["bundle", "exec", "rails", "server", "-b", "0.0.0.0"]
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
source 'https://rubygems.org'
|
|
2
|
+
|
|
3
|
+
git_source(:github) do |repo_name|
|
|
4
|
+
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
|
|
5
|
+
"https://github.com/#{repo_name}.git"
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
|
|
10
|
+
gem 'rails', '~> 5.1.4'
|
|
11
|
+
# Use mysql as the database for Active Record
|
|
12
|
+
gem 'mysql2', '>= 0.3.18', '< 0.5'
|
|
13
|
+
# Use Puma as the app server
|
|
14
|
+
gem 'puma', '~> 3.7'
|
|
15
|
+
# Use SCSS for stylesheets
|
|
16
|
+
gem 'sass-rails', '~> 5.0'
|
|
17
|
+
# Use Uglifier as compressor for JavaScript assets
|
|
18
|
+
gem 'uglifier', '>= 1.3.0'
|
|
19
|
+
# See https://github.com/rails/execjs#readme for more supported runtimes
|
|
20
|
+
gem 'therubyracer', platforms: :ruby
|
|
21
|
+
|
|
22
|
+
# Use CoffeeScript for .coffee assets and views
|
|
23
|
+
gem 'coffee-rails', '~> 4.2'
|
|
24
|
+
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
|
|
25
|
+
gem 'turbolinks', '~> 5'
|
|
26
|
+
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
|
|
27
|
+
gem 'jbuilder', '~> 2.5'
|
|
28
|
+
|
|
29
|
+
# Use Redis adapter to run Action Cable in production
|
|
30
|
+
# gem 'redis', '~> 3.0'
|
|
31
|
+
|
|
32
|
+
# Use ActiveModel has_secure_password
|
|
33
|
+
# gem 'bcrypt', '~> 3.1.7'
|
|
34
|
+
|
|
35
|
+
gem 'state_machines'
|
|
36
|
+
gem 'state_machines-activerecord'
|
|
37
|
+
|
|
38
|
+
# If you are working parallely on development version of kuppayam or usman,
|
|
39
|
+
# and would like to use them use the kuppayam project path of your system
|
|
40
|
+
gem 'sbidu_generators', path: "/Users/rightsolutions/Projects/Products/sbidu_generators"
|
|
41
|
+
gem 'kuppayam', path: "/Users/rightsolutions/Projects/Products/kuppayam"
|
|
42
|
+
gem 'pattana', path: "/Users/rightsolutions/Projects/Products/pattana"
|
|
43
|
+
gem 'usman', path: "/Users/rightsolutions/Projects/Products/usman"
|
|
44
|
+
gem 'dhatu', path: "/Users/rightsolutions/Projects/Products/dhatu"
|
|
45
|
+
|
|
46
|
+
# otherwise just use a published gem
|
|
47
|
+
# gem "sbidu_generators"
|
|
48
|
+
# gem "kuppayam", '~> 0.1', ">= 0.1.30"
|
|
49
|
+
# gem "pattana", '~> 0.1', ">= 0.1.22"
|
|
50
|
+
# gem "usman", '~> 0.3', ">= 0.3.33"
|
|
51
|
+
# gem "dhatu", '~> 0.1', ">= 0.1.15"
|
|
52
|
+
|
|
53
|
+
gem "filesize", "~> 0.1", ">= 0.1.0"
|
|
54
|
+
gem "colorize"
|
|
55
|
+
gem 'carrierwave', "~> 1.1", ">= 1.1.0"
|
|
56
|
+
gem 'carrierwave-base64'
|
|
57
|
+
# gem 'fog'
|
|
58
|
+
gem 'mini_magick', "~> 4.8", ">= 4.8.0"
|
|
59
|
+
gem "kaminari"
|
|
60
|
+
|
|
61
|
+
gem "active_model_serializers"
|
|
62
|
+
gem 'listen', '>= 3.0.5', '< 3.2'
|
|
63
|
+
|
|
64
|
+
group :test do
|
|
65
|
+
gem "shoulda"
|
|
66
|
+
#gem 'cucumber-rails', :require => false
|
|
67
|
+
#gem 'cucumber-websteps'
|
|
68
|
+
#gem 'pickle'
|
|
69
|
+
#gem 'capybara'
|
|
70
|
+
gem 'database_cleaner'
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
group :development do
|
|
74
|
+
# Access an IRB console on exception pages or by using console anywhere in the code.
|
|
75
|
+
gem 'web-console', '>= 3.3.0'
|
|
76
|
+
|
|
77
|
+
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
|
|
78
|
+
gem 'spring'
|
|
79
|
+
gem 'spring-watcher-listen', '~> 2.0.0'
|
|
80
|
+
|
|
81
|
+
gem 'capistrano', '~> 3.4.1', '>= 3.4.1'
|
|
82
|
+
gem 'capistrano-rbenv', github: "capistrano/rbenv"
|
|
83
|
+
gem 'capistrano-rails', '~> 1.1.3'
|
|
84
|
+
gem 'capistrano-bundler', '~> 1.1.4'
|
|
85
|
+
gem 'capistrano3-puma'
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
group :development, :test do
|
|
89
|
+
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
|
|
90
|
+
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
|
|
91
|
+
|
|
92
|
+
# Adds support for Capybara system testing and selenium driver
|
|
93
|
+
gem 'capybara', '~> 2.13'
|
|
94
|
+
gem 'selenium-webdriver'
|
|
95
|
+
|
|
96
|
+
gem 'rspec-rails', '~> 3.5'
|
|
97
|
+
gem 'factory_bot_rails'
|
|
98
|
+
|
|
99
|
+
gem 'pry', '~> 0.10.4'
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
|
103
|
+
# gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
|