From fbc5308c554ef2ffb266f7c8667682d3991ec6a5 Mon Sep 17 00:00:00 2001 From: Austin Parker Date: Fri, 21 Jul 2023 11:17:40 -0400 Subject: [PATCH] Update Email Service Dependencies (#989) * update ruby deps * change to slim image --------- Co-authored-by: Juliano Costa --- src/emailservice/.ruby-version | 2 +- src/emailservice/Dockerfile | 6 +- src/emailservice/Gemfile | 10 +- src/emailservice/Gemfile.lock | 247 ++++++++++++++++++++++++++++----- 4 files changed, 219 insertions(+), 46 deletions(-) diff --git a/src/emailservice/.ruby-version b/src/emailservice/.ruby-version index ef538c2810..0aec50e6ed 100644 --- a/src/emailservice/.ruby-version +++ b/src/emailservice/.ruby-version @@ -1 +1 @@ -3.1.2 +3.1.4 diff --git a/src/emailservice/Dockerfile b/src/emailservice/Dockerfile index e6cf316c30..547ffc65c4 100644 --- a/src/emailservice/Dockerfile +++ b/src/emailservice/Dockerfile @@ -2,7 +2,7 @@ # SPDX-License-Identifier: Apache-2.0 -FROM ruby:3.1.2-alpine as base +FROM ruby:3.1.4-slim as base FROM base as builder @@ -10,8 +10,8 @@ WORKDIR /tmp COPY Gemfile Gemfile.lock . -RUN apk update && apk add make gcc musl-dev && bundle install - +#RUN apk update && apk add make gcc musl-dev gcompat && bundle install +RUN apt-get update && apt-get install build-essential -y && bundle install FROM base as release WORKDIR /email_server diff --git a/src/emailservice/Gemfile b/src/emailservice/Gemfile index 9c3c2ee821..f4548eab3d 100644 --- a/src/emailservice/Gemfile +++ b/src/emailservice/Gemfile @@ -4,9 +4,9 @@ source "https://rubygems.org" gem "net-smtp", "~> 0.3" gem "pony", "~> 1.13" -gem "puma", "~> 5.6" -gem "sinatra", "~> 2.2" +gem "puma", "~> 6.3" +gem "sinatra", "~> 3.0" -gem "opentelemetry-sdk", "~> 1.1" -gem "opentelemetry-exporter-otlp", "~> 0.21" -gem "opentelemetry-instrumentation-sinatra", "~> 0.19" +gem "opentelemetry-sdk", "~> 1.2" +gem "opentelemetry-exporter-otlp", "~> 0.24" +gem "opentelemetry-instrumentation-all", "~> 0.39" diff --git a/src/emailservice/Gemfile.lock b/src/emailservice/Gemfile.lock index 92a45bdc99..98c10c6f62 100644 --- a/src/emailservice/Gemfile.lock +++ b/src/emailservice/Gemfile.lock @@ -1,75 +1,248 @@ GEM remote: https://rubygems.org/ specs: - digest (3.1.0) - google-protobuf (3.21.1) - googleapis-common-protos-types (1.3.1) + date (3.3.3) + google-protobuf (3.23.4-aarch64-linux) + google-protobuf (3.23.4-arm64-darwin) + googleapis-common-protos-types (1.7.0) google-protobuf (~> 3.14) - mail (2.7.1) + mail (2.8.1) mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp mini_mime (1.1.2) - mustermann (1.1.1) + mustermann (3.0.0) ruby2_keywords (~> 0.0.1) - net-protocol (0.1.3) - timeout - net-smtp (0.3.1) - digest + net-imap (0.3.6) + date + net-protocol + net-pop (0.1.2) net-protocol + net-protocol (0.2.1) timeout - nio4r (2.5.8) - opentelemetry-api (1.0.2) - opentelemetry-common (0.19.6) + net-smtp (0.3.3) + net-protocol + nio4r (2.5.9) + opentelemetry-api (1.1.0) + opentelemetry-common (0.19.7) opentelemetry-api (~> 1.0) - opentelemetry-exporter-otlp (0.21.3) + opentelemetry-exporter-otlp (0.24.2) google-protobuf (~> 3.19) googleapis-common-protos-types (~> 1.3) + opentelemetry-api (~> 1.1) + opentelemetry-common (~> 0.19.6) + opentelemetry-sdk (~> 1.2) + opentelemetry-semantic_conventions + opentelemetry-instrumentation-action_pack (0.7.0) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rack (~> 0.21) + opentelemetry-instrumentation-action_view (0.6.0) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-active_support (~> 0.1) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-active_job (0.5.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-active_model_serializers (0.20.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-active_record (0.6.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + ruby2_keywords + opentelemetry-instrumentation-active_support (0.4.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-all (0.39.1) + opentelemetry-instrumentation-active_model_serializers (~> 0.20.1) + opentelemetry-instrumentation-aws_sdk (~> 0.4.1) + opentelemetry-instrumentation-bunny (~> 0.20.1) + opentelemetry-instrumentation-concurrent_ruby (~> 0.21.1) + opentelemetry-instrumentation-dalli (~> 0.24.1) + opentelemetry-instrumentation-delayed_job (~> 0.20.1) + opentelemetry-instrumentation-ethon (~> 0.21.1) + opentelemetry-instrumentation-excon (~> 0.21.1) + opentelemetry-instrumentation-faraday (~> 0.23.1) + opentelemetry-instrumentation-grape (~> 0.1.3) + opentelemetry-instrumentation-graphql (~> 0.26.2) + opentelemetry-instrumentation-http (~> 0.23.1) + opentelemetry-instrumentation-http_client (~> 0.22.1) + opentelemetry-instrumentation-koala (~> 0.20.1) + opentelemetry-instrumentation-lmdb (~> 0.22.1) + opentelemetry-instrumentation-mongo (~> 0.22.1) + opentelemetry-instrumentation-mysql2 (~> 0.24.2) + opentelemetry-instrumentation-net_http (~> 0.22.1) + opentelemetry-instrumentation-pg (~> 0.25.2) + opentelemetry-instrumentation-que (~> 0.6.1) + opentelemetry-instrumentation-racecar (~> 0.2.1) + opentelemetry-instrumentation-rack (~> 0.23.1) + opentelemetry-instrumentation-rails (~> 0.27.1) + opentelemetry-instrumentation-rake (~> 0.2.1) + opentelemetry-instrumentation-rdkafka (~> 0.3.1) + opentelemetry-instrumentation-redis (~> 0.25.1) + opentelemetry-instrumentation-resque (~> 0.4.1) + opentelemetry-instrumentation-restclient (~> 0.22.1) + opentelemetry-instrumentation-ruby_kafka (~> 0.20.1) + opentelemetry-instrumentation-sidekiq (~> 0.24.1) + opentelemetry-instrumentation-sinatra (~> 0.23.1) + opentelemetry-instrumentation-trilogy (~> 0.56.1) + opentelemetry-instrumentation-aws_sdk (0.4.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-base (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-registry (~> 0.1) + opentelemetry-instrumentation-bunny (0.20.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-concurrent_ruby (0.21.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-dalli (0.24.1) opentelemetry-api (~> 1.0) opentelemetry-common (~> 0.19.3) - opentelemetry-sdk (~> 1.0) - opentelemetry-semantic_conventions - opentelemetry-instrumentation-base (0.20.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-delayed_job (0.20.1) opentelemetry-api (~> 1.0) - opentelemetry-instrumentation-sinatra (0.19.4) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-ethon (0.21.1) opentelemetry-api (~> 1.0) opentelemetry-common (~> 0.19.3) - opentelemetry-instrumentation-base (~> 0.20.0) - opentelemetry-registry (0.1.0) - opentelemetry-api (~> 1.0.1) - opentelemetry-sdk (1.1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-excon (0.21.1) opentelemetry-api (~> 1.0) opentelemetry-common (~> 0.19.3) - opentelemetry-registry (~> 0.1) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-faraday (0.23.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-grape (0.1.3) + opentelemetry-api (~> 1.1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rack (~> 0.21) + opentelemetry-instrumentation-graphql (0.26.2) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-http (0.23.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-http_client (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-koala (0.20.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-lmdb (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-mongo (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-mysql2 (0.24.2) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-net_http (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-pg (0.25.2) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-que (0.6.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-racecar (0.2.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rack (0.23.2) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rails (0.27.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-action_pack (~> 0.7.0) + opentelemetry-instrumentation-action_view (~> 0.6.0) + opentelemetry-instrumentation-active_job (~> 0.5.1) + opentelemetry-instrumentation-active_record (~> 0.6.1) + opentelemetry-instrumentation-active_support (~> 0.4.1) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rake (0.2.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rdkafka (0.3.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-redis (0.25.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-resque (0.4.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-restclient (0.22.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-ruby_kafka (0.20.1) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-sidekiq (0.24.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-sinatra (0.23.1) + opentelemetry-api (~> 1.0) + opentelemetry-common (~> 0.19.3) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-instrumentation-rack (~> 0.21) + opentelemetry-instrumentation-trilogy (0.56.2) + opentelemetry-api (~> 1.0) + opentelemetry-instrumentation-base (~> 0.22.1) + opentelemetry-semantic_conventions (>= 1.8.0) + opentelemetry-registry (0.2.0) + opentelemetry-api (~> 1.1) + opentelemetry-sdk (1.2.1) + opentelemetry-api (~> 1.1) + opentelemetry-common (~> 0.19.3) + opentelemetry-registry (~> 0.2) opentelemetry-semantic_conventions - opentelemetry-semantic_conventions (1.8.0) + opentelemetry-semantic_conventions (1.10.0) opentelemetry-api (~> 1.0) pony (1.13.1) mail (>= 2.0) - puma (5.6.4) + puma (6.3.0) nio4r (~> 2.0) - rack (2.2.3.1) - rack-protection (2.2.0) + rack (2.2.7) + rack-protection (3.0.6) rack ruby2_keywords (0.0.5) - sinatra (2.2.0) - mustermann (~> 1.0) - rack (~> 2.2) - rack-protection (= 2.2.0) + sinatra (3.0.6) + mustermann (~> 3.0) + rack (~> 2.2, >= 2.2.4) + rack-protection (= 3.0.6) tilt (~> 2.0) - tilt (2.0.10) - timeout (0.3.0) + tilt (2.2.0) + timeout (0.4.0) PLATFORMS + aarch64-linux arm64-darwin-21 arm64-darwin-22 DEPENDENCIES net-smtp (~> 0.3) - opentelemetry-exporter-otlp (~> 0.21) - opentelemetry-instrumentation-sinatra (~> 0.19) - opentelemetry-sdk (~> 1.1) + opentelemetry-exporter-otlp (~> 0.24) + opentelemetry-instrumentation-all (~> 0.39) + opentelemetry-sdk (~> 1.2) pony (~> 1.13) - puma (~> 5.6) - sinatra (~> 2.2) + puma (~> 6.3) + sinatra (~> 3.0) BUNDLED WITH 2.3.7