Skip to content

Commit d7e7490

Browse files
#2 Add notifications, quality & test github workflows
1 parent 4315f50 commit d7e7490

File tree

5 files changed

+187
-0
lines changed

5 files changed

+187
-0
lines changed

.github/ISSUE_TEMPLATE.md

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
## Description
2+
3+
<!-- Please describe the issue here -->
4+
5+
## Requirements
6+
7+
* Documentation updates
8+
- [ ] Reference
9+
- [ ] Changelog
10+
* [ ] Unit tests
11+
12+
## Breaking changes
13+
14+
<!-- Please list here every breaking changes this might induce with minor/major labels -->

.github/PULL_REQUEST_TEMPLATE.md

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
## Description
2+
3+
<!-- Please describe the PR purpose, with references to the issues -->
4+
5+
## Requirements
6+
7+
* Documentation updates
8+
- [ ] Reference
9+
- [ ] Changelog
10+
* [ ] Unit tests
11+
12+
## Breaking changes
13+
14+
<!-- Please list here every breaking changes this PR might induce with minor/major labels -->

.github/workflows/notifications.yml

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Rocket chat notifications
2+
3+
# Controls when the action will run.
4+
on:
5+
push:
6+
tags:
7+
- '*'
8+
9+
jobs:
10+
notification:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Get the tag short reference
15+
id: get_tag
16+
run: echo "TAG=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_OUTPUT
17+
18+
- name: Rocket.Chat Notification
19+
uses: madalozzo/Rocket.Chat.GitHub.Action.Notification@master
20+
with:
21+
type: success
22+
job_name: "[cleverage/soap-process-bundle](https://github.com/cleverage/soap-process-bundle) : ${{ steps.get_tag.outputs.TAG }} has been released"
23+
url: ${{ secrets.CLEVER_AGE_ROCKET_CHAT_WEBOOK_URL }}

.github/workflows/quality.yml

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Quality
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
phpstan:
14+
name: PHPStan
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
- name: Install PHP with extensions
20+
uses: shivammathur/setup-php@v2
21+
with:
22+
php-version: '8.2'
23+
coverage: none
24+
tools: composer:v2
25+
- name: Install Composer dependencies (locked)
26+
uses: ramsey/composer-install@v3
27+
- name: PHPStan
28+
run: vendor/bin/phpstan --no-progress --memory-limit=1G analyse --error-format=github
29+
30+
php-cs-fixer:
31+
name: PHP-CS-Fixer
32+
runs-on: ubuntu-latest
33+
steps:
34+
- name: Checkout
35+
uses: actions/checkout@v4
36+
- name: Install PHP with extensions
37+
uses: shivammathur/setup-php@v2
38+
with:
39+
php-version: '8.2'
40+
coverage: none
41+
tools: composer:v2
42+
- name: Install Composer dependencies (locked)
43+
uses: ramsey/composer-install@v3
44+
- name: PHP-CS-Fixer
45+
run: vendor/bin/php-cs-fixer fix --diff --dry-run --show-progress=none
46+
47+
rector:
48+
name: Rector
49+
runs-on: ubuntu-latest
50+
steps:
51+
- name: Checkout code
52+
uses: actions/checkout@v4
53+
- name: Install PHP with extensions
54+
uses: shivammathur/setup-php@v2
55+
with:
56+
php-version: '8.2'
57+
coverage: none
58+
tools: composer:v2
59+
- name: Install Composer dependencies (locked)
60+
uses: ramsey/composer-install@v3
61+
- name: Rector
62+
run: vendor/bin/rector --no-progress-bar --dry-run

.github/workflows/test.yml

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Test
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
test:
14+
name: PHP ${{ matrix.php-version }} + ${{ matrix.dependencies }} + ${{ matrix.variant }}
15+
runs-on: ubuntu-latest
16+
continue-on-error: ${{ matrix.allowed-to-fail }}
17+
env:
18+
SYMFONY_REQUIRE: ${{matrix.symfony-require}}
19+
20+
strategy:
21+
matrix:
22+
php-version:
23+
- '8.2'
24+
- '8.3'
25+
dependencies: [highest]
26+
allowed-to-fail: [false]
27+
symfony-require: ['']
28+
variant: [normal]
29+
include:
30+
- php-version: '8.2'
31+
dependencies: highest
32+
allowed-to-fail: false
33+
symfony-require: 6.4.*
34+
variant: symfony/symfony:"6.4.*"
35+
- php-version: '8.2'
36+
dependencies: highest
37+
allowed-to-fail: false
38+
symfony-require: 7.1.*
39+
variant: symfony/symfony:"7.1.*"
40+
- php-version: '8.3'
41+
dependencies: highest
42+
allowed-to-fail: false
43+
symfony-require: 6.4.*
44+
variant: symfony/symfony:"6.4.*"
45+
- php-version: '8.3'
46+
dependencies: highest
47+
allowed-to-fail: false
48+
symfony-require: 7.1.*
49+
variant: symfony/symfony:"7.1.*"
50+
51+
steps:
52+
- name: Checkout
53+
uses: actions/checkout@v4
54+
- name: Install PHP with extensions
55+
uses: shivammathur/setup-php@v2
56+
with:
57+
php-version: ${{ matrix.php-version }}
58+
coverage: pcov
59+
tools: composer:v2, flex
60+
- name: Add PHPUnit matcher
61+
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
62+
- name: Install variant
63+
if: matrix.variant != 'normal' && !startsWith(matrix.variant, 'symfony/symfony')
64+
run: composer require ${{ matrix.variant }} --no-update
65+
- name: Install Composer dependencies (${{ matrix.dependencies }})
66+
uses: ramsey/composer-install@v3
67+
with:
68+
dependency-versions: ${{ matrix.dependencies }}
69+
- name: Run Tests with coverage
70+
run: vendor/bin/phpunit -c phpunit.xml.dist --coverage-clover build/logs/clover.xml
71+
#- name: Send coverage to Codecov
72+
# uses: codecov/codecov-action@v4
73+
# with:
74+
# files: build/logs/clover.xml

0 commit comments

Comments
 (0)