Skip to content

Commit

Permalink
wip: move build logic to dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
rti committed Nov 16, 2023
1 parent df3804d commit c45d3c6
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 28 deletions.
54 changes: 27 additions & 27 deletions Docker/build/Wikibase/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,38 +1,38 @@
# Build configuration
ARG COMPOSER_IMAGE_NAME
ARG COMPOSER_IMAGE_VERSION
ARG MEDIAWIKI_IMAGE_NAME
ARG MEDIAWIKI_IMAGE_VERSION

FROM ubuntu:xenial as unpacker

RUN mkdir artifacts

COPY artifacts/wikibase.tar.gz artifacts
RUN tar xzf artifacts/wikibase.tar.gz

FROM ${MEDIAWIKI_IMAGE_NAME}:${MEDIAWIKI_IMAGE_VERSION} as collector

COPY --from=unpacker Wikibase /var/www/html/extensions/Wikibase

RUN rm /var/www/html/extensions/Wikibase/vendor -rf

FROM ${COMPOSER_IMAGE_NAME}:${COMPOSER_IMAGE_VERSION} as composer
# ###########################################################################
FROM bitnami/git:2.42.1-debian-11-r0 as git-checkout
WORKDIR /tmp
RUN git clone --single-branch --branch REL1_40 \
https://gerrit.wikimedia.org/r/mediawiki/extensions/Wikibase wikibase
WORKDIR /tmp/wikibase
RUN git submodule update --init --recursive
# TODO: do submodules have .git folders?
RUN rm -rf .git && rm -f .travis.yml

# ###########################################################################
FROM mediawiki:1.40.0 as collector
COPY --from=git-checkout /tmp/wikibase /var/www/html/extensions/Wikibase

# ###########################################################################
FROM composer:2.6.5 as composer
COPY --from=collector --chown=nobody:nogroup /var/www/html /var/www/html
WORKDIR /var/www/html/
COPY composer.local.json /var/www/html/composer.local.json
RUN composer install --verbose -n --no-dev

FROM ${MEDIAWIKI_IMAGE_NAME}:${MEDIAWIKI_IMAGE_VERSION}
RUN composer install --verbose -n --no-dev \
--ignore-platform-req=ext-calendar \
--ignore-platform-req=ext-intl

# ###########################################################################
FROM mediawiki:1.40.0
# Set error_reporting PHP.ini settings
# This is needed with PHP8+ and MediaWiki 1.39, as Wikibase contains deprecated code
# TODO: remove this and see how far we get
RUN { \
echo 'error_reporting = E_ALL ^ E_DEPRECATED'; \
} > /usr/local/etc/php/conf.d/error_reporting.ini

RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install --yes --no-install-recommends libbz2-dev=1.* gettext-base && \
DEBIAN_FRONTEND=noninteractive \
apt-get install --yes --no-install-recommends libbz2-dev=1.* gettext-base && \
rm -rf /var/lib/apt/lists/* && \
a2enmod rewrite && \
install -d /var/log/mediawiki -o www-data && \
Expand All @@ -42,8 +42,7 @@ COPY --from=composer --chown=root:root /var/www/html /var/www/html
COPY artifacts/wait-for-it.sh /wait-for-it.sh
COPY entrypoint.sh /entrypoint.sh

ARG MEDIAWIKI_SETTINGS_TEMPLATE_FILE
COPY ${MEDIAWIKI_SETTINGS_TEMPLATE_FILE} /LocalSettings.php.template
COPY LocalSettings.php.template /LocalSettings.php.template
COPY htaccess /var/www/html/.htaccess

RUN ln -s /var/www/html/ /var/www/html/w
Expand All @@ -63,7 +62,8 @@ ENV MW_SITE_NAME=${MW_SITE_NAME}\
MW_WG_UPLOAD_DIRECTORY=${MW_WG_UPLOAD_DIRECTORY}\
WIKIBASE_PINGBACK=${WIKIBASE_PINGBACK}

RUN chown www-data ${MW_WG_UPLOAD_DIRECTORY} -R && \
RUN mkdir /var/www/html/uploads && \
chown www-data /var/www/html/uploads -R && \
chmod o-w /var/www/html

ENTRYPOINT ["/bin/bash"]
Expand Down
2 changes: 1 addition & 1 deletion Docker/build/Wikibase/LocalSettings.php.template
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ wfLoadExtension( 'WikibaseClient', "${DOLLAR}IP/extensions/Wikibase/extension-cl
require_once "${DOLLAR}IP/extensions/Wikibase/client/ExampleSettings.php";

#Pingback
${DOLLAR}wgWBRepoSettings['wikibasePingback'] = ${WIKIBASE_PINGBACK};
# ${DOLLAR}wgWBRepoSettings['wikibasePingback'] = ${WIKIBASE_PINGBACK};

foreach (glob("LocalSettings.d/*.php") as ${DOLLAR}filename)
{
Expand Down

0 comments on commit c45d3c6

Please sign in to comment.