8.1 PDepend #69
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This file is part of the sshilko/php-sql-mydb package. | |
| # | |
| # (c) Sergei Shilko <contact@sshilko.com> | |
| # | |
| # MIT License | |
| # | |
| # For the full copyright and license information, please view the LICENSE | |
| # file that was distributed with this source code. | |
| # @license https://opensource.org/licenses/mit-license.php MIT | |
| name: 8.1 PDepend | |
| on: | |
| workflow_run: | |
| workflows: [ "8.1 Docker" ] | |
| types: | |
| - completed | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| if: "!contains(github.event.head_commit.message, 'skip-ci')" | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Load cached app docker image | |
| id: docker-php-image-cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: /tmp/docker-save | |
| key: ${{ runner.os }}-docker-php-xbuild-save-${{ hashFiles('build/Dockerfile.php.common', 'build/Dockerfile.php81') }} | |
| - name: Load cached Docker image | |
| run: docker load -i /tmp/docker-save/snapshot.tar && docker tag app/php-image-cache app/php | |
| - name: Docker boot | |
| env: | |
| DOCKER_BUILDKIT: '1' | |
| COMPOSE_DOCKER_CLI_BUILD: '1' | |
| SERVICES_NAME: "app.php81" | |
| run: docker-compose up -d $SERVICES_NAME | |
| - run: docker-compose ps | |
| - name: Sleep | |
| run: sleep 6 | |
| timeout-minutes: 1 | |
| - name: Cache Composer packages | |
| id: composer-cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: vendor | |
| key: ${{ runner.os }}-php81-${{ hashFiles('composer.lock') }}-composer-dev | |
| - name: Docker install dependencies | |
| run: docker-compose exec -T app.php81 composer install | |
| # Docs: https://phpunit.readthedocs.io/en/9.5/ | |
| - name: Docker run PHPUnit with MySQL5.7 | |
| run: docker-compose exec -T app.php81 composer app-pdepend | |
| # https://github.com/actions/upload-artifact | |
| - name: Upload Pdepend artifacts | |
| uses: actions/upload-artifact@v3 | |
| with: | |
| name: pdepend-output | |
| path: | | |
| build/tmp/pdepend-dependency-xml.xml | |
| build/tmp/pdepend-jdepend-chart.svg | |
| build/tmp/pdepend-jdepend-xml.xml | |
| build/tmp/pdepend-summary-xml.xml | |
| build/tmp/pdepend-overview-pyramid.svg | |
| retention-days: 1 | |
| badges: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 2 | |
| permissions: write-all | |
| steps: | |
| # https://github.com/actions/checkout | |
| - name: Checkout pages branch | |
| uses: actions/checkout@v3 | |
| with: | |
| ref: pages | |
| # https://github.com/marketplace/actions/download-a-build-artifact | |
| - name: Download all PHPUnit artifacts | |
| uses: actions/download-artifact@v3 | |
| with: | |
| name: pdepend-output | |
| path: php/pdepend | |
| - uses: nick-fields/retry@v2 | |
| name: Commit pdepend details | |
| continue-on-error: true | |
| with: | |
| timeout_seconds: 20 | |
| max_attempts: 3 | |
| retry_on: error | |
| command: | | |
| git status | |
| git config user.name github-actions | |
| git config user.email github-actions@github.com | |
| git pull | |
| git add php/pdepend/* | |
| git commit -m "generated pdepend artifacts from revision ${GITHUB_SHA::7}" | |
| git push | |