Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
G
gitlab-ci
Manage
Activity
Members
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
wpdesk
gitlab-ci
Commits
636c46fc
Commit
636c46fc
authored
6 years ago
by
Grzegorz Rola
Browse files
Options
Downloads
Patches
Plain Diff
tests templates
parent
90537e38
No related branches found
No related tags found
No related merge requests found
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
.gitlab-ci.yml
+249
-0
249 additions, 0 deletions
.gitlab-ci.yml
README.md
+1
-0
1 addition, 0 deletions
README.md
templates/tests.yml
+61
-0
61 additions, 0 deletions
templates/tests.yml
with
311 additions
and
0 deletions
.gitlab-ci.yml
0 → 100644
+
249
−
0
View file @
636c46fc
variables
:
WPDESK_CI_VERSION
:
1.10.19
MYSQL_ROOT_PASSWORD
:
mysql
MYSQL_DATABASE
:
wptest
MYSQL_USER
:
mysql
MYSQL_PASSWORD
:
mysql
MYSQL_INNODB_LOG_BUFFER_SIZE
:
32M
PHP_ERROR_REPORTING
:
E_ALL
COMPOSER_ALLOW_SUPERUSER
:
1
GIT_STRATEGY
:
fetch
ACCEPTANCE_ERROR_PATH
:
${CI_PROJECT_DIR}/acceptance
stages
:
-
tools
-
tests
-
pre-deploy
-
deploy
.template
:
&job-deploy-template
image
:
wpdesknet/amazon-svn-deploy
stage
:
deploy
dependencies
:
-
build to deploy
-
unit test lastest coverage
-
integration test lastest coverage
retry
:
2
when
:
manual
only
:
-
tags
before_script
:
-
cd ${CI_PROJECT_DIR}
phpmetric metrics
:
stage
:
tools
image
:
wpdesknet/phpunit-woocommerce:0-0
allow_failure
:
true
when
:
manual
artifacts
:
when
:
always
expire_in
:
1 month
name
:
"
metrics"
paths
:
-
${CI_PROJECT_DIR}/phpmetric
script
:
-
echo ${WPDESK_CI_VERSION}
-
composer require phpmetrics/phpmetrics
-
composer update --no-progress
-
php ./vendor/bin/phpmetrics --report-html=phpmetric .
churn metrics
:
stage
:
tools
image
:
wpdesknet/phpunit-woocommerce:0-0
allow_failure
:
true
when
:
manual
script
:
-
echo ${WPDESK_CI_VERSION}
-
composer require bmitch/churn-php
-
composer update --no-progress
-
vendor/bin/churn run classes inc
#code style test:
# stage: tests
# image: wpdesknet/phpunit-woocommerce:0-0
# allow_failure: true
# script:
# - echo ${WPDESK_CI_VERSION}
# - composer update --no-progress
# - vendor/bin/phpcs
unit test lastest
:
<<
:
*job-test-unit-template-fast
image
:
wpdesknet/phpunit-woocommerce:0-0
integration test lastest
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:0-0
unit test lastest coverage
:
<<
:
*job-test-unit-template
image
:
wpdesknet/phpunit-woocommerce:0-0
integration test lastest coverage
:
<<
:
*job-test-integration-template
image
:
wpdesknet/phpunit-woocommerce:0-0
integration test php7-1 wc-1
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:1-1
integration test php7 wc-2
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:2-2
integration test php-7 wc-3
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:2-3
integration test php5-6
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:3-0
integration test php5-5
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:4-0
integration test current woocommerce
:
<<
:
*job-test-integration-template-fast
image
:
wpdesknet/phpunit-woocommerce:0-0
allow_failure
:
true
before_script
:
-
cd /tmp
-
rm -rf woocommerce
-
git clone https://github.com/woocommerce/woocommerce.git
-
cd ${CI_PROJECT_DIR}
acceptance test
:
image
:
wpdesknet/node
variables
:
CI_DEBUG_SERVICES
:
trace
services
:
-
name
:
mysql:5.6
alias
:
mysqltests
-
name
:
wpdesknet/apache-woocommerce:latest
alias
:
wootests
-
name
:
selenium/standalone-chrome
alias
:
selenium
artifacts
:
when
:
always
expire_in
:
1 day
name
:
"
error
logs"
paths
:
-
${CI_PROJECT_DIR}/acceptance
stage
:
tests
allow_failure
:
true
script
:
-
cd ${CI_PROJECT_DIR}
-
composer update --no-progress --no-dev
-
if [[ -f ${CI_PROJECT_DIR}/tests/acceptance/prepare.sh ]]; then sh ${CI_PROJECT_DIR}/tests/acceptance/prepare.sh; fi
-
export MYSQL_IP=$(awk '/^[[:space:]]*($|#)/{next} /mysqltests/{print $1; exit}' /etc/hosts)
-
export WOOTESTS_IP=$(awk '/^[[:space:]]*($|#)/{next} /wootests/{print $1; exit}' /etc/hosts)
-
echo "http://wootests/wpdesk_init.php?mysql_ip=${MYSQL_IP}&wootests_ip=${WOOTESTS_IP}"
-
wget -O /tmp/wpdesk_init.txt "http://wootests/wpdesk_init.php?mysql_ip=${MYSQL_IP}&wootests_ip=${WOOTESTS_IP}"
-
tail -50 /tmp/wpdesk_init.txt
-
sh /tmp/clone.sh git@gitlab.com:wpdesk/plugins-tests.git /tmp/tests headless
-
cd /tmp/tests
-
npm install
-
npm install -g grunt-cli
-
cd node_modules/.bin
-
./webdriver-manager update
-
cd ../
-
mkdir -p ${CI_PROJECT_DIR}/acceptance/reports/html/screenshot
-
grunt chrome-${CI_PROJECT_NAME}
apigen docs
:
image
:
name
:
wpdesknet/apigen
stage
:
pre-deploy
artifacts
:
expire_in
:
1 day
name
:
"
docs"
paths
:
-
docs/
script
:
-
echo ${WPDESK_CI_VERSION}
-
ls -l
-
/app/vendor/bin/apigen generate
-
php /app/hooks-docs.php ${CI_PROJECT_DIR}
only
:
-
tags
pages
:
stage
:
deploy
dependencies
:
-
apigen docs
script
:
-
rm -rf public
-
mv docs/ public/
-
'
curl
-X
POST
--data-urlencode
"payload={\"text\":
\"Dokumentacja
projektu
${CI_PROJECT_NAME}
w
wersji
${CI_COMMIT_REF_NAME}
umieszczona
w
<https://gitlab.com/wpdesk/${CI_PROJECT_NAME}/pages|pages>
\",
}"
https://hooks.slack.com/services/${SLACK_AUTH}'
artifacts
:
expire_in
:
1 day
paths
:
-
public
only
:
-
tags
build to deploy
:
image
:
wpdesknet/phpunit-woocommerce:4-0
stage
:
pre-deploy
artifacts
:
expire_in
:
1 month
name
:
"
production
release"
paths
:
-
release
-
release.zip
script
:
-
echo ${WPDESK_CI_VERSION}
-
php --version
-
ls -l
-
/tmp/set_version.sh ${CI_COMMIT_REF_NAME}
-
rm -rf ${CI_PROJECT_DIR}/release ${CI_PROJECT_DIR}/release.zip /tmp/release
-
mkdir /tmp/release
-
mkdir -p ${CI_PROJECT_DIR}/release/${CI_PROJECT_NAME}
-
cp -rf ${CI_PROJECT_DIR}/* /tmp/release
-
cp -rf /tmp/release/* ${CI_PROJECT_DIR}/release/${CI_PROJECT_NAME}
-
cd ${CI_PROJECT_DIR}/release/${CI_PROJECT_NAME}
-
composer install --no-dev --no-progress --optimize-autoloader
-
rm -rf build-coverage release tests docs .git .editorconfig .gitignore .gitlab-ci.yml apigen.neon phpunit.xml acceptance test_soap.php .gitlab
-
rm -rf composer.json composer.lock phpcs.xml.dist phpunit-integration.xml phpunit-unit.xml composer.phar wp-cli.phar
-
cd ../
-
zip -r -q ../release.zip ./
only
:
-
tags
deploy to shop
:
<<
:
*job-deploy-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
/tmp/deploy_shop.sh ${CI_PROJECT_NAME} release.zip ${CI_PROJECT_NAME}.zip
-
'
curl
-X
POST
--data-urlencode
"payload={\"text\":
\"Projekt
<https://gitlab.com/wpdesk/${CI_PROJECT_NAME}|${CI_PROJECT_NAME}>
zdeployowany
do
sklepu
w
wersji
${CI_COMMIT_REF_NAME}\",
}"
https://hooks.slack.com/services/${SLACK_AUTH}'
environment
:
name
:
wpdesk shop
url
:
https://wpdeskplugin.s3.amazonaws.com/${CI_PROJECT_NAME}.zip
deploy to demo
:
<<
:
*job-deploy-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
/tmp/deploy_demo.sh release/${CI_PROJECT_NAME} ${CI_PROJECT_NAME}
-
'
curl
-X
POST
--data-urlencode
"payload={\"text\":
\"Projekt
<https://gitlab.com/wpdesk/${CI_PROJECT_NAME}|${CI_PROJECT_NAME}>
zdeployowany
do
demo
w
wersji
${CI_COMMIT_REF_NAME}\",
}"
https://hooks.slack.com/services/${SLACK_AUTH}'
environment
:
name
:
wpdesk demo
url
:
https://demo.wpdesk.org
deploy to repository
:
<<
:
*job-deploy-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
rm -rf /tmp/svn-repository
-
mkdir /tmp/svn-repository
-
/tmp/deploy_repository.sh ${CI_PROJECT_NAME} ${CI_PROJECT_DIR}/release/${CI_PROJECT_NAME} /tmp/svn-repository
-
'
curl
-X
POST
--data-urlencode
"payload={\"text\":
\"Projekt
<https://gitlab.com/wpdesk/${CI_PROJECT_NAME}|${CI_PROJECT_NAME}>
zdeployowany
do
repozytorium
WP
w
wersji
${CI_COMMIT_REF_NAME}\",
}"
https://hooks.slack.com/services/${SLACK_AUTH}'
environment
:
name
:
wordpress repository
url
:
https://downloads.wordpress.org/plugin/${CI_PROJECT_NAME}.${CI_COMMIT_REF_NAME}.zip
This diff is collapsed.
Click to expand it.
README.md
+
1
−
0
View file @
636c46fc
# gitlab-ci
Gitlab CI files
\ No newline at end of file
This diff is collapsed.
Click to expand it.
templates/tests.yml
0 → 100644
+
61
−
0
View file @
636c46fc
.template
:
&job-test-template
stage
:
tests
coverage
:
'
/^\s*Lines:\s*\d+.\d+\%/'
.template
:
&job-test-integration-template
<<
:
*job-test-template
services
:
-
mysql:5.6
script
:
-
echo ${WPDESK_CI_VERSION}
-
ls -l
-
php --version
-
cat /tmp/wordpress-develop/src/wp-includes/version.php
-
cat /tmp/woocommerce/woocommerce.php
-
composer update --no-progress
-
if [[ -f tests/integration/prepare.sh ]]; then sh tests/integration/prepare.sh; fi
-
vendor/bin/phpunit --configuration phpunit-integration.xml --coverage-text --colors=never
only
:
-
tags
.template
:
&job-test-integration-template-fast
<<
:
*job-test-integration-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
ls -l
-
php --version
-
cat /tmp/wordpress-develop/src/wp-includes/version.php
-
cat /tmp/woocommerce/woocommerce.php
-
composer update --no-progress
-
if [[ -f tests/integration/prepare.sh ]]; then sh tests/integration/prepare.sh; fi
-
vendor/bin/phpunit --configuration phpunit-integration.xml --no-coverage
except
:
-
tags
only
:
.template
:
&job-test-unit-template
<<
:
*job-test-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
ls -l
-
php --version
-
cat /tmp/wordpress-develop/src/wp-includes/version.php
-
cat /tmp/woocommerce/woocommerce.php
-
composer update --no-progress
-
vendor/bin/phpunit --configuration phpunit-unit.xml --coverage-text --colors=never
only
:
-
tags
.template
:
&job-test-unit-template-fast
<<
:
*job-test-unit-template
script
:
-
echo ${WPDESK_CI_VERSION}
-
ls -l
-
php --version
-
cat /tmp/wordpress-develop/src/wp-includes/version.php
-
cat /tmp/woocommerce/woocommerce.php
-
composer update --no-progress
-
vendor/bin/phpunit --configuration phpunit-unit.xml --no-coverage
except
:
-
tags
only
:
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment