Skip to content
Snippets Groups Projects
Commit 76399d56 authored by Reiter, Christoph's avatar Reiter, Christoph :snake:
Browse files

Add CI

Fix phpstan config to point to phpunit9 bootstrap.
Make phpstan happy by adding an annotation.
parent 4ef11da8
Branches
Tags
No related merge requests found
image: registry.gitlab.tugraz.at/dbp/middleware/dbp-api/api-core-bundle/main:v1
before_script:
- 'git config --global url."https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.tugraz.at/".insteadOf "git@gitlab.tugraz.at:"'
variables:
COMPOSER_CACHE_DIR: "$CI_PROJECT_DIR/_composer_cache"
cache:
key: ${CI_PROJECT_PATH}
paths:
- _composer_cache
stages:
- test
.test_defaults: &test_defaults
script:
- sudo update-alternatives --set php "/usr/bin/${PHP}"
- composer install
- composer test
test-php7.3:
stage: test
variables:
PHP: "php7.3"
<<: *test_defaults
test-php7.4:
stage: test
variables:
PHP: "php7.4"
<<: *test_defaults
test-php8.0:
allow_failure: true
stage: test
variables:
PHP: "php8.0"
<<: *test_defaults
psalm:
stage: test
allow_failure: true
script:
- sudo update-alternatives --set php /usr/bin/php7.3
- composer install
- composer run psalm
phpstan:
stage: test
allow_failure: true
script:
- sudo update-alternatives --set php /usr/bin/php7.3
- composer install
- composer run phpstan
cs-fixer:
stage: test
allow_failure: true
script:
- sudo update-alternatives --set php /usr/bin/php7.3
- composer install
- composer run cs
FROM debian:buster
ENV LANG C.UTF-8
ENV DEBIAN_FRONTEND noninteractive
# Basics
RUN apt-get update && apt-get install -y \
composer \
php-zip \
rsync \
sudo \
wget \
curl \
lsb-release \
&& rm -rf /var/lib/apt/lists/*
# PHP Repo
RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
RUN echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
# PHP 7.3
RUN apt-get update && apt-get install -y \
php7.3 \
php7.3-curl \
php7.3-soap \
php7.3-xml \
php7.3-ldap \
php7.3-zip \
php7.3-gmp \
php7.3-xdebug \
php7.3-mbstring \
&& rm -rf /var/lib/apt/lists/*
COPY ./php-ini-overrides.ini /etc/php/7.3/cli/conf.d/
# PHP 7.4
RUN apt-get update && apt-get install -y \
php7.4 \
php7.4-curl \
php7.4-soap \
php7.4-xml \
php7.4-ldap \
php7.4-zip \
php7.4-gmp \
php7.4-xdebug \
php7.4-mbstring \
&& rm -rf /var/lib/apt/lists/*
COPY ./php-ini-overrides.ini /etc/php/7.4/cli/conf.d/
# PHP 8.0
RUN apt-get update && apt-get install -y \
php8.0 \
php8.0-curl \
php8.0-soap \
php8.0-xml \
php8.0-ldap \
php8.0-zip \
php8.0-gmp \
php8.0-xdebug \
php8.0-mbstring \
&& rm -rf /var/lib/apt/lists/*
COPY ./php-ini-overrides.ini /etc/php/8.0/cli/conf.d/
# Default to PHP 7.3
RUN sudo update-alternatives --set php /usr/bin/php7.3
RUN sudo update-alternatives --set phar /usr/bin/phar7.3
RUN sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.3
# Add a normal user and enable sudo
RUN useradd -u 1000 -ms /bin/bash user
RUN echo 'user ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER user
WORKDIR /home/user
\ No newline at end of file
* In case of an incompatible change increase the tag version number in build.sh
* ./build.sh
* (first time) sudo docker login registry.gitlab.tugraz.at
* sudo docker push registry.gitlab.tugraz.at/dbp/middleware/dbp-api/api-core-bundle/main:v1
\ No newline at end of file
#!/bin/bash
set -e
TAG="registry.gitlab.tugraz.at/dbp/middleware/dbp-api/api-core-bundle/main:v1"
sudo docker build --tag "${TAG}" --file "Dockerfile" .
sudo docker run --rm --security-opt label=disable \
--volume "$(pwd)/..:/home/user/app" --workdir "/home/user/app" \
--tty --interactive "${TAG}" bash
echo "Now run: sudo docker push '$TAG'"
zend.assertions = 1
date.timezone = "Europe/Vienna"
...@@ -8,7 +8,7 @@ parameters: ...@@ -8,7 +8,7 @@ parameters:
- src - src
- tests - tests
bootstrapFiles: bootstrapFiles:
- vendor/bin/.phpunit/phpunit-8-0/vendor/autoload.php - vendor/bin/.phpunit/phpunit-9-0/vendor/autoload.php
excludes_analyse: excludes_analyse:
- tests/bootstrap.php - tests/bootstrap.php
- src/Swagger/DocumentationNormalizer.php - src/Swagger/DocumentationNormalizer.php
......
...@@ -40,6 +40,9 @@ class KeycloakBearerUser implements DBPUserInterface ...@@ -40,6 +40,9 @@ class KeycloakBearerUser implements DBPUserInterface
*/ */
private $isRealUser; private $isRealUser;
/**
* @var string|null
*/
private $loggingID; private $loggingID;
public function __construct(?string $username, string $accessToken, PersonProviderInterface $personProvider, array $scopes) public function __construct(?string $username, string $accessToken, PersonProviderInterface $personProvider, array $scopes)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment