Skip to content

Commit

Permalink
Add iRODS 4.3.3 and remove iRODS 4.3.0
Browse files Browse the repository at this point in the history
4.3.3 is the latest release, while 4.3.0 is has broken C API headers,
so is not usable by us.
  • Loading branch information
kjsanger committed Sep 3, 2024
1 parent 90cf16d commit 6ab21bf
Show file tree
Hide file tree
Showing 14 changed files with 175 additions and 114 deletions.
101 changes: 64 additions & 37 deletions docker/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -19,24 +19,28 @@ image_names := ub-16.04-base ub-18.04-base ub-22.04-base
image_names += ub-16.04-irods-4.2.7
image_names += ub-18.04-irods-4.2.11
image_names += ub-18.04-irods-4.2.12
image_names += ub-18.04-irods-4.3.0

image_names += ub-22.04-irods-4.3.1
image_names += ub-22.04-irods-4.3.2
image_names += ub-22.04-irods-4.3.3
# image_names += ub-22.04-irods-4.3-nightly

image_names += ub-16.04-irods-clients-dev-4.2.7
image_names += ub-18.04-irods-clients-dev-4.2.11
image_names += ub-18.04-irods-clients-dev-4.2.12
image_names += ub-18.04-irods-clients-dev-4.3.0

image_names += ub-22.04-irods-clients-dev-4.3.1
image_names += ub-22.04-irods-clients-dev-4.3.2
image_names += ub-22.04-irods-clients-dev-4.3.3
# image_names += ub-22.04-irods-clients-dev-4.3-nightly

image_names += ub-16.04-irods-clients-4.2.7
image_names += ub-18.04-irods-clients-4.2.11
image_names += ub-18.04-irods-clients-4.2.12

image_names += ub-22.04-irods-clients-4.3.1
image_names += ub-22.04-irods-clients-4.3.2
image_names += ub-22.04-irods-clients-4.3.3
# image_names += ub-22.04-irods-clients-4.3-nightly

git_url=$(shell git remote get-url origin)
Expand Down Expand Up @@ -129,20 +133,6 @@ ub-18.04-irods-4.2.12.$(TAG): irods/ubuntu/18.04/Dockerfile ub-18.04-base.$(TAG)
--tag $(DOCKER_PREFIX)/ub-18.04-irods-4.2.12:$(TAG) --file $< ./irods
touch $@

ub-18.04-irods-4.3.0.$(TAG): irods/ubuntu/18.04/Dockerfile ub-18.04-base.$(TAG)
docker buildx build $(DOCKER_ARGS) \
--load \
--build-arg BASE_IMAGE=$(DOCKER_PREFIX)/ub-18.04-base \
--build-arg IRODS_VERSION=4.3.0 \
--label org.opencontainers.image.title="iRODS 4.3.0 server, Ubuntu 18.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-18.04-irods-4.3.0:latest \
--tag $(DOCKER_PREFIX)/ub-18.04-irods-4.3.0:$(TAG) --file $< ./irods
touch $@

ub-22.04-irods-4.3.1.$(TAG): irods/ubuntu/22.04/Dockerfile ub-22.04-base.$(TAG)
docker buildx build $(DOCKER_ARGS) \
--load \
Expand Down Expand Up @@ -171,6 +161,20 @@ ub-22.04-irods-4.3.2.$(TAG): irods/ubuntu/22.04/Dockerfile ub-22.04-base.$(TAG)
--tag $(DOCKER_PREFIX)/ub-22.04-irods-4.3.2:$(TAG) --file $< ./irods
touch $@

ub-22.04-irods-4.3.3.$(TAG): irods/ubuntu/22.04/Dockerfile ub-22.04-base.$(TAG)
docker buildx build $(DOCKER_ARGS) \
--load \
--build-arg BASE_IMAGE=$(DOCKER_PREFIX)/ub-22.04-base \
--build-arg IRODS_VERSION=4.3.2 \
--label org.opencontainers.image.title="iRODS 4.3.3 server, Ubuntu 22.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-4.3.3:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-4.3.3:$(TAG) --file $< ./irods
touch $@

ub-22.04-irods-4.3-nightly.$(TAG): irods/ubuntu/22.04/Dockerfile.nightly ub-22.04-base.$(TAG)
docker buildx build $(DOCKER_ARGS) \
--load \
Expand All @@ -193,7 +197,7 @@ ub-16.04-irods-clients-4.2.7.$(TAG): irods_clients/ubuntu/16.04/Dockerfile ub-16
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.2.7 \
--build-arg BATON_VERSION=4.2.1 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
Expand All @@ -214,7 +218,7 @@ ub-18.04-irods-clients-4.2.11.$(TAG): irods_clients/ubuntu/18.04/Dockerfile ub-1
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.2.11 \
--build-arg BATON_VERSION=4.2.1 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
Expand Down Expand Up @@ -258,7 +262,7 @@ ub-22.04-irods-clients-4.3.1.$(TAG): irods_clients/ubuntu/22.04/Dockerfile
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.3.1 \
--build-arg BATON_VERSION=4.2.1 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
Expand All @@ -280,7 +284,7 @@ ub-22.04-irods-clients-4.3.2.$(TAG): irods_clients/ubuntu/22.04/Dockerfile
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.3.2 \
--build-arg BATON_VERSION=4.2.1 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
Expand All @@ -293,6 +297,28 @@ ub-22.04-irods-clients-4.3.2.$(TAG): irods_clients/ubuntu/22.04/Dockerfile
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-4.3.2:$(TAG) --file $< ./irods_clients
touch $@

ub-22.04-irods-clients-4.3.3.$(TAG): irods_clients/ubuntu/22.04/Dockerfile
docker buildx build $(DOCKER_ARGS) \
--load \
--build-context singularity=../singularity \
--build-arg DOCKER_PREFIX=$(DOCKER_PREFIX) \
--build-arg BASE_IMAGE=$(DOCKER_PREFIX)/ub-22.04-base \
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.3.3 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
--label org.opencontainers.image.title="iRODS 4.3.3 clients, Ubuntu 22.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-4.3.3:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-4.3.3:$(TAG) --file $< ./irods_clients
touch $@

ub-22.04-irods-clients-4.3-nightly.$(TAG): irods_clients/ubuntu/22.04/Dockerfile.nightly
docker buildx build $(DOCKER_ARGS) \
--load \
Expand All @@ -302,7 +328,7 @@ ub-22.04-irods-clients-4.3-nightly.$(TAG): irods_clients/ubuntu/22.04/Dockerfile
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.3-nightly \
--build-arg BATON_VERSION=4.2.1 \
--build-arg BATON_VERSION=4.2.2 \
--build-arg HTSLIB_VERSION=1.20 \
--build-arg SAMTOOLS_VERSION=1.20 \
--build-arg BCFTOOLS_VERSION=1.20 \
Expand Down Expand Up @@ -366,57 +392,58 @@ ub-18.04-irods-clients-dev-4.2.12.$(TAG): irods_clients_dev/ubuntu/18.04/Dockerf
--tag $(DOCKER_PREFIX)/ub-18.04-irods-clients-dev-4.2.12:$(TAG) --file $< ./irods_clients_dev
touch $@

ub-18.04-irods-clients-dev-4.3.0.$(TAG): irods_clients_dev/ubuntu/18.04/Dockerfile
ub-22.04-irods-clients-dev-4.3.1.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile
docker buildx build $(DOCKER_ARGS) \
--load \
--build-context singularity=../singularity \
--build-arg BASE_IMAGE=ubuntu:18.04 \
--build-arg DOCKER_PREFIX=$(DOCKER_PREFIX) \
--build-arg BASE_IMAGE=ubuntu:22.04 \
--build-arg IRODS_VERSION=4.3.1 \
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--build-arg IRODS_VERSION=4.3.0 \
--label org.opencontainers.image.title="iRODS 4.3.0 client development, Ubuntu 18.04" \
--label org.opencontainers.image.title="iRODS 4.3.1 client development, Ubuntu 22.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-18.04-irods-clients-dev-4.3.0:latest \
--tag $(DOCKER_PREFIX)/ub-18.04-irods-clients-dev-4.3.0:$(TAG) --file $< ./irods_clients_dev
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.1:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.1:$(TAG) --file $< ./irods_clients_dev
touch $@

ub-22.04-irods-clients-dev-4.3.1.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile
ub-22.04-irods-clients-dev-4.3.2.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile
docker buildx build $(DOCKER_ARGS) \
--load \
--build-context singularity=../singularity \
--build-arg DOCKER_PREFIX=$(DOCKER_PREFIX) \
--build-arg BASE_IMAGE=ubuntu:22.04 \
--build-arg IRODS_VERSION=4.3.1 \
--build-arg IRODS_VERSION=4.3.2 \
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--label org.opencontainers.image.title="iRODS 4.3.1 client development, Ubuntu 22.04" \
--label org.opencontainers.image.title="iRODS 4.3.2 client development, Ubuntu 22.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.1:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.1:$(TAG) --file $< ./irods_clients_dev
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.2:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.2:$(TAG) --file $< ./irods_clients_dev
touch $@

ub-22.04-irods-clients-dev-4.3.2.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile
ub-22.04-irods-clients-dev-4.3.3.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile
docker buildx build $(DOCKER_ARGS) \
--load \
--build-context singularity=../singularity \
--build-arg DOCKER_PREFIX=$(DOCKER_PREFIX) \
--build-arg BASE_IMAGE=ubuntu:22.04 \
--build-arg IRODS_VERSION=4.3.2 \
--build-arg IRODS_VERSION=4.3.3 \
--build-arg DOCKER_IMAGE=$(subst .$(TAG),,$@) \
--build-arg DOCKER_TAG=$(TAG) \
--label org.opencontainers.image.title="iRODS 4.3.2 client development, Ubuntu 22.04" \
--label org.opencontainers.image.title="iRODS 4.3.3 client development, Ubuntu 22.04" \
--label org.opencontainers.image.source=$(git_url) \
--label org.opencontainers.image.revision=$(git_commit) \
--label org.opencontainers.image.version=$(TAG) \
--label org.opencontainers.image.created=$(NOW) \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.2:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.2:$(TAG) --file $< ./irods_clients_dev
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.3:latest \
--tag $(DOCKER_PREFIX)/ub-22.04-irods-clients-dev-4.3.3:$(TAG) --file $< ./irods_clients_dev
touch $@

ub-22.04-irods-clients-dev-4.3-nightly.$(TAG): irods_clients_dev/ubuntu/22.04/Dockerfile.nightly
Expand Down
6 changes: 6 additions & 0 deletions docker/irods/scripts/configure_irods.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ case "$IRODS_VERSION" in
python3 /var/lib/irods/scripts/setup_irods.py < /opt/docker/irods/config/4.3.x.setup_irods.py.in
;;
4.3.2)
patch /var/lib/irods/scripts/irods/controller.py /opt/docker/irods/patches/patch_controller.diff
# Logging has been changed to use rsyslog. A potential enhancement is to configure that here.
python3 /var/lib/irods/scripts/setup_irods.py < /opt/docker/irods/config/4.3.x.setup_irods.py.in
;;
4.3.3)
patch /var/lib/irods/scripts/irods/controller.py /opt/docker/irods/patches/patch_controller.diff
# Logging has been changed to use rsyslog. A potential enhancement is to configure that here.
python3 /var/lib/irods/scripts/setup_irods.py < /opt/docker/irods/config/4.3.x.setup_irods.py.in
;;
Expand Down
8 changes: 5 additions & 3 deletions docker/irods/ubuntu/16.04/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,15 @@ FROM $BASE_IMAGE
# This default is the latest usable version
ARG IRODS_VERSION="4.2.7"

ENV DEBIAN_FRONTEND=noninteractive

WORKDIR /opt/docker/irods

COPY ./scripts/*.sh ./scripts/
COPY ./config/* ./config/
COPY ./patches/* ./patches/

RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selections && \
apt-get update && \
RUN apt-get update && \
apt-get install -q -y --no-install-recommends \
apt-transport-https \
ca-certificates \
Expand All @@ -29,7 +30,8 @@ RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selectio

ENV LANG=en_GB.UTF-8 \
LANGUAGE=en_GB \
LC_ALL=en_GB.UTF-8
LC_ALL=en_GB.UTF-8 \
TZ=/Etc/UTC

RUN curl -sSL https://packages.irods.org/irods-signing-key.asc | apt-key add - && \
echo "deb [arch=amd64] https://packages.irods.org/apt $(lsb_release -sc) main" | \
Expand Down
8 changes: 5 additions & 3 deletions docker/irods/ubuntu/18.04/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,15 @@ ARG IRODS_VERSION="4.3.1"
# This is the Debian package revision number
ARG IRODS_REVISION="1"

ENV DEBIAN_FRONTEND=noninteractive

WORKDIR /opt/docker/irods

COPY ./scripts/*.sh ./scripts/
COPY ./config/* ./config/
COPY ./patches/* ./patches/

RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selections && \
apt-get update && \
RUN apt-get update && \
apt-get install -q -y --no-install-recommends \
apt-utils \
ca-certificates \
Expand All @@ -33,7 +34,8 @@ RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selectio

ENV LANG=en_GB.UTF-8 \
LANGUAGE=en_GB \
LC_ALL=en_GB.UTF-8
LC_ALL=en_GB.UTF-8 \
TZ=/Etc/UTC

RUN curl -sSL https://packages.irods.org/irods-signing-key.asc | apt-key add - && \
echo "deb [arch=amd64] https://packages.irods.org/apt $(lsb_release -sc) main" | \
Expand Down
8 changes: 5 additions & 3 deletions docker/irods/ubuntu/22.04/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,15 @@ ARG IRODS_VERSION="4.3.1"
# This is the Debian package revision number
ARG IRODS_REVISION="0"

ENV DEBIAN_FRONTEND=noninteractive

WORKDIR /opt/docker/irods

COPY ./scripts/*.sh ./scripts/
COPY ./config/* ./config/
COPY ./patches/* ./patches/

RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selections && \
apt-get update && \
RUN apt-get update && \
apt-get install -q -y --no-install-recommends \
apt-utils \
ca-certificates \
Expand All @@ -33,7 +34,8 @@ RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selectio

ENV LANG=en_GB.UTF-8 \
LANGUAGE=en_GB \
LC_ALL=en_GB.UTF-8
LC_ALL=en_GB.UTF-8 \
TZ=/Etc/UTC

RUN curl -sSL https://packages.irods.org/irods-signing-key.asc | apt-key add - && \
echo "deb [arch=amd64] https://packages.irods.org/apt $(lsb_release -sc) main" | \
Expand Down
5 changes: 3 additions & 2 deletions docker/irods/ubuntu/22.04/Dockerfile.nightly
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@ FROM $BASE_IMAGE

ARG IRODS_VERSION="nightly"

ENV DEBIAN_FRONTEND=noninteractive

WORKDIR /opt/docker/irods

COPY ./scripts/*.sh ./scripts/
COPY ./config/* ./config/
COPY ./patches/* ./patches/

RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selections && \
apt-get update && \
RUN apt-get update && \
apt-get install -q -y --no-install-recommends \
apt-utils \
ca-certificates \
Expand Down
Loading

0 comments on commit 6ab21bf

Please sign in to comment.