Add new container for upstream CI/CD

This commit is contained in:
Philipp Holzer 2023-04-02 12:28:08 +02:00
parent 367884e91e
commit 8e773da987
Signed by: nupplaPhil
GPG key ID: 24A7501396EB5432
3 changed files with 72 additions and 0 deletions

25
codecov/Dockerfile Normal file
View file

@ -0,0 +1,25 @@
FROM alpine
RUN set -eux; \
apk add --no-cache --virtual .gosu-deps \
ca-certificates \
curl \
dpkg \
gnupg \
perl-utils \
; \
# verify the signature
export GNUPGHOME="$(mktemp -d)"; \
curl https://keybase.io/codecovsecurity/pgp_keys.asc | gpg --no-default-keyring --keyring trustedkeys.gpg --import; \
curl -Os https://uploader.codecov.io/latest/alpine/codecov; \
curl -Os https://uploader.codecov.io/latest/alpine/codecov.SHA256SUM; \
curl -Os https://uploader.codecov.io/latest/alpine/codecov.SHA256SUM.sig; \
gpgv codecov.SHA256SUM.sig codecov.SHA256SUM; \
shasum -a 256 -c codecov.SHA256SUM; \
command -v gpgconf && gpgconf --kill all || :; \
rm -rf "$GNUPGHOME" codecov.SHA256SUM codecov.SHA256SUM.sig; \
mv codecov /usr/local/bin/codecov; \
# clean up fetch dependencies
apk del --no-network .gosu-deps; \
chmod +x /usr/local/bin/codecov; \
codecov --version;

30
php8.1/Dockerfile Normal file
View file

@ -0,0 +1,30 @@
FROM debian:buster
# install the PHP extensions we need
# see https://friendi.ca/resources/requirements/
RUN set -ex; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y wget gnupg2 apt-transport-https lsb-release ca-certificates mariadb-client; \
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y php8.1-gd git curl openssl \
php8.1-cli php8.1-curl php8.1-mysql wget make \
php8.1-redis php8.1-memcached php8.1-memcache \
php8.1-apcu php8.1-xdebug php8.1-xml php8.1-zip php8.1-dev php8.1-mbstring; \
apt-get autoremove -y; apt-get autoclean; apt-get clean; \
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*;
RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype iconv pcntl openssl
RUN set -ex; \
curl -O -L https://phar.phpunit.de/phpunit-9.phar; \
chmod +x phpunit-9.phar; \
mv phpunit-9.phar /usr/local/bin/phpunit;
RUN set -ex; \
curl -O -L https://getcomposer.org/download/1.10.15/composer.phar; \
chmod +x composer.phar; \
mv composer.phar /usr/local/bin/composer;
RUN phpdismod xdebug
ADD php.ini /etc/php/8.1/cli/conf.d/friendica.ini

17
php8.1/php.ini Normal file
View file

@ -0,0 +1,17 @@
memory_limit = 768M
phar.readonly = 0 ; only for building phar files on CI - should be disabled on production environments
; Opcache
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
apc.enabled=1
apc.enable_cli=1
error_reporting=-1
log_errors_max_len=0
zend.assertions=1
assert.exception=1
xdebug.show_exception_trace=0