From cd60441e664d97ffd5d32fab9316f7db1f3d96b9 Mon Sep 17 00:00:00 2001 From: sue445 Date: Sat, 25 Nov 2023 10:28:43 +0900 Subject: [PATCH 1/5] bundle install --- ruby/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/ruby/.gitignore b/ruby/.gitignore index 24fe853..1e382f4 100644 --- a/ruby/.gitignore +++ b/ruby/.gitignore @@ -1 +1,2 @@ /.bundle +vendor/bundle From 4c4c6e4a30755f21ebef7bb85e54c943ae7b6a90 Mon Sep 17 00:00:00 2001 From: sue445 Date: Sat, 25 Nov 2023 10:30:45 +0900 Subject: [PATCH 2/5] Deploy ruby --- Rakefile | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Rakefile b/Rakefile index 3927f44..39536a0 100644 --- a/Rakefile +++ b/Rakefile @@ -14,7 +14,7 @@ require "json" # デプロイ先のサーバ HOSTS = { - # host01: "isucon-01", + host01: "isucon-01", # nginx, mysql, app # host02: "isucon-02", # host03: "isucon-03", } @@ -22,20 +22,20 @@ HOSTS = { INITIALIZE_ENDPOINT = "http://#{HOSTS[:host01]}/initialize" # デプロイ先のカレントディレクトリ -CURRENT_DIR = "/home/isucon/isutrain" +CURRENT_DIR = "/home/isucon/webapp" # rubyアプリのディレクトリ -RUBY_APP_DIR = "/home/isucon/APP_NAME/webapp/ruby" +RUBY_APP_DIR = "/home/isucon/webapp/ruby" # アプリのservice名 # NOTE: `sudo systemctl list-unit-files --type=service | grep isu` などで調べる -APP_SERVICE_NAME = "isuxxxxx-ruby.service" +APP_SERVICE_NAME = "isupipe-ruby.service" # デプロイを記録するissue -GITHUB_REPO = "sue445/isuconXX-qualify" +GITHUB_REPO = "sue445/isucon13-20231125" GITHUB_ISSUE_ID = 1 -RUBY_VERSION_PATH = "#{__dir__}/webapp/ruby/.ruby-version" +RUBY_VERSION_PATH = "#{__dir__}/ruby/.ruby-version" ruby_version = File.read(RUBY_VERSION_PATH).strip @@ -119,17 +119,17 @@ namespace :deploy do # app case name when :host01 - # exec ip_address, "#{BUNDLE} config set --local path 'vendor/bundle'", cwd: RUBY_APP_DIR - # exec ip_address, "#{BUNDLE} config set --local jobs $(nproc)", cwd: RUBY_APP_DIR - # exec ip_address, "#{BUNDLE} config set --local without development test", cwd: RUBY_APP_DIR + exec ip_address, "#{BUNDLE} config set --local path 'vendor/bundle'", cwd: RUBY_APP_DIR + exec ip_address, "#{BUNDLE} config set --local jobs $(nproc)", cwd: RUBY_APP_DIR + exec ip_address, "#{BUNDLE} config set --local without development test", cwd: RUBY_APP_DIR - # exec ip_address, "#{BUNDLE} install", cwd: RUBY_APP_DIR + exec ip_address, "#{BUNDLE} install", cwd: RUBY_APP_DIR # FIXME: ruby 3.2.0-devだとddtraceのnative extensionのbuildに失敗するのでこっちを使う # exec ip_address, "DD_PROFILING_NO_EXTENSION=true #{BUNDLE} install", cwd: RUBY_APP_DIR - # exec_service ip_address, service: APP_SERVICE_NAME, enabled: true + exec_service ip_address, service: APP_SERVICE_NAME, enabled: true else - # exec_service ip_address, service: APP_SERVICE_NAME, enabled: false + exec_service ip_address, service: APP_SERVICE_NAME, enabled: false end # redis From 63bfa4d61f6d52f2d1561bb3e20a6cfdce7bdd42 Mon Sep 17 00:00:00 2001 From: sue445 Date: Sat, 25 Nov 2023 10:32:10 +0900 Subject: [PATCH 3/5] Use ruby 3.3.0 on AP --- infra/systemd/isupipe-ruby.service | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/infra/systemd/isupipe-ruby.service b/infra/systemd/isupipe-ruby.service index dff99e4..949e917 100644 --- a/infra/systemd/isupipe-ruby.service +++ b/infra/systemd/isupipe-ruby.service @@ -11,7 +11,8 @@ EnvironmentFile=/home/isucon/env.sh User=isucon Group=isucon -ExecStart=/home/isucon/.x bundle exec puma --bind tcp://0.0.0.0:8080 --workers 8 --threads 0:8 --environment production +# ExecStart=/home/isucon/.x bundle exec puma --bind tcp://0.0.0.0:8080 --workers 8 --threads 0:8 --environment production +ExecStart=/home/isucon/.x /home/isucon/local/ruby/versions/3.3.0-dev/bin/bundle exec puma --bind tcp://0.0.0.0:8080 --workers 8 --threads 0:8 --environment production ExecStop=/bin/kill -s QUIT $MAINPID Restart=on-failure From aca56c78b2b1ef67798ee500b180531d0b54563e Mon Sep 17 00:00:00 2001 From: sue445 Date: Sat, 25 Nov 2023 10:39:57 +0900 Subject: [PATCH 4/5] inc retry --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 39536a0..31da3d2 100644 --- a/Rakefile +++ b/Rakefile @@ -182,7 +182,7 @@ multitask :deploy => HOSTS.keys.map { |name| "deploy:#{name}" } desc "POST /initialize" task :initialize do - sh "curl -X POST --retry 3 --fail #{INITIALIZE_ENDPOINT}" + sh "curl -X POST --retry 5 --fail #{INITIALIZE_ENDPOINT}" end desc "Record current commit to issue" From 693a99b5163895ca6cdba6f89a9263b7d7b6b7c0 Mon Sep 17 00:00:00 2001 From: sue445 Date: Sat, 25 Nov 2023 10:41:43 +0900 Subject: [PATCH 5/5] Fix endpoint --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 31da3d2..8b64c69 100644 --- a/Rakefile +++ b/Rakefile @@ -19,7 +19,7 @@ HOSTS = { # host03: "isucon-03", } -INITIALIZE_ENDPOINT = "http://#{HOSTS[:host01]}/initialize" +INITIALIZE_ENDPOINT = "https://test001.u.isucon.dev/api/initialize" # デプロイ先のカレントディレクトリ CURRENT_DIR = "/home/isucon/webapp"