chore: upgrade ruby to 3.1.3 (#5555)

* chore: update to ruby 3.1.3

* chore: ping docker version to alpine3.16 for nodev16.x

Starting with Node 17, nodejs switched to OpenSSL3. The docker builds
are installing node18.xx with alpine-3.1.3.

From Node.js 17's announcement post:

    If you hit an ERR_OSSL_EVP_UNSUPPORTED error in your application
with Node.js 17, it’s likely that your application or a module you’re
using is attempting to use an algorithm or key size which is no longer
allowed by default with OpenSSL 3.0. A new command-line option,
--openssl-legacy-provider, has been added to revert to the legacy
provider as a temporary workaround for these tightened restrictions.

Looks like a webpack issue. This is fixed in webpacl 5+ and we are on
webpack4 at the moment.
Solutions

    Upgrade webpack.
    Pin nodejs version to be 16.x.x
    Use  --openssl-legacy-provider as a workaround.

Pin docker version to alpine3.16 branch to have node16.x by default

ref:
https://github.com/chatwoot/chatwoot/pull/5555#issuecomment-1379778532

* chore: update webmock

* chore: fix ruby gem path in dockerfile

* chore: switch to node16 in circleci

* chore: update ruby version in linux installer script

* chore: update ruby version in linux installer script

* chore: fix circleci

* chore: fix circleci

* feat: upgrade node version to 16.x in linux installer

* chore: update systemd files

Co-authored-by: Sojan Jose <sojan@chatwoot.com>
This commit is contained in:
Vishnu Narayanan
2023-01-24 23:55:07 +05:30
committed by GitHub
parent b196492f23
commit b1ec67d110
20 changed files with 97 additions and 54 deletions

View File

@@ -1,5 +1,5 @@
# pre-build stage
FROM ruby:3.0.4-alpine AS pre-builder
FROM ruby:3.1.3-alpine3.16 AS pre-builder
# ARG default to production settings
# For development docker-compose file overrides ARGS
@@ -61,11 +61,12 @@ RUN if [ "$RAILS_ENV" = "production" ]; then \
fi
# Remove unnecessary files
RUN rm -rf /gems/ruby/3.0.0/cache/*.gem \
&& find /gems/ruby/3.0.0/gems/ \( -name "*.c" -o -name "*.o" \) -delete
RUN rm -rf /gems/ruby/3.1.0/cache/*.gem \
&& find /gems/ruby/3.1.0/gems/ \( -name "*.c" -o -name "*.o" \) -delete
# final build stage
FROM ruby:3.0.4-alpine
FROM ruby:3.1.3-alpine3.16
ARG BUNDLE_WITHOUT="development:test"
ENV BUNDLE_WITHOUT ${BUNDLE_WITHOUT}