From ee144f72779b7fafa3e4ef83a9f7cf9b65d8c33a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=91cze=20Bence?= Date: Wed, 22 Dec 2021 01:22:19 +0100 Subject: [PATCH] add Jenkinsfile and Dockerfile-test --- Jenkinsfile | 41 +++++++++++++++++++++++++++++++++++++++++ docker/Dockerfile-test | 7 +++++++ 2 files changed, 48 insertions(+) create mode 100644 Jenkinsfile create mode 100644 docker/Dockerfile-test diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..2f3e71f --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,41 @@ +pipeline { + agent any + + stages { + stage('Unit Testing') { + agent { + dockerfile { + filename 'docker/Dockerfile-test' + dir '.' + reuseNode true + } + } + steps { + sh 'vendor/bin/phpunit --log-junit unit_test_results.xml --testdox tests' + } + post { + success { + archiveArtifacts 'unit_test_results.xml' + } + } + } + + stage('Static Code Analysis') { + agent { + dockerfile { + filename 'docker/Dockerfile-test' + dir '.' + reuseNode true + } + } + steps { + sh 'php -d memory_limit=1G vendor/bin/phpstan analyse -c phpstan.neon --error-format=prettyJson > static_code_analysis_results.json' + } + post { + success { + archiveArtifacts 'static_code_analysis_results.json' + } + } + } + } +} diff --git a/docker/Dockerfile-test b/docker/Dockerfile-test new file mode 100644 index 0000000..96d897b --- /dev/null +++ b/docker/Dockerfile-test @@ -0,0 +1,7 @@ +FROM php:7.4.7-cli-buster + +RUN apt-get update && apt-get install -y unzip +RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer + +COPY composer.* /tmp/workspace +RUN cd /tmp/workspace && composer install