This commit is contained in:
2022-04-09 14:28:59 +03:00
27 changed files with 425 additions and 103 deletions

View File

@ -5,21 +5,21 @@
# gem "sqlite3"
#
default: &default
adapter: sqlite3
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
adapter: postgresql
encoding: unicode
user: postgres
development:
<<: *default
database: db/development.sqlite3
database: gateway_test
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
database: gateway_dev
production:
<<: *default
database: db/production.sqlite3
database: gateway_production

View File

@ -10,10 +10,10 @@ require "mina/whenever"
# branch - Branch name to deploy. (needed by mina/git)
set :application_name, 'gateway'
set :domain, 'web-server.local'
set :domain, '192.168.128.100'
set :deploy_to, '/home/feenix/gateway'
set :repository, "https://github.com/rubydesign/gateway.git"
set :branch, 'main'
set :branch, 'passenger'
# Optional settings:
set :user, 'feenix' # Username in the server to SSH to.
@ -59,8 +59,9 @@ task :deploy do
on :launch do
in_path(fetch(:current_path)) do
invoke :'puma:hard_restart'
invoke :'passenger:restart'
end
invoke :'whenever:update'
end
end
@ -68,6 +69,12 @@ task :deploy do
# run(:local){ say 'done' }
end
# For help in making your deploy script, see the Mina documentation:
#
# - https://github.com/mina-deploy/mina/tree/master/docs
namespace :passenger do
desc "Restart Passenger"
task :restart do
command %{
echo "-----> Restarting passenger"
#{echo_cmd %[touch tmp/restart.txt]}
}
end
end

View File

@ -1,48 +0,0 @@
# Puma can serve each request in a thread from an internal thread pool.
# The `threads` method setting takes two numbers: a minimum and maximum.
# Any libraries that use thread pools should be configured to match
# the maximum value specified for Puma. Default is set to 5 threads for minimum
# and maximum; this matches the default thread size of Active Record.
#
max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }
threads min_threads_count, max_threads_count
# Specifies the `worker_timeout` threshold that Puma will use to wait before
# terminating a worker in development environments.
#
worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development"
# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
#
port ENV.fetch("PORT") { 3000 }
# Specifies the `environment` that Puma will run in.
#
environment ENV.fetch("RAILS_ENV") { "development" }
# Specifies the `pidfile` that Puma will use.
pidfile ENV.fetch("PIDFILE") { "tmp/pids/puma.pid" }
bind 'unix://tmp/sockets/pumactl.sock'
# mina/puma expects it
state_path 'tmp/sockets/puma.state'
# Specifies the number of `workers` to boot in clustered mode.
# Workers are forked web server processes. If using threads and workers together
# the concurrency of the application would be max `threads` * `workers`.
# Workers do not work on JRuby or Windows (both of which do not support
# processes).
#
# workers ENV.fetch("WEB_CONCURRENCY") { 2 }
# Use the `preload_app!` method when specifying a `workers` number.
# This directive tells Puma to first boot the application and load code
# before forking the application. This takes advantage of Copy On Write
# process behavior so workers use less memory.
#
# preload_app!
# Allow puma to be restarted by `bin/rails restart` command.
plugin :tmp_restart

10
config/schedule.rb Normal file
View File

@ -0,0 +1,10 @@
# Use this file to easily define all of your cron jobs.
#
set :output, "/home/feenix/gateway/shared/log/whenever.log"
every :hour do
rake "dns:update"
end
# Learn more: http://github.com/javan/whenever