Unverified Commit 9204e070 authored by Andreas Fernandez's avatar Andreas Fernandez Committed by GitHub
Browse files

Merge pull request #1 from TYPO3GmbH/develop

current state to master
parents 757e6da9 85a20764
......@@ -10,5 +10,7 @@ build_php70
build_php71
build_php72
build_php73
build_php74
build_bamboo
.idea
\ No newline at end of file
build_js
.idea
NAME_BASEIMAGE = typo3gmbh/baseimage
MAJOR_BASEIMAGE=3
MINOR_BASEIMAGE=0
PATCHLEVEL_BASEIMAGE=13
PATCHLEVEL_BASEIMAGE=16
FULLVERSION_BASEIMAGE=$(MAJOR_BASEIMAGE).$(MINOR_BASEIMAGE).$(PATCHLEVEL_BASEIMAGE)
SHORTVERSION_BASEIMAGE=$(MAJOR_BASEIMAGE).$(MINOR_BASEIMAGE)
......@@ -9,70 +9,77 @@ SHORTVERSION_BASEIMAGE=$(MAJOR_BASEIMAGE).$(MINOR_BASEIMAGE)
NAME_PHP53 = typo3gmbh/php53
MAJOR_PHP53=3
MINOR_PHP53=0
PATCHLEVEL_PHP53=13
PATCHLEVEL_PHP53=16
FULLVERSION_PHP53=$(MAJOR_PHP53).$(MINOR_PHP53).$(PATCHLEVEL_PHP53)
SHORTVERSION_PHP53=$(MAJOR_PHP53).$(MINOR_PHP53)
NAME_PHP54 = typo3gmbh/php54
MAJOR_PHP54=3
MINOR_PHP54=0
PATCHLEVEL_PHP54=13
PATCHLEVEL_PHP54=16
FULLVERSION_PHP54=$(MAJOR_PHP54).$(MINOR_PHP54).$(PATCHLEVEL_PHP54)
SHORTVERSION_PHP54=$(MAJOR_PHP54).$(MINOR_PHP54)
NAME_PHP55 = typo3gmbh/php55
MAJOR_PHP55=3
MINOR_PHP55=0
PATCHLEVEL_PHP55=14
PATCHLEVEL_PHP55=17
FULLVERSION_PHP55=$(MAJOR_PHP55).$(MINOR_PHP55).$(PATCHLEVEL_PHP55)
SHORTVERSION_PHP55=$(MAJOR_PHP55).$(MINOR_PHP55)
NAME_PHP56 = typo3gmbh/php56
MAJOR_PHP56=3
MINOR_PHP56=0
PATCHLEVEL_PHP56=14
PATCHLEVEL_PHP56=17
FULLVERSION_PHP56=$(MAJOR_PHP56).$(MINOR_PHP56).$(PATCHLEVEL_PHP56)
SHORTVERSION_PHP56=$(MAJOR_PHP56).$(MINOR_PHP56)
NAME_PHP70 = typo3gmbh/php70
MAJOR_PHP70=3
MINOR_PHP70=0
PATCHLEVEL_PHP70=14
PATCHLEVEL_PHP70=17
FULLVERSION_PHP70=$(MAJOR_PHP70).$(MINOR_PHP70).$(PATCHLEVEL_PHP70)
SHORTVERSION_PHP70=$(MAJOR_PHP70).$(MINOR_PHP70)
NAME_PHP71 = typo3gmbh/php71
MAJOR_PHP71=3
MINOR_PHP71=0
PATCHLEVEL_PHP71=13
PATCHLEVEL_PHP71=16
FULLVERSION_PHP71=$(MAJOR_PHP71).$(MINOR_PHP71).$(PATCHLEVEL_PHP71)
SHORTVERSION_PHP71=$(MAJOR_PHP71).$(MINOR_PHP71)
NAME_PHP72 = typo3gmbh/php72
MAJOR_PHP72=3
MINOR_PHP72=0
PATCHLEVEL_PHP72=13
PATCHLEVEL_PHP72=16
FULLVERSION_PHP72=$(MAJOR_PHP72).$(MINOR_PHP72).$(PATCHLEVEL_PHP72)
SHORTVERSION_PHP72=$(MAJOR_PHP72).$(MINOR_PHP72)
NAME_PHP73 = typo3gmbh/php73
MAJOR_PHP73=3
MINOR_PHP73=0
PATCHLEVEL_PHP73=9
PATCHLEVEL_PHP73=12
FULLVERSION_PHP73=$(MAJOR_PHP73).$(MINOR_PHP73).$(PATCHLEVEL_PHP73)
SHORTVERSION_PHP73=$(MAJOR_PHP73).$(MINOR_PHP73)
NAME_PHP74 = typo3gmbh/php74
MAJOR_PHP74=3
MINOR_PHP74=0
PATCHLEVEL_PHP74=3
FULLVERSION_PHP74=$(MAJOR_PHP74).$(MINOR_PHP74).$(PATCHLEVEL_PHP74)
SHORTVERSION_PHP74=$(MAJOR_PHP74).$(MINOR_PHP74)
NAME_JS = typo3gmbh/js
MAJOR_JS=1
MAJOR_JS=2
MINOR_JS=0
PATCHLEVEL_JS=0
PATCHLEVEL_JS=2
FULLVERSION_JS=$(MAJOR_JS).$(MINOR_JS).$(PATCHLEVEL_JS)
SHORTVERSION_JS=$(MAJOR_JS).$(MINOR_JS)
NAME_BAMBOO = typo3gmbh/bamboo-remote-agent
MAJOR_BAMBOO=1
MINOR_BAMBOO=0
PATCHLEVEL_BAMBOO=12
PATCHLEVEL_BAMBOO=14
FULLVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO).$(PATCHLEVEL_BAMBOO)
SHORTVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO)
......@@ -90,6 +97,7 @@ SHORTVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO)
build_php71 \
build_php72 \
build_php73 \
build_php74 \
build_js \
build_bamboo \
release \
......@@ -102,6 +110,7 @@ SHORTVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO)
release_php71 \
release_php72 \
release_php73 \
release_php74 \
release_js \
release_bamboo \
clean \
......@@ -114,6 +123,7 @@ SHORTVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO)
clean_php71 \
clean_php72 \
clean_php73 \
clean_php74 \
clean_js \
clean_bamboo \
clean_images \
......@@ -126,6 +136,7 @@ SHORTVERSION_BAMBOO=$(MAJOR_BAMBOO).$(MINOR_BAMBOO)
clean_images_php71 \
clean_images_php72 \
clean_images_php73 \
clean_images_php74 \
clean_images_js \
clean_images_bamboo
......@@ -148,7 +159,8 @@ build_php: \
build_php70 \
build_php71 \
build_php72 \
build_php73
build_php73 \
build_php74
release: \
release_baseimage \
......@@ -164,7 +176,8 @@ release_php: \
release_php70 \
release_php71 \
release_php72 \
release_php73
release_php73 \
release_php74
clean: \
clean_baseimage \
......@@ -176,6 +189,7 @@ clean: \
clean_php71 \
clean_php72 \
clean_php73 \
clean_php74 \
clean_bamboo \
clean_js
......@@ -190,6 +204,7 @@ clean_images: \
clean_images_php71 \
clean_images_php72 \
clean_images_php73 \
clean_images_php74 \
clean_images_bamboo \
clean_js
......@@ -411,6 +426,29 @@ clean_images_php73:
docker rmi $(NAME_PHP73):$(FULLVERSION_PHP73) || true
build_php74: build_baseimage
rm -rf build_php74
cp -pR php74 build_php74
docker build -t $(NAME_PHP74):$(FULLVERSION_PHP74) build_php74
docker tag $(NAME_PHP74):$(FULLVERSION_PHP74) $(NAME_PHP74):$(SHORTVERSION_PHP74)
release_php74:
@if ! docker images $(NAME_PHP74) | awk '{ print $$2 }' | grep -q -F $(FULLVERSION_PHP74); then \
echo "$(NAME_PHP74) version $(FULLVERSION_PHP74) is not yet built. Please run 'make build'"; false; \
fi
docker tag $(NAME_PHP74):$(FULLVERSION_PHP74) $(NAME_PHP74):latest
docker push $(NAME_PHP74):latest
docker push $(NAME_PHP74):$(FULLVERSION_PHP74)
docker push $(NAME_PHP74):$(SHORTVERSION_PHP74)
clean_php74:
rm -rf build_php74
clean_images_php74:
docker rmi $(NAME_PHP74):latest || true
docker rmi $(NAME_PHP74):$(SHORTVERSION_PHP74) || true
docker rmi $(NAME_PHP74):$(FULLVERSION_PHP74) || true
build_bamboo: build_baseimage
rm -rf build_bamboo
......
......@@ -69,4 +69,5 @@ packages (eg. younger php versions). To create a new set of containers, these st
this will drastically increase build server load, but reduce time. A 'make -j8 build' would build
8 php containers in parallel, after baseimage has been built.
* 'make release' will add tags and push to docker hub. It will ask for according credentials.
\ No newline at end of file
If it doesn't, but reject the push' run 'docker login docker.io' and log in with the credentials from LastPass.
FROM node:8
FROM node:12
MAINTAINER TYPO3 GmbH <info@typo3.com>
ADD . /pd_build
......
File mode changed from 100644 to 100755
File mode changed from 100644 to 100755
File mode changed from 100644 to 100755
......@@ -201,5 +201,5 @@ sed -i s/';phar.readonly = On'/'phar.readonly = Off'/ /usr/local/lib/php.ini
sed -i s/';date.timezone ='/'date.timezone = UTC'/ /usr/local/lib/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -203,5 +203,5 @@ sed -i s/';phar.readonly = On'/'phar.readonly = Off'/ /usr/local/lib/php.ini
sed -i s/';date.timezone ='/'date.timezone = UTC'/ /usr/local/lib/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -225,5 +225,5 @@ make && make install
echo 'extension=memcache.so' >> /usr/local/lib/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -295,5 +295,5 @@ php -i | \
grep -v '^$' > /etc/php/cli-no-xdebug/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -303,5 +303,5 @@ php -i | \
grep -v '^$' > /etc/php/cli-no-xdebug/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -89,5 +89,5 @@ php -i | \
grep -v '^$' > /etc/php/cli-no-xdebug/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -88,5 +88,5 @@ php -i | \
grep -v '^$' > /etc/php/cli-no-xdebug/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
......@@ -88,5 +88,5 @@ php -i | \
grep -v '^$' > /etc/php/cli-no-xdebug/php.ini
# Install composer
curl -sSL https://getcomposer.org/download/1.8.4/composer.phar -o /usr/bin/composer
curl -sSL https://getcomposer.org/download/1.9.1/composer.phar -o /usr/bin/composer
chmod +x /usr/bin/composer
FROM typo3gmbh/baseimage:latest
MAINTAINER TYPO3 GmbH <info@typo3.com>
ADD . /pd_build
RUN /pd_build/enable_repos.sh && \
/pd_build/nodejs.sh && \
/pd_build/php.sh && \
/pd_build/finalize.sh
export LC_ALL=C
export DEBIAN_FRONTEND=noninteractive
function minimal_apt_get_install()
{
if [[ ! -e /var/lib/apt/lists/lock ]]; then
apt-get update
fi
apt-get install -y --no-install-recommends "$@"
}
#!/bin/bash
set -e
source /pd_build/buildconfig
set -x
apt-get update
# ondrej with a php 7.4
echo deb http://ppa.launchpad.net/ondrej/php/ubuntu bionic main > /etc/apt/sources.list.d/php.list
# ondrej key - the recv-keys part takes a bit of time, so it's faster to receive multiple keys at once.
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys \
E5267A6C \
#
# for msodbcsql17 mssql-tools sqlserv
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
apt-get update
apt-get -y dist-upgrade
#!/bin/bash
set -e
source /pd_build/buildconfig
set -x
# remove a ton of packages needed for compilation of php modules
apt-get remove -y --purge \
autoconf \
autotools-dev \
file \
libquadmath0 \
libtool \
php7.4-dev \
#
apt-get clean
apt-get -y autoremove
rm -rf \
/var/lib/apt/lists/* \
/root/.npm/ \
/tmp/* \
/var/tmp/* \
/usr/local/src/* \
#
rm -rf /pd_build
#!/bin/bash
set -e
source /pd_build/buildconfig
set -x
# Install Node.js and some packages to successfully compile stuff
minimal_apt_get_install npm nodejs make g++
# And have yarn
npm install -g yarn
# And remove npm again
apt-get remove -y --purge npm
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment