Class: Rockstart::Authorization::Auth0Generator

Inherits:
BaseGenerator
  • Object
show all
Includes:
Rails::Generators::AppName
Defined in:
lib/generators/rockstart/authorization/auth0/auth0_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_controllersObject



24
25
26
27
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 24

def add_controllers
  directory "app"
  directory "spec"
end

#add_initializerObject



20
21
22
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 20

def add_initializer
  copy_file "auth0_initializer.rb", "config/initializers/auth0.rb"
end

#add_routesObject



35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 35

def add_routes
  route <<~ROUTE
    # Auth0 Session Routes
    get "auth/sign_in" => "auth#new", as: :auth_sign_in
    get "auth/sign_out" => "auth#sign_out", as: :auth_sign_out
    delete "auth/sign_out" => "auth#destroy"

    get "callback" => "auth#callback"
    get "auth/failure" => "auth#failure"

  ROUTE
  change_application_url("url_for_authentication", "auth_sign_in_path")
end

#add_session_auth_to_controllersObject



29
30
31
32
33
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 29

def add_session_auth_to_controllers
  inject_into_file "app/controllers/application_controller.rb",
                   "  include SessionAuth\n",
                   before: /^end$/
end

#add_translationsObject



16
17
18
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 16

def add_translations
  copy_file "auth0.en.yml", "config/locales/auth0.en.yml"
end

#add_utilsObject



11
12
13
14
# File 'lib/generators/rockstart/authorization/auth0/auth0_generator.rb', line 11

def add_utils
  template "auth0_util.rb", "lib/utils/auth0.rb"
  copy_file "auth0_util_spec.rb", "spec/utils/auth0_spec.rb"
end