86 lines
1.9 KiB
YAML
86 lines
1.9 KiB
YAML
version: 2.1
|
|
|
|
orbs:
|
|
codacy: codacy/base@1.2.1
|
|
|
|
references:
|
|
default_php_job: &default_php_job
|
|
docker:
|
|
- image: circleci/php:7.4-node-browsers
|
|
working_directory: ~/workdir
|
|
workspace_attach: &workspace_attach
|
|
attach_workspace:
|
|
at: ~/
|
|
workspace_persist: &workspace_persist
|
|
persist_to_workspace:
|
|
paths:
|
|
- workdir/*
|
|
root: ~/
|
|
cache_restore: &cache_restore
|
|
restore_cache:
|
|
keys:
|
|
- composer-v1-{{ checksum "composer.lock" }}
|
|
- composer-v1-
|
|
cache_save: &cache_save
|
|
save_cache:
|
|
key: composer-v1-{{ checksum "composer.lock" }}
|
|
paths:
|
|
- vendor
|
|
|
|
jobs:
|
|
test:
|
|
<<: *default_php_job
|
|
steps:
|
|
- *workspace_attach
|
|
- *cache_restore
|
|
- run:
|
|
command: composer install
|
|
- *cache_save
|
|
- run:
|
|
command: composer test
|
|
- *workspace_persist
|
|
publish:
|
|
<<: *default_php_job
|
|
steps:
|
|
- *workspace_attach
|
|
- run:
|
|
command: |
|
|
composer codacyCoverage
|
|
composer build
|
|
- *workspace_persist
|
|
publish_circleci_artifacts:
|
|
machine: true
|
|
working_directory: ~/workdir
|
|
steps:
|
|
- *workspace_attach
|
|
- store_artifacts:
|
|
path: ~/workdir/artifacts/
|
|
|
|
workflows:
|
|
version: 2
|
|
compile_test_deploy:
|
|
jobs:
|
|
- codacy/checkout_and_version
|
|
- test:
|
|
requires:
|
|
- codacy/checkout_and_version
|
|
- publish:
|
|
requires:
|
|
- test
|
|
filters:
|
|
branches:
|
|
only:
|
|
- master
|
|
- publish_circleci_artifacts:
|
|
requires:
|
|
- publish
|
|
- codacy/publish_ghr:
|
|
path: ~/workdir/artifacts/
|
|
requires:
|
|
- publish_circleci_artifacts
|
|
- codacy/tag_version:
|
|
name: tag_version
|
|
context: CodacyAWS
|
|
requires:
|
|
- codacy/publish_ghr
|