Merge pull request 'Configure letter opener to read emails via web UI' (#150) from letter-opener into main
Reviewed-on: #150
This commit is contained in:
commit
06f8039f40
1
Gemfile
1
Gemfile
@ -35,6 +35,7 @@ end
|
||||
group :development do
|
||||
gem 'rubocop'
|
||||
gem 'web-console'
|
||||
gem 'letter_opener_web'
|
||||
end
|
||||
|
||||
gem 'chroma'
|
||||
|
13
Gemfile.lock
13
Gemfile.lock
@ -88,6 +88,8 @@ GEM
|
||||
bootsnap (1.18.4)
|
||||
msgpack (~> 1.2)
|
||||
builder (3.3.0)
|
||||
childprocess (5.1.0)
|
||||
logger (~> 1.5)
|
||||
chroma (0.2.0)
|
||||
coderay (1.1.3)
|
||||
concurrent-ruby (1.3.4)
|
||||
@ -150,6 +152,16 @@ GEM
|
||||
jsonapi-serializable (0.3.1)
|
||||
jsonapi-renderer (~> 0.2.0)
|
||||
language_server-protocol (3.17.0.3)
|
||||
launchy (3.0.1)
|
||||
addressable (~> 2.8)
|
||||
childprocess (~> 5.0)
|
||||
letter_opener (1.10.0)
|
||||
launchy (>= 2.2, < 4)
|
||||
letter_opener_web (3.0.0)
|
||||
actionmailer (>= 6.1)
|
||||
letter_opener (~> 1.9)
|
||||
railties (>= 6.1)
|
||||
rexml
|
||||
license_finder (7.2.1)
|
||||
bundler
|
||||
csv (~> 3.2)
|
||||
@ -386,6 +398,7 @@ DEPENDENCIES
|
||||
importmap-rails
|
||||
jbuilder
|
||||
jsonapi-rails
|
||||
letter_opener_web
|
||||
license_finder
|
||||
money
|
||||
pg (~> 1.1)
|
||||
|
@ -59,6 +59,10 @@ The backend, frontend and workers have hot-reloading enabled, so changes made to
|
||||
|
||||
Once all containers have started, visit http://libre-wedding-planner.app.localhost/dashboard to load the application.
|
||||
|
||||
## Email delivery
|
||||
|
||||
In the development environment, real emails will not be sent. You can visit http://libre-wedding-planner.app.localhost/letter_opener/ to get a list of emails generated by the application.
|
||||
|
||||
## Testing
|
||||
|
||||
Unit tests can be executed with
|
||||
|
@ -31,7 +31,7 @@ class ApplicationController < ActionController::Base
|
||||
|
||||
def development_swagger?
|
||||
Rails.env.test? ||
|
||||
Rails.env.development? && request.headers['referer'].include?('/api-docs/index.html')
|
||||
Rails.env.development? && request.headers['referer']&.include?('/api-docs/index.html')
|
||||
end
|
||||
|
||||
def set_csrf_cookie
|
||||
|
@ -7,7 +7,10 @@ class Users::ConfirmationsController < Devise::ConfirmationsController
|
||||
def show
|
||||
super do |resource|
|
||||
if resource.errors.empty?
|
||||
render json: resource, status: :ok
|
||||
respond_to do |format|
|
||||
format.json { render json: resource, status: :ok }
|
||||
format.any { redirect_to root_path }
|
||||
end
|
||||
else
|
||||
render json: {
|
||||
message: 'Record invalid',
|
||||
|
@ -40,10 +40,10 @@ Rails.application.configure do
|
||||
|
||||
# Don't care if the mailer can't send.
|
||||
config.action_mailer.raise_delivery_errors = false
|
||||
|
||||
config.action_mailer.perform_caching = false
|
||||
|
||||
config.action_mailer.default_url_options = { host: 'libre-wedding-planner.app.localhost' }
|
||||
config.action_mailer.default_url_options = { host: 'libre-wedding-planner.app.localhost/api' }
|
||||
config.action_mailer.delivery_method = :letter_opener_web
|
||||
config.action_mailer.perform_deliveries = true
|
||||
|
||||
# Print deprecation notices to the Rails logger.
|
||||
config.active_support.deprecation = :log
|
||||
|
@ -1,6 +1,7 @@
|
||||
# Copyright (C) 2024 Manuel Bustillo
|
||||
|
||||
Rails.application.routes.draw do
|
||||
mount LetterOpenerWeb::Engine, at: "/letter_opener" if Rails.env.development?
|
||||
devise_for :users, skip: [:registration, :session, :confirmation]
|
||||
devise_scope :user do
|
||||
post 'users', to: 'users/registrations#create'
|
||||
@ -23,4 +24,6 @@ Rails.application.routes.draw do
|
||||
resources :tables_arrangements, only: %i[index show]
|
||||
|
||||
get 'up' => 'rails/health#show', as: :rails_health_check
|
||||
|
||||
root to: redirect('/dashboard')
|
||||
end
|
||||
|
@ -7,6 +7,11 @@ server {
|
||||
proxy_set_header Host $http_host;
|
||||
}
|
||||
|
||||
location /letter_opener/ {
|
||||
proxy_pass http://backend:3000/letter_opener/;
|
||||
proxy_set_header Host $http_host;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://frontend:3000;
|
||||
proxy_set_header Host $http_host;
|
||||
|
Loading…
x
Reference in New Issue
Block a user