Rails app:update
This commit is contained in:
parent
fc3aece318
commit
6a24c3f812
15 changed files with 79 additions and 27 deletions
|
@ -1,6 +1,4 @@
|
||||||
class ActiveStorage::VirusScanner
|
class ActiveStorage::VirusScanner
|
||||||
include ActiveStorage::Downloading
|
|
||||||
|
|
||||||
def initialize(blob)
|
def initialize(blob)
|
||||||
@blob = blob
|
@blob = blob
|
||||||
end
|
end
|
||||||
|
@ -32,7 +30,7 @@ class ActiveStorage::VirusScanner
|
||||||
end
|
end
|
||||||
|
|
||||||
def metadata
|
def metadata
|
||||||
download_blob_to_tempfile do |file|
|
blob.open do |file|
|
||||||
if ClamavService.safe_file?(file.path)
|
if ClamavService.safe_file?(file.path)
|
||||||
{ virus_scan_result: SAFE, scanned_at: Time.zone.now }
|
{ virus_scan_result: SAFE, scanned_at: Time.zone.now }
|
||||||
else
|
else
|
||||||
|
|
|
@ -6,7 +6,7 @@ module BlobSignedIdConcern
|
||||||
# This is a measure to ensure that we never under any circumstance
|
# This is a measure to ensure that we never under any circumstance
|
||||||
# expose permanent attachment url
|
# expose permanent attachment url
|
||||||
def signed_id
|
def signed_id
|
||||||
ActiveStorage.verifier.generate(id, purpose: :blob_id, expires_in: ActiveStorage::Service.url_expires_in)
|
ActiveStorage.verifier.generate(id, purpose: :blob_id, expires_in: Rails.application.config.active_storage.service_urls_expire_in)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,9 +1,4 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
begin
|
|
||||||
load File.expand_path('../spring', __FILE__)
|
|
||||||
rescue LoadError => e
|
|
||||||
raise unless e.message.include?('spring')
|
|
||||||
end
|
|
||||||
APP_PATH = File.expand_path('../config/application', __dir__)
|
APP_PATH = File.expand_path('../config/application', __dir__)
|
||||||
require_relative '../config/boot'
|
require_relative '../config/boot'
|
||||||
require 'rails/commands'
|
require 'rails/commands'
|
||||||
|
|
5
bin/rake
5
bin/rake
|
@ -1,9 +1,4 @@
|
||||||
#!/usr/bin/env ruby
|
#!/usr/bin/env ruby
|
||||||
begin
|
|
||||||
load File.expand_path('../spring', __FILE__)
|
|
||||||
rescue LoadError => e
|
|
||||||
raise unless e.message.include?('spring')
|
|
||||||
end
|
|
||||||
require_relative '../config/boot'
|
require_relative '../config/boot'
|
||||||
require 'rake'
|
require 'rake'
|
||||||
Rake.application.run
|
Rake.application.run
|
||||||
|
|
4
bin/yarn
4
bin/yarn
|
@ -4,8 +4,8 @@ Dir.chdir(APP_ROOT) do
|
||||||
begin
|
begin
|
||||||
exec "yarnpkg", *ARGV
|
exec "yarnpkg", *ARGV
|
||||||
rescue Errno::ENOENT
|
rescue Errno::ENOENT
|
||||||
warn "Yarn executable was not detected in the system."
|
$stderr.puts "Yarn executable was not detected in the system."
|
||||||
warn "Download Yarn at https://yarnpkg.com/en/docs/install"
|
$stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
|
||||||
exit 1
|
exit 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -10,6 +10,7 @@ Dotenv::Railtie.load
|
||||||
|
|
||||||
module TPS
|
module TPS
|
||||||
class Application < Rails::Application
|
class Application < Rails::Application
|
||||||
|
config.load_defaults 5.0
|
||||||
# Settings in config/environments/* take precedence over those specified here.
|
# Settings in config/environments/* take precedence over those specified here.
|
||||||
# Application configuration should go into files in config/initializers
|
# Application configuration should go into files in config/initializers
|
||||||
# -- all .rb files in that directory are automatically loaded.
|
# -- all .rb files in that directory are automatically loaded.
|
||||||
|
@ -33,7 +34,9 @@ module TPS
|
||||||
|
|
||||||
config.active_job.queue_adapter = :delayed_job
|
config.active_job.queue_adapter = :delayed_job
|
||||||
|
|
||||||
config.action_view.sanitized_allowed_tags = ActionView::Base.sanitized_allowed_tags + ['u']
|
config.action_view.sanitized_allowed_tags = ['u']
|
||||||
|
|
||||||
|
config.active_record.belongs_to_required_by_default = false
|
||||||
|
|
||||||
# Some mobile browsers have a behaviour where, although they will delete the session
|
# Some mobile browsers have a behaviour where, although they will delete the session
|
||||||
# cookie when the browser shutdowns, they will still serve a cached version
|
# cookie when the browser shutdowns, they will still serve a cached version
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# Load the Rails application.
|
# Load the Rails application.
|
||||||
require File.expand_path('application', __dir__)
|
require_relative 'application'
|
||||||
|
|
||||||
# Initialize the Rails application.
|
# Initialize the Rails application.
|
||||||
Rails.application.initialize!
|
Rails.application.initialize!
|
||||||
|
|
|
@ -30,6 +30,9 @@ Rails.application.configure do
|
||||||
# Raise an error on page load if there are pending migrations.
|
# Raise an error on page load if there are pending migrations.
|
||||||
config.active_record.migration_error = :page_load
|
config.active_record.migration_error = :page_load
|
||||||
|
|
||||||
|
# Highlight code that triggered database queries in logs.
|
||||||
|
config.active_record.verbose_query_logs = true
|
||||||
|
|
||||||
# Debug mode disables concatenation and preprocessing of assets.
|
# Debug mode disables concatenation and preprocessing of assets.
|
||||||
# This option may cause significant delays in view rendering with a large
|
# This option may cause significant delays in view rendering with a large
|
||||||
# number of complex assets.
|
# number of complex assets.
|
||||||
|
@ -84,4 +87,6 @@ Rails.application.configure do
|
||||||
if ENV['RAILS_QUEUE_ADAPTER']
|
if ENV['RAILS_QUEUE_ADAPTER']
|
||||||
config.active_job.queue_adapter = ENV['RAILS_QUEUE_ADAPTER'].to_sym
|
config.active_job.queue_adapter = ENV['RAILS_QUEUE_ADAPTER'].to_sym
|
||||||
end
|
end
|
||||||
|
|
||||||
|
config.file_watcher = ActiveSupport::EventedFileUpdateChecker
|
||||||
end
|
end
|
||||||
|
|
|
@ -31,7 +31,7 @@ Rails.application.configure do
|
||||||
# ActionMailer::Base.deliveries array.
|
# ActionMailer::Base.deliveries array.
|
||||||
config.action_mailer.delivery_method = :test
|
config.action_mailer.delivery_method = :test
|
||||||
|
|
||||||
config.active_storage.service = :local
|
config.active_storage.service = :test
|
||||||
|
|
||||||
# Randomize the order test cases are executed.
|
# Randomize the order test cases are executed.
|
||||||
config.active_support.test_order = :random
|
config.active_support.test_order = :random
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
ActiveStorage::Service.url_expires_in = 1.hour
|
Rails.application.config.active_storage.service_urls_expire_in = 1.hour
|
||||||
|
|
||||||
# In Rails 5.2, we have to hook at `on_load` on the blob themeselves, which is
|
# In Rails 5.2, we have to hook at `on_load` on the blob themeselves, which is
|
||||||
# not ideal.
|
# not ideal.
|
||||||
|
|
8
config/initializers/application_controller_renderer.rb
Normal file
8
config/initializers/application_controller_renderer.rb
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
|
# ActiveSupport::Reloader.to_prepare do
|
||||||
|
# ApplicationController.renderer.defaults.merge!(
|
||||||
|
# http_host: 'example.org',
|
||||||
|
# https: false
|
||||||
|
# )
|
||||||
|
# end
|
|
@ -1,3 +1,5 @@
|
||||||
# Be sure to restart your server when you modify this file.
|
# Be sure to restart your server when you modify this file.
|
||||||
|
|
||||||
|
# Specify a serializer for the signed and encrypted cookie jars.
|
||||||
|
# Valid options are :json, :marshal, and :hybrid.
|
||||||
Rails.application.config.action_dispatch.cookies_serializer = :json
|
Rails.application.config.action_dispatch.cookies_serializer = :json
|
||||||
|
|
45
config/initializers/new_framework_defaults_6_0.rb
Normal file
45
config/initializers/new_framework_defaults_6_0.rb
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
# Be sure to restart your server when you modify this file.
|
||||||
|
#
|
||||||
|
# This file contains migration options to ease your Rails 6.0 upgrade.
|
||||||
|
#
|
||||||
|
# Once upgraded flip defaults one by one to migrate to the new default.
|
||||||
|
#
|
||||||
|
# Read the Guide for Upgrading Ruby on Rails for more info on each option.
|
||||||
|
|
||||||
|
# Don't force requests from old versions of IE to be UTF-8 encoded.
|
||||||
|
# Rails.application.config.action_view.default_enforce_utf8 = false
|
||||||
|
|
||||||
|
# Embed purpose and expiry metadata inside signed and encrypted
|
||||||
|
# cookies for increased security.
|
||||||
|
#
|
||||||
|
# This option is not backwards compatible with earlier Rails versions.
|
||||||
|
# It's best enabled when your entire app is migrated and stable on 6.0.
|
||||||
|
# Rails.application.config.action_dispatch.use_cookies_with_metadata = true
|
||||||
|
|
||||||
|
# Change the return value of `ActionDispatch::Response#content_type` to Content-Type header without modification.
|
||||||
|
# Rails.application.config.action_dispatch.return_only_media_type_on_content_type = false
|
||||||
|
|
||||||
|
# Return false instead of self when enqueuing is aborted from a callback.
|
||||||
|
# Rails.application.config.active_job.return_false_on_aborted_enqueue = true
|
||||||
|
|
||||||
|
# Send Active Storage analysis and purge jobs to dedicated queues.
|
||||||
|
# Rails.application.config.active_storage.queues.analysis = :active_storage_analysis
|
||||||
|
# Rails.application.config.active_storage.queues.purge = :active_storage_purge
|
||||||
|
|
||||||
|
# When assigning to a collection of attachments declared via `has_many_attached`, replace existing
|
||||||
|
# attachments instead of appending. Use #attach to add new attachments without replacing existing ones.
|
||||||
|
# Rails.application.config.active_storage.replace_on_assign_to_many = true
|
||||||
|
|
||||||
|
# Use ActionMailer::MailDeliveryJob for sending parameterized and normal mail.
|
||||||
|
#
|
||||||
|
# The default delivery jobs (ActionMailer::Parameterized::DeliveryJob, ActionMailer::DeliveryJob),
|
||||||
|
# will be removed in Rails 6.1. This setting is not backwards compatible with earlier Rails versions.
|
||||||
|
# If you send mail in the background, job workers need to have a copy of
|
||||||
|
# MailDeliveryJob to ensure all delivery jobs are processed properly.
|
||||||
|
# Make sure your entire app is migrated and stable on 6.0 before using this setting.
|
||||||
|
# Rails.application.config.action_mailer.delivery_job = "ActionMailer::MailDeliveryJob"
|
||||||
|
|
||||||
|
# Enable the same cache key to be reused when the object being cached of type
|
||||||
|
# `ActiveRecord::Relation` changes by moving the volatile information (max updated at and count)
|
||||||
|
# of the relation's cache key into the cache version to support recycling cache key.
|
||||||
|
# Rails.application.config.active_record.collection_cache_versioning = true
|
6
config/spring.rb
Normal file
6
config/spring.rb
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
Spring.watch(
|
||||||
|
".ruby-version",
|
||||||
|
".rbenv-vars",
|
||||||
|
"tmp/restart.txt",
|
||||||
|
"tmp/caching-dev.txt"
|
||||||
|
)
|
|
@ -380,18 +380,13 @@ describe Procedure do
|
||||||
let!(:assign_to_2) { create(:assign_to, procedure: procedure, groupe_instructeur: groupe_instructeur_1, instructeur: instructeur_2) }
|
let!(:assign_to_2) { create(:assign_to, procedure: procedure, groupe_instructeur: groupe_instructeur_1, instructeur: instructeur_2) }
|
||||||
|
|
||||||
before do
|
before do
|
||||||
@logo = File.open('spec/fixtures/files/white.png')
|
@logo = Rack::Test::UploadedFile.new('spec/fixtures/files/white.png', 'image/png')
|
||||||
@signature = File.open('spec/fixtures/files/black.png')
|
@signature = Rack::Test::UploadedFile.new('spec/fixtures/files/black.png', 'image/png')
|
||||||
@attestation_template = create(:attestation_template, procedure: procedure, logo: @logo, signature: @signature)
|
@attestation_template = create(:attestation_template, procedure: procedure, logo: @logo, signature: @signature)
|
||||||
@procedure = procedure.clone(administrateur, from_library)
|
@procedure = procedure.clone(administrateur, from_library)
|
||||||
@procedure.save
|
@procedure.save
|
||||||
end
|
end
|
||||||
|
|
||||||
after do
|
|
||||||
@logo.close
|
|
||||||
@signature.close
|
|
||||||
end
|
|
||||||
|
|
||||||
subject { @procedure }
|
subject { @procedure }
|
||||||
|
|
||||||
it { expect(subject.parent_procedure).to eq(procedure) }
|
it { expect(subject.parent_procedure).to eq(procedure) }
|
||||||
|
|
Loading…
Add table
Reference in a new issue