Upgrade to Ruby 3.4.5, Rails 8.0.2
Also improved the upgrade process a tiny bit, with some Ansible config simplifications.
This commit is contained in:
parent
234c866e28
commit
ba873e9e55
163 changed files with 126 additions and 116 deletions
|
|
@ -1 +1 @@
|
|||
3.3.7
|
||||
3.4.5
|
||||
|
|
|
|||
2
Gemfile
2
Gemfile
|
|
@ -1,5 +1,5 @@
|
|||
source 'https://rubygems.org'
|
||||
ruby '3.3.7'
|
||||
ruby '3.4.5'
|
||||
|
||||
gem 'rails', '~> 8.0', '>= 8.0.1'
|
||||
|
||||
|
|
|
|||
189
Gemfile.lock
189
Gemfile.lock
|
|
@ -81,13 +81,15 @@ GEM
|
|||
addressable (2.8.7)
|
||||
public_suffix (>= 2.0.2, < 7.0)
|
||||
aes_key_wrap (1.1.0)
|
||||
ast (2.4.2)
|
||||
async (2.21.1)
|
||||
ast (2.4.3)
|
||||
async (2.26.0)
|
||||
console (~> 1.29)
|
||||
fiber-annotation
|
||||
io-event (~> 1.6, >= 1.6.5)
|
||||
async-container (0.18.3)
|
||||
async (~> 2.10)
|
||||
io-event (~> 1.12)
|
||||
metrics (~> 0.12)
|
||||
traces (~> 0.15)
|
||||
async-container (0.24.0)
|
||||
async (~> 2.22)
|
||||
async-http (0.86.0)
|
||||
async (>= 2.10.2)
|
||||
async-pool (~> 0.9)
|
||||
|
|
@ -98,12 +100,11 @@ GEM
|
|||
protocol-http1 (>= 0.28.1)
|
||||
protocol-http2 (~> 0.22)
|
||||
traces (~> 0.10)
|
||||
async-http-cache (0.4.4)
|
||||
async-http-cache (0.4.5)
|
||||
async-http (~> 0.56)
|
||||
async-pool (0.10.2)
|
||||
async (>= 1.25)
|
||||
traces
|
||||
async-service (0.12.0)
|
||||
async-pool (0.11.0)
|
||||
async (>= 2.0)
|
||||
async-service (0.13.0)
|
||||
async
|
||||
async-container (~> 0.16)
|
||||
attr_required (1.0.2)
|
||||
|
|
@ -112,20 +113,20 @@ GEM
|
|||
babel-source (>= 4.0, < 6)
|
||||
execjs (~> 2.0)
|
||||
backport (1.2.0)
|
||||
base64 (0.2.0)
|
||||
base64 (0.3.0)
|
||||
bcrypt (3.1.20)
|
||||
benchmark (0.4.0)
|
||||
bigdecimal (3.1.9)
|
||||
bindata (2.5.0)
|
||||
benchmark (0.4.1)
|
||||
bigdecimal (3.2.2)
|
||||
bindata (2.5.1)
|
||||
bindex (0.8.1)
|
||||
bootsnap (1.18.4)
|
||||
bootsnap (1.18.6)
|
||||
msgpack (~> 1.2)
|
||||
builder (3.3.0)
|
||||
childprocess (5.1.0)
|
||||
logger (~> 1.5)
|
||||
concurrent-ruby (1.3.5)
|
||||
connection_pool (2.5.0)
|
||||
console (1.29.2)
|
||||
connection_pool (2.5.3)
|
||||
console (1.32.0)
|
||||
fiber-annotation
|
||||
fiber-local (~> 1.1)
|
||||
json
|
||||
|
|
@ -145,18 +146,19 @@ GEM
|
|||
warden (~> 1.2.3)
|
||||
devise-encryptable (0.2.0)
|
||||
devise (>= 2.1.0)
|
||||
diff-lcs (1.5.1)
|
||||
diff-lcs (1.6.2)
|
||||
dotenv (2.8.1)
|
||||
dotenv-rails (2.8.1)
|
||||
dotenv (= 2.8.1)
|
||||
railties (>= 3.2)
|
||||
drb (2.2.1)
|
||||
drb (2.2.3)
|
||||
e2mmap (0.1.0)
|
||||
email_validator (2.2.4)
|
||||
activemodel
|
||||
erb (5.0.2)
|
||||
erubi (1.13.1)
|
||||
execjs (2.10.0)
|
||||
falcon (0.48.4)
|
||||
falcon (0.48.6)
|
||||
async
|
||||
async-container (~> 0.18)
|
||||
async-http (~> 0.75)
|
||||
|
|
@ -169,42 +171,42 @@ GEM
|
|||
protocol-http (~> 0.31)
|
||||
protocol-rack (~> 0.7)
|
||||
samovar (~> 2.3)
|
||||
faraday (2.12.2)
|
||||
faraday (2.13.3)
|
||||
faraday-net_http (>= 2.0, < 3.5)
|
||||
json
|
||||
logger
|
||||
faraday-follow_redirects (0.3.0)
|
||||
faraday (>= 1, < 3)
|
||||
faraday-net_http (3.4.0)
|
||||
faraday-net_http (3.4.1)
|
||||
net-http (>= 0.5.0)
|
||||
ffi (1.17.1)
|
||||
ffi (1.17.2)
|
||||
fiber-annotation (0.2.0)
|
||||
fiber-local (1.1.0)
|
||||
fiber-storage
|
||||
fiber-storage (1.0.0)
|
||||
fiber-storage (1.0.1)
|
||||
globalid (1.2.1)
|
||||
activesupport (>= 6.1)
|
||||
haml (6.3.0)
|
||||
temple (>= 0.8.2)
|
||||
thor
|
||||
tilt
|
||||
hashdiff (1.1.2)
|
||||
hashdiff (1.2.0)
|
||||
hashie (5.0.0)
|
||||
http_accept_language (2.1.1)
|
||||
i18n (1.14.7)
|
||||
concurrent-ruby (~> 1.0)
|
||||
io-console (0.8.0)
|
||||
io-endpoint (0.14.0)
|
||||
io-event (1.7.5)
|
||||
io-stream (0.6.1)
|
||||
irb (1.15.1)
|
||||
io-console (0.8.1)
|
||||
io-endpoint (0.15.2)
|
||||
io-event (1.12.0)
|
||||
io-stream (0.10.0)
|
||||
irb (1.15.2)
|
||||
pp (>= 0.6.0)
|
||||
rdoc (>= 4.0.0)
|
||||
reline (>= 0.4.2)
|
||||
jaro_winkler (1.6.0)
|
||||
jaro_winkler (1.6.1)
|
||||
jsbundling-rails (1.3.1)
|
||||
railties (>= 6.0.0)
|
||||
json (2.9.1)
|
||||
json (2.13.0)
|
||||
json-jwt (1.16.7)
|
||||
activesupport (>= 4.2)
|
||||
aes_key_wrap
|
||||
|
|
@ -216,15 +218,17 @@ GEM
|
|||
rexml (>= 3.3.9)
|
||||
kramdown-parser-gfm (1.1.0)
|
||||
kramdown (~> 2.0)
|
||||
language_server-protocol (3.17.0.3)
|
||||
launchy (3.0.1)
|
||||
language_server-protocol (3.17.0.5)
|
||||
launchy (3.1.1)
|
||||
addressable (~> 2.8)
|
||||
childprocess (~> 5.0)
|
||||
logger (~> 1.6)
|
||||
letter_opener (1.10.0)
|
||||
launchy (>= 2.2, < 4)
|
||||
localhost (1.3.1)
|
||||
lint_roller (1.1.0)
|
||||
localhost (1.5.0)
|
||||
logger (1.7.0)
|
||||
loofah (2.24.0)
|
||||
loofah (2.24.1)
|
||||
crass (~> 1.0.2)
|
||||
nokogiri (>= 1.12.0)
|
||||
mail (2.8.1)
|
||||
|
|
@ -232,18 +236,18 @@ GEM
|
|||
net-imap
|
||||
net-pop
|
||||
net-smtp
|
||||
mapping (1.1.1)
|
||||
mapping (1.1.3)
|
||||
marcel (1.0.4)
|
||||
memory_profiler (1.1.0)
|
||||
metrics (0.12.1)
|
||||
metrics (0.12.2)
|
||||
mini_mime (1.1.5)
|
||||
mini_portile2 (2.8.8)
|
||||
mini_portile2 (2.8.9)
|
||||
minitest (5.25.5)
|
||||
msgpack (1.7.5)
|
||||
msgpack (1.8.0)
|
||||
mysql2 (0.5.6)
|
||||
net-http (0.6.0)
|
||||
uri
|
||||
net-imap (0.5.6)
|
||||
net-imap (0.5.9)
|
||||
date
|
||||
net-protocol
|
||||
net-pop (0.1.2)
|
||||
|
|
@ -253,10 +257,10 @@ GEM
|
|||
net-smtp (0.5.1)
|
||||
net-protocol
|
||||
nio4r (2.7.4)
|
||||
nokogiri (1.18.6)
|
||||
nokogiri (1.18.9)
|
||||
mini_portile2 (~> 2.8.2)
|
||||
racc (~> 1.4)
|
||||
omniauth (2.1.2)
|
||||
omniauth (2.1.3)
|
||||
hashie (>= 3.4.6)
|
||||
rack (>= 2.2.3)
|
||||
rack-protection
|
||||
|
|
@ -281,33 +285,34 @@ GEM
|
|||
webfinger (~> 2.0)
|
||||
openssl (3.3.0)
|
||||
orm_adapter (0.5.0)
|
||||
parallel (1.26.3)
|
||||
parser (3.3.6.0)
|
||||
parallel (1.27.0)
|
||||
parser (3.3.8.0)
|
||||
ast (~> 2.4.1)
|
||||
racc
|
||||
pp (0.6.2)
|
||||
prettyprint
|
||||
prettyprint (0.2.0)
|
||||
process-metrics (0.3.0)
|
||||
prism (1.4.0)
|
||||
process-metrics (0.5.1)
|
||||
console (~> 1.8)
|
||||
json (~> 2)
|
||||
samovar (~> 2.1)
|
||||
protocol-hpack (1.5.1)
|
||||
protocol-http (0.47.1)
|
||||
protocol-http1 (0.28.1)
|
||||
protocol-http (0.51.0)
|
||||
protocol-http1 (0.34.1)
|
||||
protocol-http (~> 0.22)
|
||||
protocol-http2 (0.22.0)
|
||||
protocol-http2 (0.22.1)
|
||||
protocol-hpack (~> 1.4)
|
||||
protocol-http (~> 0.18)
|
||||
protocol-http (~> 0.47)
|
||||
protocol-rack (0.10.1)
|
||||
protocol-http (~> 0.37)
|
||||
rack (>= 1.0)
|
||||
psych (5.2.3)
|
||||
psych (5.2.6)
|
||||
date
|
||||
stringio
|
||||
public_suffix (6.0.1)
|
||||
public_suffix (6.0.2)
|
||||
racc (1.8.1)
|
||||
rack (3.1.12)
|
||||
rack (3.1.16)
|
||||
rack-attack (6.7.0)
|
||||
rack (>= 1.0, < 4)
|
||||
rack-mini-profiler (3.3.1)
|
||||
|
|
@ -323,7 +328,7 @@ GEM
|
|||
base64 (>= 0.1.0)
|
||||
logger (>= 1.6.0)
|
||||
rack (>= 3.0.0, < 4)
|
||||
rack-session (2.1.0)
|
||||
rack-session (2.1.1)
|
||||
base64 (>= 0.1.0)
|
||||
rack (>= 3.0.0)
|
||||
rack-test (2.2.0)
|
||||
|
|
@ -344,7 +349,7 @@ GEM
|
|||
activesupport (= 8.0.2)
|
||||
bundler (>= 1.15.0)
|
||||
railties (= 8.0.2)
|
||||
rails-dom-testing (2.2.0)
|
||||
rails-dom-testing (2.3.0)
|
||||
activesupport (>= 5.0.0)
|
||||
minitest
|
||||
nokogiri (>= 1.6)
|
||||
|
|
@ -363,10 +368,11 @@ GEM
|
|||
thor (~> 1.0, >= 1.2.2)
|
||||
zeitwerk (~> 2.6)
|
||||
rainbow (3.1.1)
|
||||
rake (13.2.1)
|
||||
rake (13.3.0)
|
||||
rbs (2.8.4)
|
||||
rdiscount (2.2.7.3)
|
||||
rdoc (6.13.1)
|
||||
rdoc (6.14.2)
|
||||
erb
|
||||
psych (>= 4.0.0)
|
||||
react-rails (2.7.1)
|
||||
babel-transpiler (>= 0.7.0)
|
||||
|
|
@ -375,23 +381,23 @@ GEM
|
|||
railties (>= 3.2)
|
||||
tilt
|
||||
regexp_parser (2.10.0)
|
||||
reline (0.6.0)
|
||||
reline (0.6.2)
|
||||
io-console (~> 0.5)
|
||||
responders (3.1.1)
|
||||
actionpack (>= 5.2)
|
||||
railties (>= 5.2)
|
||||
reverse_markdown (2.1.1)
|
||||
nokogiri
|
||||
rexml (3.4.0)
|
||||
rspec-core (3.13.2)
|
||||
rexml (3.4.1)
|
||||
rspec-core (3.13.5)
|
||||
rspec-support (~> 3.13.0)
|
||||
rspec-expectations (3.13.3)
|
||||
rspec-expectations (3.13.5)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.13.0)
|
||||
rspec-mocks (3.13.2)
|
||||
rspec-mocks (3.13.5)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.13.0)
|
||||
rspec-rails (7.1.0)
|
||||
rspec-rails (7.1.1)
|
||||
actionpack (>= 7.0)
|
||||
activesupport (>= 7.0)
|
||||
railties (>= 7.0)
|
||||
|
|
@ -399,19 +405,21 @@ GEM
|
|||
rspec-expectations (~> 3.13)
|
||||
rspec-mocks (~> 3.13)
|
||||
rspec-support (~> 3.13)
|
||||
rspec-support (3.13.2)
|
||||
rubocop (1.70.0)
|
||||
rspec-support (3.13.4)
|
||||
rubocop (1.78.0)
|
||||
json (~> 2.3)
|
||||
language_server-protocol (>= 3.17.0)
|
||||
language_server-protocol (~> 3.17.0.2)
|
||||
lint_roller (~> 1.1.0)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 3.3.0.2)
|
||||
rainbow (>= 2.2.2, < 4.0)
|
||||
regexp_parser (>= 2.9.3, < 3.0)
|
||||
rubocop-ast (>= 1.36.2, < 2.0)
|
||||
rubocop-ast (>= 1.45.1, < 2.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 2.4.0, < 4.0)
|
||||
rubocop-ast (1.37.0)
|
||||
parser (>= 3.3.1.0)
|
||||
rubocop-ast (1.46.0)
|
||||
parser (>= 3.3.7.2)
|
||||
prism (~> 1.4)
|
||||
ruby-progressbar (1.13.0)
|
||||
samovar (2.3.0)
|
||||
console (~> 1.0)
|
||||
|
|
@ -430,10 +438,10 @@ GEM
|
|||
sprockets-rails
|
||||
tilt
|
||||
securerandom (0.4.1)
|
||||
sentry-rails (5.22.1)
|
||||
sentry-rails (5.26.0)
|
||||
railties (>= 5.0)
|
||||
sentry-ruby (~> 5.22.1)
|
||||
sentry-ruby (5.22.1)
|
||||
sentry-ruby (~> 5.26.0)
|
||||
sentry-ruby (5.26.0)
|
||||
bigdecimal
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
shell (0.8.1)
|
||||
|
|
@ -455,18 +463,19 @@ GEM
|
|||
thor (~> 1.0)
|
||||
tilt (~> 2.0)
|
||||
yard (~> 0.9, >= 0.9.24)
|
||||
solargraph-rails (1.1.0)
|
||||
solargraph-rails (1.1.2)
|
||||
activesupport
|
||||
solargraph
|
||||
sprockets (4.2.1)
|
||||
solargraph (>= 0.48.0, < 0.53.0)
|
||||
sprockets (4.2.2)
|
||||
concurrent-ruby (~> 1.0)
|
||||
logger
|
||||
rack (>= 2.2.4, < 4)
|
||||
sprockets-rails (3.5.2)
|
||||
actionpack (>= 6.1)
|
||||
activesupport (>= 6.1)
|
||||
sprockets (>= 3.0.0)
|
||||
stackprof (0.2.26)
|
||||
stringio (3.1.6)
|
||||
stackprof (0.2.27)
|
||||
stringio (3.1.7)
|
||||
swd (2.0.3)
|
||||
activesupport (>= 3)
|
||||
attr_required (>= 0.0.5)
|
||||
|
|
@ -474,19 +483,19 @@ GEM
|
|||
faraday-follow_redirects
|
||||
sync (0.5.0)
|
||||
temple (0.10.3)
|
||||
terser (1.2.4)
|
||||
terser (1.2.6)
|
||||
execjs (>= 0.3.0, < 3)
|
||||
thor (1.3.2)
|
||||
thor (1.4.0)
|
||||
thread-local (1.1.0)
|
||||
tilt (2.5.0)
|
||||
tilt (2.6.1)
|
||||
timeout (0.4.3)
|
||||
traces (0.14.1)
|
||||
turbo-rails (2.0.11)
|
||||
actionpack (>= 6.0.0)
|
||||
railties (>= 6.0.0)
|
||||
traces (0.15.2)
|
||||
turbo-rails (2.0.16)
|
||||
actionpack (>= 7.1.0)
|
||||
railties (>= 7.1.0)
|
||||
tzinfo (2.0.6)
|
||||
concurrent-ruby (~> 1.0)
|
||||
unicode-display_width (3.1.3)
|
||||
unicode-display_width (3.1.4)
|
||||
unicode-emoji (~> 4.0, >= 4.0.4)
|
||||
unicode-emoji (4.0.4)
|
||||
uri (1.0.3)
|
||||
|
|
@ -505,17 +514,17 @@ GEM
|
|||
activesupport
|
||||
faraday (~> 2.0)
|
||||
faraday-follow_redirects
|
||||
webmock (3.24.0)
|
||||
webmock (3.25.1)
|
||||
addressable (>= 2.8.0)
|
||||
crack (>= 0.3.2)
|
||||
hashdiff (>= 0.4.0, < 2.0.0)
|
||||
websocket-driver (0.7.7)
|
||||
websocket-driver (0.8.0)
|
||||
base64
|
||||
websocket-extensions (>= 0.1.0)
|
||||
websocket-extensions (0.1.5)
|
||||
will_paginate (4.0.1)
|
||||
yard (0.9.37)
|
||||
zeitwerk (2.7.2)
|
||||
zeitwerk (2.7.3)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
|
@ -567,7 +576,7 @@ DEPENDENCIES
|
|||
will_paginate (~> 4.0)
|
||||
|
||||
RUBY VERSION
|
||||
ruby 3.3.7p123
|
||||
ruby 3.4.5p51
|
||||
|
||||
BUNDLED WITH
|
||||
2.5.18
|
||||
2.7.1
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@
|
|||
vars:
|
||||
local_app_root: "{{ playbook_dir }}/.."
|
||||
remote_project_root: "/srv/impress"
|
||||
ruby_version: "3.3.7"
|
||||
|
||||
# deploy:setup should have added us to the "impress-deployers" group, so we
|
||||
# should be able to become the "impress" user without a password.
|
||||
|
|
@ -16,14 +15,15 @@
|
|||
# skip our usual cleanup, to avoid disrupting the `current` version!)
|
||||
#
|
||||
# This can be useful for upgrading our Ruby version without downtime:
|
||||
# 1. Install the new Ruby version, but don't uninstall the old one.
|
||||
# 2. Update the app to reference the new Ruby version in the `Gemfile`.
|
||||
# 3. Deploy the app with `skip_set_as_current`.
|
||||
# 4. Update the service file manually to use the new Ruby to run the new
|
||||
# version of the app, referenced directly by path.
|
||||
# 5. Link the new version as `current` manually.
|
||||
# 6. Reset the service file to use the new Ruby to run `current`.
|
||||
skip_set_as_current: no
|
||||
# 1. Update `ruby_version_latest` to the newest version, but not `ruby_version_live`.
|
||||
# 2. Run `deploy:setup` to install the latest Ruby version.
|
||||
# 3. Update the app to reference the new Ruby version in the `Gemfile`.
|
||||
# 4. Update `ruby_version_live` to the newest version, too.
|
||||
# 5. Deploy the app with `skip_set_as_current`.
|
||||
# 6. Update the service file manually to reference the newly-uploaded version by path.
|
||||
# 7. Link the new version as `current` manually.
|
||||
# 8. Reset the service file to use the new Ruby to run `current`.
|
||||
skip_set_as_current: yes
|
||||
tasks:
|
||||
- name: Generate a version name from the current timestamp
|
||||
command: date '+%Y-%m-%d-%s'
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
- name: Configure Bundler to run in deployment mode
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle config set --local deployment true
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local deployment true
|
||||
|
||||
# This ensures that, while attempting our current deploy, we don't
|
||||
# accidentally delete gems out from under the currently-running version.
|
||||
|
|
@ -72,7 +72,7 @@
|
|||
- name: Configure Bundler to *not* clean up old gems when installing
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle config set --local clean false
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local clean false
|
||||
|
||||
# NOTE: Bundler recommends this, and they're pretty smart about it: if the
|
||||
# Gemfile changes, this shouldn't disrupt the currently-running version,
|
||||
|
|
@ -81,7 +81,7 @@
|
|||
- name: Configure Bundler to use the bundle folder shared by all app versions
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: "/opt/ruby-{{ ruby_version }}/bin/bundle config set --local path {{ remote_project_root}}/shared/bundle"
|
||||
cmd: "/opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local path {{ remote_project_root}}/shared/bundle"
|
||||
|
||||
- name: Run `bundle install` to install dependencies in remote folder
|
||||
command:
|
||||
|
|
@ -89,7 +89,7 @@
|
|||
# The `--local` flag instructs Bundler to use the cached dependencies
|
||||
# in `vendor/cache`, instead of reading from the web, which is much
|
||||
# faster and more reliable!
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle install --local
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle install --local
|
||||
|
||||
- name: Update the `current` folder to point to the new version
|
||||
file:
|
||||
|
|
@ -113,7 +113,7 @@
|
|||
- name: Clean up gems no longer used in the current app version
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle clean
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle clean
|
||||
when: not skip_set_as_current
|
||||
|
||||
- name: Find older app versions to clean up
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
# There is currently only one impress box in our Ansible inventory!
|
||||
[webserver]
|
||||
impress.openneo.net
|
||||
|
||||
[webserver:vars]
|
||||
# These two values should usually be the same, unless you're in the middle of an upgrade!
|
||||
# Latest is the newest version to install; live is the version to run the app with.
|
||||
ruby_version_latest=3.4.5
|
||||
ruby_version_live=3.4.5
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@
|
|||
become_user: impress
|
||||
vars:
|
||||
remote_project_root: "/srv/impress"
|
||||
ruby_version: "3.3.7"
|
||||
tasks:
|
||||
- name: Read the second-to-most-recent version
|
||||
command:
|
||||
|
|
@ -24,7 +23,7 @@
|
|||
- name: Configure Bundler to run in deployment mode
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle config set --local deployment true
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local deployment true
|
||||
|
||||
# This ensures that, while attempting our current deploy, we don't
|
||||
# accidentally delete gems out from under the currently-running version.
|
||||
|
|
@ -34,7 +33,7 @@
|
|||
- name: Configure Bundler to *not* clean up old gems when installing
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle config set --local clean false
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local clean false
|
||||
|
||||
# NOTE: Bundler recommends this, and they're pretty smart about it: if the
|
||||
# Gemfile changes, this shouldn't disrupt the currently-running version,
|
||||
|
|
@ -43,7 +42,7 @@
|
|||
- name: Configure Bundler to use the bundle folder shared by all app versions
|
||||
command:
|
||||
chdir: "{{ remote_app_root }}"
|
||||
cmd: "/opt/ruby-{{ ruby_version }}/bin/bundle config set --local path {{ remote_project_root}}/shared/bundle"
|
||||
cmd: "/opt/ruby-{{ ruby_version_live }}/bin/bundle config set --local path {{ remote_project_root}}/shared/bundle"
|
||||
|
||||
- name: Run `bundle install` to install dependencies in remote folder
|
||||
command:
|
||||
|
|
@ -51,7 +50,7 @@
|
|||
# The `--local` flag instructs Bundler to use the cached dependencies
|
||||
# in `vendor/cache`, instead of reading from the web, which is much
|
||||
# faster and more reliable!
|
||||
cmd: /opt/ruby-{{ ruby_version }}/bin/bundle install --local
|
||||
cmd: /opt/ruby-{{ ruby_version_live }}/bin/bundle install --local
|
||||
|
||||
- name: Update the `current` folder to point to the new version
|
||||
file:
|
||||
|
|
|
|||
|
|
@ -6,10 +6,6 @@
|
|||
vars:
|
||||
email_address: "emi@matchu.dev" # TODO: Extract this to personal config?
|
||||
impress_hostname: impress.openneo.net
|
||||
|
||||
# These two values should usually be the same, unless you're in the middle of an upgrade!
|
||||
ruby_version_latest: "3.3.7" # The latest Ruby to install.
|
||||
ruby_version_live: "3.3.7" # The Ruby to run the latest version of the app with.
|
||||
vars_files:
|
||||
# mysql_root_password, mysql_user_password, mysql_user_password_2020,
|
||||
# dev_ips
|
||||
|
|
@ -174,7 +170,7 @@
|
|||
git:
|
||||
repo: https://github.com/rbenv/ruby-build.git
|
||||
dest: /opt/ruby-build
|
||||
version: v20250326
|
||||
version: v20250716
|
||||
|
||||
- name: Check if Ruby {{ ruby_version_latest }} is already installed
|
||||
stat:
|
||||
|
|
|
|||
BIN
vendor/cache/ast-2.4.2.gem
vendored
BIN
vendor/cache/ast-2.4.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/ast-2.4.3.gem
vendored
Normal file
BIN
vendor/cache/ast-2.4.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/async-2.21.1.gem
vendored
BIN
vendor/cache/async-2.21.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/async-2.26.0.gem
vendored
Normal file
BIN
vendor/cache/async-2.26.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/async-container-0.18.3.gem
vendored
BIN
vendor/cache/async-container-0.18.3.gem
vendored
Binary file not shown.
BIN
vendor/cache/async-container-0.24.0.gem
vendored
Normal file
BIN
vendor/cache/async-container-0.24.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/async-http-cache-0.4.4.gem
vendored
BIN
vendor/cache/async-http-cache-0.4.4.gem
vendored
Binary file not shown.
BIN
vendor/cache/async-http-cache-0.4.5.gem
vendored
Normal file
BIN
vendor/cache/async-http-cache-0.4.5.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/async-pool-0.10.2.gem
vendored
BIN
vendor/cache/async-pool-0.10.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/async-pool-0.11.0.gem
vendored
Normal file
BIN
vendor/cache/async-pool-0.11.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/async-service-0.12.0.gem
vendored
BIN
vendor/cache/async-service-0.12.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/async-service-0.13.0.gem
vendored
Normal file
BIN
vendor/cache/async-service-0.13.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/base64-0.2.0.gem
vendored
BIN
vendor/cache/base64-0.2.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/base64-0.3.0.gem
vendored
Normal file
BIN
vendor/cache/base64-0.3.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/benchmark-0.4.0.gem
vendored
BIN
vendor/cache/benchmark-0.4.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/benchmark-0.4.1.gem
vendored
Normal file
BIN
vendor/cache/benchmark-0.4.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/bigdecimal-3.1.9.gem
vendored
BIN
vendor/cache/bigdecimal-3.1.9.gem
vendored
Binary file not shown.
BIN
vendor/cache/bigdecimal-3.2.2.gem
vendored
Normal file
BIN
vendor/cache/bigdecimal-3.2.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/bindata-2.5.0.gem
vendored
BIN
vendor/cache/bindata-2.5.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/bindata-2.5.1.gem
vendored
Normal file
BIN
vendor/cache/bindata-2.5.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/bootsnap-1.18.4.gem
vendored
BIN
vendor/cache/bootsnap-1.18.4.gem
vendored
Binary file not shown.
BIN
vendor/cache/bootsnap-1.18.6.gem
vendored
Normal file
BIN
vendor/cache/bootsnap-1.18.6.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/connection_pool-2.5.0.gem
vendored
BIN
vendor/cache/connection_pool-2.5.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/connection_pool-2.5.3.gem
vendored
Normal file
BIN
vendor/cache/connection_pool-2.5.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/console-1.29.2.gem
vendored
BIN
vendor/cache/console-1.29.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/console-1.32.0.gem
vendored
Normal file
BIN
vendor/cache/console-1.32.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/diff-lcs-1.5.1.gem
vendored
BIN
vendor/cache/diff-lcs-1.5.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/diff-lcs-1.6.2.gem
vendored
Normal file
BIN
vendor/cache/diff-lcs-1.6.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/drb-2.2.1.gem
vendored
BIN
vendor/cache/drb-2.2.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/drb-2.2.3.gem
vendored
Normal file
BIN
vendor/cache/drb-2.2.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/erb-5.0.2.gem
vendored
Normal file
BIN
vendor/cache/erb-5.0.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/falcon-0.48.4.gem
vendored
BIN
vendor/cache/falcon-0.48.4.gem
vendored
Binary file not shown.
BIN
vendor/cache/falcon-0.48.6.gem
vendored
Normal file
BIN
vendor/cache/falcon-0.48.6.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/faraday-2.12.2.gem
vendored
BIN
vendor/cache/faraday-2.12.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/faraday-2.13.3.gem
vendored
Normal file
BIN
vendor/cache/faraday-2.13.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/faraday-net_http-3.4.0.gem
vendored
BIN
vendor/cache/faraday-net_http-3.4.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/faraday-net_http-3.4.1.gem
vendored
Normal file
BIN
vendor/cache/faraday-net_http-3.4.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/ffi-1.17.1-aarch64-linux-gnu.gem
vendored
BIN
vendor/cache/ffi-1.17.1-aarch64-linux-gnu.gem
vendored
Binary file not shown.
BIN
vendor/cache/ffi-1.17.1-x86_64-linux-gnu.gem
vendored
BIN
vendor/cache/ffi-1.17.1-x86_64-linux-gnu.gem
vendored
Binary file not shown.
BIN
vendor/cache/ffi-1.17.2-x86_64-linux-gnu.gem
vendored
Normal file
BIN
vendor/cache/ffi-1.17.2-x86_64-linux-gnu.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/fiber-storage-1.0.0.gem
vendored
BIN
vendor/cache/fiber-storage-1.0.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/fiber-storage-1.0.1.gem
vendored
Normal file
BIN
vendor/cache/fiber-storage-1.0.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/hashdiff-1.1.2.gem
vendored
BIN
vendor/cache/hashdiff-1.1.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/hashdiff-1.2.0.gem
vendored
Normal file
BIN
vendor/cache/hashdiff-1.2.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/io-console-0.8.0.gem
vendored
BIN
vendor/cache/io-console-0.8.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/io-console-0.8.1.gem
vendored
Normal file
BIN
vendor/cache/io-console-0.8.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/io-endpoint-0.14.0.gem
vendored
BIN
vendor/cache/io-endpoint-0.14.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/io-endpoint-0.15.2.gem
vendored
Normal file
BIN
vendor/cache/io-endpoint-0.15.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/io-event-1.12.0.gem
vendored
Normal file
BIN
vendor/cache/io-event-1.12.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/io-event-1.7.5.gem
vendored
BIN
vendor/cache/io-event-1.7.5.gem
vendored
Binary file not shown.
BIN
vendor/cache/io-stream-0.10.0.gem
vendored
Normal file
BIN
vendor/cache/io-stream-0.10.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/io-stream-0.6.1.gem
vendored
BIN
vendor/cache/io-stream-0.6.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/irb-1.15.1.gem
vendored
BIN
vendor/cache/irb-1.15.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/irb-1.15.2.gem
vendored
Normal file
BIN
vendor/cache/irb-1.15.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/jaro_winkler-1.6.0.gem
vendored
BIN
vendor/cache/jaro_winkler-1.6.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/jaro_winkler-1.6.1.gem
vendored
Normal file
BIN
vendor/cache/jaro_winkler-1.6.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/json-2.13.0.gem
vendored
Normal file
BIN
vendor/cache/json-2.13.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/json-2.9.1.gem
vendored
BIN
vendor/cache/json-2.9.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/language_server-protocol-3.17.0.3.gem
vendored
BIN
vendor/cache/language_server-protocol-3.17.0.3.gem
vendored
Binary file not shown.
BIN
vendor/cache/language_server-protocol-3.17.0.5.gem
vendored
Normal file
BIN
vendor/cache/language_server-protocol-3.17.0.5.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/launchy-3.0.1.gem
vendored
BIN
vendor/cache/launchy-3.0.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/launchy-3.1.1.gem
vendored
Normal file
BIN
vendor/cache/launchy-3.1.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/lint_roller-1.1.0.gem
vendored
Normal file
BIN
vendor/cache/lint_roller-1.1.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/localhost-1.3.1.gem
vendored
BIN
vendor/cache/localhost-1.3.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/localhost-1.5.0.gem
vendored
Normal file
BIN
vendor/cache/localhost-1.5.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/loofah-2.24.0.gem
vendored
BIN
vendor/cache/loofah-2.24.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/loofah-2.24.1.gem
vendored
Normal file
BIN
vendor/cache/loofah-2.24.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/mapping-1.1.1.gem
vendored
BIN
vendor/cache/mapping-1.1.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/mapping-1.1.3.gem
vendored
Normal file
BIN
vendor/cache/mapping-1.1.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/metrics-0.12.1.gem
vendored
BIN
vendor/cache/metrics-0.12.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/metrics-0.12.2.gem
vendored
Normal file
BIN
vendor/cache/metrics-0.12.2.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/mini_portile2-2.8.9.gem
vendored
Normal file
BIN
vendor/cache/mini_portile2-2.8.9.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/msgpack-1.7.5.gem
vendored
BIN
vendor/cache/msgpack-1.7.5.gem
vendored
Binary file not shown.
BIN
vendor/cache/msgpack-1.8.0.gem
vendored
Normal file
BIN
vendor/cache/msgpack-1.8.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/net-imap-0.5.6.gem
vendored
BIN
vendor/cache/net-imap-0.5.6.gem
vendored
Binary file not shown.
BIN
vendor/cache/net-imap-0.5.9.gem
vendored
Normal file
BIN
vendor/cache/net-imap-0.5.9.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/nokogiri-1.18.6-aarch64-linux-gnu.gem
vendored
BIN
vendor/cache/nokogiri-1.18.6-aarch64-linux-gnu.gem
vendored
Binary file not shown.
BIN
vendor/cache/nokogiri-1.18.6-x86_64-linux-gnu.gem
vendored
BIN
vendor/cache/nokogiri-1.18.6-x86_64-linux-gnu.gem
vendored
Binary file not shown.
BIN
vendor/cache/nokogiri-1.18.9-x86_64-linux-gnu.gem
vendored
Normal file
BIN
vendor/cache/nokogiri-1.18.9-x86_64-linux-gnu.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/omniauth-2.1.2.gem
vendored
BIN
vendor/cache/omniauth-2.1.2.gem
vendored
Binary file not shown.
BIN
vendor/cache/omniauth-2.1.3.gem
vendored
Normal file
BIN
vendor/cache/omniauth-2.1.3.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/parallel-1.26.3.gem
vendored
BIN
vendor/cache/parallel-1.26.3.gem
vendored
Binary file not shown.
BIN
vendor/cache/parallel-1.27.0.gem
vendored
Normal file
BIN
vendor/cache/parallel-1.27.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/parser-3.3.6.0.gem
vendored
BIN
vendor/cache/parser-3.3.6.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/parser-3.3.8.0.gem
vendored
Normal file
BIN
vendor/cache/parser-3.3.8.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/prism-1.4.0.gem
vendored
Normal file
BIN
vendor/cache/prism-1.4.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/process-metrics-0.3.0.gem
vendored
BIN
vendor/cache/process-metrics-0.3.0.gem
vendored
Binary file not shown.
BIN
vendor/cache/process-metrics-0.5.1.gem
vendored
Normal file
BIN
vendor/cache/process-metrics-0.5.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/protocol-http-0.47.1.gem
vendored
BIN
vendor/cache/protocol-http-0.47.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/protocol-http-0.51.0.gem
vendored
Normal file
BIN
vendor/cache/protocol-http-0.51.0.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/protocol-http1-0.28.1.gem
vendored
BIN
vendor/cache/protocol-http1-0.28.1.gem
vendored
Binary file not shown.
BIN
vendor/cache/protocol-http1-0.34.1.gem
vendored
Normal file
BIN
vendor/cache/protocol-http1-0.34.1.gem
vendored
Normal file
Binary file not shown.
BIN
vendor/cache/protocol-http2-0.22.0.gem
vendored
BIN
vendor/cache/protocol-http2-0.22.0.gem
vendored
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue