Skip to content

Commit 4a600c5

Browse files
committed
[ruby/sinatra-sequel] Add Iodine server
Also remove Passenger as it doesn't add much to the tests.
1 parent 2ed435c commit 4a600c5

8 files changed

+34
-50
lines changed

frameworks/Ruby/sinatra-sequel/Gemfile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,20 @@ gem 'json', '~> 2.8'
44
gem 'sequel', '~> 5.0'
55
gem 'sinatra', '~> 4.0', :require=>'sinatra/base'
66

7-
group :mysql do
7+
group :mysql, optional: true do
88
gem 'mysql2', '~> 0.5', :platforms=>[:ruby, :mswin]
99
end
1010

11-
group :postgresql do
11+
group :postgresql, optional: true do
1212
gem 'pg', '~> 1.5', :platforms=>[:ruby, :mswin]
1313
gem 'sequel_pg', '~> 1.6', :platforms=>:ruby, :require=>false
1414
end
1515

16-
group :passenger do
17-
gem 'passenger', '~> 6.0', platforms: [:ruby, :mswin], require: false
16+
group :iodine, optional: true do
17+
gem 'iodine', '~> 0.7', platforms: [:ruby, :mswin], require: false
1818
end
1919

20-
group :puma do
20+
group :puma, optional: true do
2121
gem 'puma', '~> 6.4', require: false
2222
end
2323

frameworks/Ruby/sinatra-sequel/Gemfile.lock

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,13 @@ GEM
33
specs:
44
base64 (0.2.0)
55
bigdecimal (3.1.8)
6+
iodine (0.7.58)
67
json (2.8.2)
78
kgio (2.11.4)
89
mustermann (3.0.3)
910
ruby2_keywords (~> 0.0.1)
1011
mysql2 (0.5.6)
1112
nio4r (2.7.4)
12-
passenger (6.0.23)
13-
rack (>= 1.6.13)
14-
rackup
15-
rake (>= 12.3.3)
1613
pg (1.5.8)
1714
puma (6.5.0)
1815
nio4r (~> 2.0)
@@ -22,11 +19,7 @@ GEM
2219
rack (>= 3.0.0, < 4)
2320
rack-session (2.0.0)
2421
rack (>= 3.0.0)
25-
rackup (2.1.0)
26-
rack (>= 3)
27-
webrick (~> 1.8)
2822
raindrops (0.20.1)
29-
rake (13.2.1)
3023
ruby2_keywords (0.0.5)
3124
sequel (5.85.0)
3225
bigdecimal
@@ -43,16 +36,15 @@ GEM
4336
unicorn (6.1.0)
4437
kgio (~> 2.6)
4538
raindrops (~> 0.7)
46-
webrick (1.8.2)
4739

4840
PLATFORMS
4941
ruby
5042
x86_64-darwin-23
5143

5244
DEPENDENCIES
45+
iodine (~> 0.7)
5346
json (~> 2.8)
5447
mysql2 (~> 0.5)
55-
passenger (~> 6.0)
5648
pg (~> 1.5)
5749
puma (~> 6.4)
5850
sequel (~> 5.0)

frameworks/Ruby/sinatra-sequel/benchmark_config.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
"versus": "rack-sequel-postgres-puma-mri",
4343
"notes": ""
4444
},
45-
"postgres-passenger-mri": {
45+
"postgres-iodine-mri": {
4646
"db_url": "/db",
4747
"query_url": "/queries?queries=",
4848
"fortune_url": "/fortunes",
@@ -55,11 +55,11 @@
5555
"language": "Ruby",
5656
"orm": "Full",
5757
"platform": "Rack",
58-
"webserver": "Passenger",
58+
"webserver": "Iodine",
5959
"os": "Linux",
6060
"database_os": "Linux",
61-
"display_name": "sinatra-sequel-postgres-passenger-mri",
62-
"versus": "rack-sequel-postgres-passenger-mri",
61+
"display_name": "sinatra-sequel-postgres-iodine-mri",
62+
"versus": "rack-sequel-postgres-iodine-mri",
6363
"notes": ""
6464
},
6565
"postgres-unicorn-mri": {
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
FROM ruby:3.4
2+
3+
ENV RUBY_YJIT_ENABLE=1
4+
5+
# Use Jemalloc
6+
RUN apt-get update && \
7+
apt-get install -y --no-install-recommends libjemalloc2
8+
ENV LD_PRELOAD=libjemalloc.so.2
9+
10+
ADD ./ /sinatra-sequel
11+
WORKDIR /sinatra-sequel
12+
13+
ENV BUNDLE_WITH=postgresql:iodine
14+
RUN bundle install --jobs=4 --gemfile=/sinatra-sequel/Gemfile
15+
16+
ENV DBTYPE=postgresql
17+
18+
EXPOSE 8080
19+
20+
CMD bundle exec iodine -p 8080

frameworks/Ruby/sinatra-sequel/sinatra-sequel-postgres-passenger-mri.dockerfile

Lines changed: 0 additions & 28 deletions
This file was deleted.

frameworks/Ruby/sinatra-sequel/sinatra-sequel-postgres-unicorn-mri.dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ENV LD_PRELOAD=libjemalloc.so.2
1010
ADD ./ /sinatra-sequel
1111
WORKDIR /sinatra-sequel
1212

13-
ENV BUNDLE_WITHOUT=mysql:passenger:puma
13+
ENV BUNDLE_WITH=postgresql:unicorn
1414
RUN bundle install --jobs=4 --gemfile=/sinatra-sequel/Gemfile
1515

1616
ENV DBTYPE=postgresql

frameworks/Ruby/sinatra-sequel/sinatra-sequel-postgres.dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ENV LD_PRELOAD=libjemalloc.so.2
1010
ADD ./ /sinatra-sequel
1111
WORKDIR /sinatra-sequel
1212

13-
ENV BUNDLE_WITHOUT=mysql:passenger:unicorn
13+
ENV BUNDLE_WITH=postgresql:puma
1414
RUN bundle install --jobs=4 --gemfile=/sinatra-sequel/Gemfile
1515

1616
ENV DBTYPE=postgresql

frameworks/Ruby/sinatra-sequel/sinatra-sequel.dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ENV LD_PRELOAD=libjemalloc.so.2
1010
ADD ./ /sinatra-sequel
1111
WORKDIR /sinatra-sequel
1212

13-
ENV BUNDLE_WITHOUT=postgresql:passenger:unicorn
13+
ENV BUNDLE_WITH=mysql:puma
1414
RUN bundle install --jobs=4 --gemfile=/sinatra-sequel/Gemfile
1515

1616
ENV DBTYPE=mysql

0 commit comments

Comments
 (0)