remove gem-specific dependencies

antifascista
f 9 months ago
parent 8cbc838790
commit f6215e8bfe
  1. 10
      .woodpecker.yml
  2. 32
      Dockerfile

@ -4,9 +4,11 @@ pipeline:
registry: registry.nulo.in
repo: registry.nulo.in/sutty/containers-sdk-ruby
tags:
- ${ALPINE_VERSION}
- ${ALPINE_VERSION}-${RUBY_VERSION}.${RUBY_PATCH}
- latest
build_args:
- RUBY_VERSION=${RUBY_VERSION}
- RUBY_PATCH=${RUBY_PATCH}
- ALPINE_VERSION=${ALPINE_VERSION}
- BASE_IMAGE=registry.nulo.in/sutty/containers-sdk
username: sutty
@ -15,8 +17,8 @@ pipeline:
when:
branch: antifascista
event: push
matrix:
ALPINE_VERSION:
- 3.13.6
- 3.14.2
- 3.13.7
- 3.14.3
- 3.15.0

@ -1,16 +1,28 @@
ARG BASE_IMAGE=sutty/sdk
ARG ALPINE_VERSION=3.13.6
ARG ALPINE_VERSION=3.13.6
ARG BASE_IMAGE=sutty/containers-sdk
ARG EMAIL=monit@sutty.nl
FROM alpine:${ALPINE_VERSION} as build
ARG RUBY_VERSION=2.7
ARG RUBY_PATCH=5
ENV EMAIL ${EMAIL:-monit@sutty.nl}
RUN apk add --no-cache ruby~${RUBY_VERSION}.${RUBY_PATCH} patch
# Patch rubygems to install x86_64-linux-musl gems
COPY ./rubygems-platform-musl.patch /tmp/
RUN cd /usr/lib/ruby/${RUBY_VERSION}.0 && patch -Np 0 -i /tmp/rubygems-platform-musl.patch || true
FROM ${BASE_IMAGE}:${ALPINE_VERSION}
ARG ALPINE_VERSION
MAINTAINER "f <f@sutty.nl>"
ARG RUBY_VERSION
ARG RUBY_PATCH
RUN apk add --no-cache git nodejs yarn tzdata libxslt-dev libxml2-dev
RUN apk add --no-cache ruby-dev ruby-bundler ruby-json ruby-bigdecimal ruby-rake ruby-etc
RUN apk add --no-cache postgresql-dev sqlite-dev mariadb-dev
RUN apk add --no-cache linux-headers
# Install ruby and extracted gems and copy patched rubygems
RUN apk add --no-cache tzdata ruby~${RUBY_VERSION}.${RUBY_PATCH} && rm /usr/lib/ruby/${RUBY_VERSION}.0/rubygems.rb
RUN apk add --no-cache ruby-json ruby-bigdecimal ruby-rake ruby-bundler ruby-irb ruby-io-console ruby-etc
COPY --from=build /usr/lib/ruby/${RUBY_VERSION}.0/rubygems.rb /usr/lib/ruby/${RUBY_VERSION}.0/
# https://github.com/rubygems/rubygems/issues/2918
# https://gitlab.alpinelinux.org/alpine/aports/issues/10808
COPY ./rubygems-platform-musl.patch /tmp/
RUN patch -d /usr/lib/ruby/2.7.0 -Np 0 -i /tmp/rubygems-platform-musl.patch
RUN apk add --no-cache ruby-dev
ENTRYPOINT /bin/sh

Loading…
Cancel
Save