Skip to content
Commits on Source (2)
  • Seblu's avatar
    Update php version to 8.1 · c6adef3a
    Seblu authored
    From https://www.dokuwiki.org/requirements
    
    PHP needs to be at least version 7.2 since the “Igor” release, support for previous PHP versions has been dropped on this release. PHP versions up to and including 7.4 are now EOL, therefore using the latest version of the 7.4.x branch or 8.x is highly recommended. Dokuwiki is compatible with PHP 8.0 and 8.1.
    c6adef3a
  • Seblu's avatar
    Update CI/CD · d5a4e628
    Seblu authored
    d5a4e628
stages: update:
- build variables:
- push BUILD_EXTRA: "--no-cache --pull"
BUILD_NAME: "$CI_REGISTRY_IMAGE"
docker_build: BUILD_PUSH: "1"
stage: build before_script: docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
script: BUILD_EXTRA="--no-cache --pull" ./build.sh $CI_REGISTRY_IMAGE script: ./build.sh
docker_push:
stage: push
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
script:
- docker push "${CI_REGISTRY_IMAGE}:oldstable"
- docker push "${CI_REGISTRY_IMAGE}:stable"
- docker push "${CI_REGISTRY_IMAGE}:rc"
- docker push "${CI_REGISTRY_IMAGE}:dev"
- docker push "${CI_REGISTRY_IMAGE}:latest"
only: only:
refs: refs:
- master - master
FROM php:7-apache FROM php:8.1-apache
MAINTAINER Sébastien Luttringer <seblu@seblu.net> MAINTAINER Sébastien Luttringer <seblu@seblu.net>
......
...@@ -2,39 +2,40 @@ ...@@ -2,39 +2,40 @@
set -e set -e
declare -r name=${1:-docker.seblu.net/docker/dokuwiki} # Build dokuwiki images.
# Set environ BUILD_PUSH to push build images.
# Set environ BUILD_EXTRA to add arguents to docker build command line.
# Define build image name. Define env BUILD_NAME to override.
declare BUILD_NAME=${BUILD_NAME:-docker.seblu.net/docker/dokuwiki}
# Dokuwiki upstream consider the last reliable version to be rc when available. # Dokuwiki upstream consider the last reliable version to be rc when available.
# The update_check in dokuwiki is always looking for RC too. # The update_check in dokuwiki is always looking for RC too.
# https://forum.dokuwiki.org/d/8939-update-check-should-not-be-used-for-release-candidates # https://forum.dokuwiki.org/d/8939-update-check-should-not-be-used-for-release-candidates
# so we tag latest rc when available, either stable or oldstable. # so we tag latest rc when available, either stable or oldstable.
declare latest='' declare latest=''
# declare well known versions. order matter! # Declare well known versions. Order matter! Latest is the latest tag.
declare -a versions=(dev oldstable stable rc) declare -r -A versions=(
declare -A url=(
["dev"]="http://github.com/splitbrain/dokuwiki/tarball/master" ["dev"]="http://github.com/splitbrain/dokuwiki/tarball/master"
["oldstable"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-oldstable.tgz" ["oldstable"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-oldstable.tgz"
["stable"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz" ["stable"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz"
["rc"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz" ["rc"]="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz"
) )
for version in "${versions[@]}"; do for version in "${!versions[@]}"; do
# do not build unavailable url (e.g: rc is only avaible before a new release) # Do not build unavailable url (e.g: rc is only avaible before a new release)
echo "Checking $version url ${url[$version]}" echo "Checking $version at ${versions[$version]}"
curl -Isf "${url[$version]}" -o /dev/null || continue curl -Isf "${versions[$version]}" -o /dev/null || continue
echo "Building $version" echo "Building $version"
docker build --build-arg=DOKUWIKI_URL="${url[$version]}" --tag "$name:$version" $BUILD_EXTRA . docker build --build-arg=DOKUWIKI_URL="${versions[$version]}" --tag "$BUILD_NAME:$version" $BUILD_EXTRA .
[[ "$BUILD_PUSH" ]] && docker push "$BUILD_NAME:$version"
latest=$version latest=$version
done done
echo "Tag latest: $latest" # The latest tag is special
docker tag $name:$latest $name:latest if [[ "$latest" ]]; then
echo "Tag latest is $latest"
echo ========================================================================= docker tag "$BUILD_NAME:$latest" "$BUILD_NAME:latest"
echo ::: IMAGE NOT PUSHED [[ "$BUILD_PUSH" ]] && docker push "$BUILD_NAME:latest"
echo ::: to push image: fi
for version in "${versions[@]}"; do
echo docker push "$name:$version"
done
echo docker push "${name%:*}:latest"
echo =========================================================================