mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-16 01:16:12 +01:00
Commit graph

103 commits

Author SHA1 Message Date
Stefan Bürk
d0282d488a [TASK] Migrate GitHub Actions to use Build/Scripts/runTests.sh
This change migrates the GitHub Action workflows to use the
`runTests.sh` wrapper. Thus making it easy reproduciable locally
and have the exact same environment and workflow which ease
debugging on pipeline failures.

Functional database matrix may be increased in a dedicated follow-up
change and is avoided for now.

Note: composer normalize check is temporarly disabled, due how runTests.sh
      are handling composer.json changes. composer.json is reverted, thus
      composer.lock not matching composer.json. Good solution for this has
      to be searched.
2022-10-16 05:08:57 +02:00
Stefan Bürk
1e8b85e858 [TASK] Avoid race condition on case-insensitive filesystems
Case-insensitive filesystems cannot distinguish properly for
file and folder names with different caseings. This leads to
unforseable issues on these systems, like default partition
on MacOS devices from apple or eventually Windows systems.

This change configure phpcoverall and the chain explicitly to
use folders for the files which differs from the default of
`build/*` to avoid conflicts on case-insensitve filesystems
and prepare for introduction of the upcoming implementation
of TYPO3 core recommended `Build/` structure.
2022-10-16 01:55:38 +02:00
Oliver Klee
31e1a1f84d
[TASK] Switch the code quality checks to PHP 8.1 (#638) 2022-10-15 21:40:46 +02:00
Oliver Klee
04ae055db2
[TASK] Have the lowest dependencies above the highest on CI (#623)
This way, the Composer dependencies are consistently in
ascending order in the CI matrix (as are the PHP and TYPO3 versions).

This is the same as #617 (which rearranged the CI matrix entries
for the Composer-script-based CI jobs), but for the CI jobs using
the predefined GitHub Actions (this time for the unit tests).

Part of #578
2022-10-09 20:08:15 +02:00
Oliver Klee
9a1bc90e92
[TASK] Have the lowest dependencies above the highest on CI (#619)
This way, the Composer dependencies are consistently in
ascending order in the CI matrix (as are the PHP and TYPO3 versions).

This is the same as #617 (which rearranged the CI matrix entries
for the Composer-script-based CI jobs), but for the CI jobs using
the predefined GitHub Actions.

Part of #578
2022-10-09 17:43:08 +02:00
Oliver Klee
26f8898e92
[TASK] Have the lowest dependencies above the highest on CI (#617)
This way, the Composer dependencies are consistently in ascending
order in the CI matrix (as are the PHP and TYPO3 versions).

Fixes #578
2022-10-09 06:15:42 +02:00
Lina Wolf
672194fba8
[TASK] Drop TYPO3 10LTS support (#594)
Fixes #589

Co-authored-by: lina.wolf <lwolf@w-commerce.de>
2022-09-27 16:48:54 +02:00
Oliver Klee
14c804b209
[TASK] Drop support for PHP 7.2 and 7.3 (#581)
Also sync the test matrices of the `predefined` CI jobs with those
from the Composer-script-driven CI jobs.

This change does not add any 7.4-only PHP language features.

Fixes #577
2022-09-22 11:49:45 +02:00
Oliver Klee
e135cc244a
[TASK] Upgrade the functional tests on CI to Ubuntu 22.04 (#573)
Fixes #173
2022-09-21 16:54:21 +02:00
Oliver Klee
1129d74c53
[FEATURE] Show the Composer configuration in the CI jobs (#572)
This helps debug problems, e.g., using an incorrect Composer
cache directory.
2022-09-21 09:48:16 +02:00
Oliver Klee
b5ea8e651c
[TASK] Stop using the typo3/minimal package on CI (#520)
The `typo3/minimal` package is not maintained very much, and currently
cannot be used as a requirement to install the latest TYPO3 development
version (as it still depends on `dev-master`, not on `dev-main`).

In addition, not depending on it will allow us to find any missing
dependencies in our requirements that so far have been masked by
the `typo3/minimal` dependencies.
2022-08-28 11:08:47 +02:00
Oliver Klee
75ae59b28a
[TASK] Update to Composer 2.4 (#513)
Now that Composer 2.4 has had its first point release, we can safely
upgrade from 2.3 to 2.4 in the DDEV configuration and the CI pipeline.
2022-08-27 18:53:54 +02:00
Oliver Klee
af0d77a7aa
[BUGFIX] Treat PHP versions in the GitHub CI configuration as strings (#459)
PHP version numbers need to be strings: If the version `8.0` were
treated as a number, the YAML parser would happily convert it to `8`,
hence dropping the minor version number.
2022-06-15 18:22:18 +02:00
Oliver Klee
53e9d65a0a
[TASK] Upgrade the GitHub runners to Ubuntu 22.04 (#456)
Fixes #455
2022-06-15 16:26:43 +02:00
jpmschuler
518bae014e
[TASK] Move npm tools and config to default places (#445)
- Move npm tools and config to default places
- Remove now unnecessary config file parameter from npm scripts
- editorconfig and eslint config contradict, adapt editorconfig
- switch JS indent linting to TYPO3 coding standard of 2 spaces
- adapt composer scripts for new npm location
2022-05-18 17:17:45 +02:00
Oliver Klee
029d402954
[TASK] Switch the code coverage collection on CI from 10LTS to 11LTS (#437) 2022-04-29 14:27:22 +02:00
Oliver Klee
2e31910c61
[FEATURE] Use Coveralls for the code coverage (#425)
Fixes #345
Closes #400
2022-04-15 18:47:18 +02:00
Oliver Klee
0a634def2d
[TASK] Sync the GitHub Actions job definitions (#424)
Having a consistent structure and order between the CI jobs and the
code coverage generation job makes understanding the GitHub Actions
configuration easier.

It also allows having a shared Composer cache between the non-coverage
jobs and the coverage job.
2022-04-15 14:35:33 +02:00
Oliver Klee
65c59cee1c
[TASK] Run unit tests before functional tests for coverage (#431)
We generally should run the faster tests first so that any possible
breakage occurs as soon as possible, hence providing faster feedback.
2022-04-14 18:13:33 +02:00
Oliver Klee
a85d14b976
[TASK] Upgrade to Composer 2.3.0 (#416) 2022-04-13 16:15:13 +02:00
Oliver Klee
a98d32fdae
[TASK] Move the coverage directories (#427)
There is no need to have the code coverage data directly generated by
the tests run in a non-hidden directory. So now the code coverage is
recorded within `.Build/coverage`.

Only the merged coverage data still needs to be located in `build/logs`
as Coveralls (which we're planning to use) relies on this.
2022-04-13 16:14:25 +02:00
Oliver Klee
827337bdda
[CLEANUP] Always use name as first key for GitHub Action steps (#423) 2022-04-12 22:27:14 +02:00
Oliver Klee
7a813998b6 Revert "[TASK] Bump the code coverage generation to TYPO3 11LTS and PHP 8.1 (#417)"
This reverts commit fd2e9213ab.
2022-04-06 19:45:56 +02:00
Oliver Klee
fd2e9213ab
[TASK] Bump the code coverage generation to TYPO3 11LTS and PHP 8.1 (#417)
We should use the latest TYPO3 and PHP versions for code coverage
generation.
2022-04-06 19:39:58 +02:00
Oliver Klee
77b49997a4
[TASK] Upgrade the CI cache action (#412) 2022-04-03 02:26:04 +02:00
Oliver Klee
14c6f6a48d
[CLEANUP] Sort the code style checks in the CI build (#406) 2022-03-24 18:00:39 +01:00
Oliver Klee
b9cfab39cc
[TASK] Upgrade the git checkout on CI to actions/checkout@v3 (#402) 2022-03-22 17:57:39 +01:00
Oliver Klee
15b1e5a9f4
[FEATURE] Also run the tests with TYPO3 11LTS in GitHub Actions (#319) 2022-03-02 11:45:29 +01:00
Oliver Klee
6b98478f58
[TASK] Make the Composer caches on CI more fine-grained (#393)
The installed Composer packages will be different depending on the
major TYPO3 version being tested and on the strategy for the
dependencies (highest, lowest). So it makes sense to have
separate Composer caches for these versions in order to avoid
cache misses.
2022-02-24 16:41:34 +01:00
Oliver Klee
4158161c9d
[BUGFIX] Remove duplicate entry from the code quality CI job (#394)
`json:lint` was there twice.
Also sort the code quality jobs the same way the corresponding tasks
are sorted in the `composer.json`.
2022-02-24 13:13:30 +01:00
Oliver Klee
d39727d718
[BUGFIX] Fix the trigger syntax in the CI builds (#395)
The CI workflow with predefined GitHub actions had an empty `on:`
element, which is invalid. Use the correct event for manually
triggered workflow runs instead.
2022-02-24 13:12:38 +01:00
Oliver Klee
4854d9983a
[CLEANUP] Always have the CI job name as first element (#391)
This helps human readers see what a job is about more quickly,
following the principle of having the heading as the first element
of a text.
2022-02-24 09:11:49 +01:00
Oliver Klee
79ba5f20d2
[TASK] Use an explicit CI matrix for the functional tests as well (#392)
This will allow use to have exceptions from the cross product of
the parameters more easily (e.g., using PHP 8 only for TYPO3 11LTS
onward).
2022-02-24 09:11:14 +01:00
Łukasz Uznański
9e00038119
[FEATURE] Enable php8.1 (#381) 2022-02-23 14:38:20 +01:00
Łukasz Uznański
63bcf0da67
[TASK] Disable predefined github action scheduler run (#374)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.com>
2022-02-04 09:24:14 +01:00
Oliver Klee
34eaf0cab1
[TASK] Drop support for TYPO3 9LTS (#363)
Now that we have added support for TYPO3 11LTS, we have been supporting
3 different TYPO3 LTS versions in the same branch. This has turned out
to be too much of a hassle when running the test. So now is the time
to drop support for 9LTS.
2022-01-12 11:22:59 +01:00
Oliver Klee
de5c407c1a
[BUGFIX] Fix CI builds for PRs from forks (#360)
It has turned out that having builds only for pushes (but not
pull requests) is not enough for triggering builds for PRs
from forks.

So we will need to live with pushes to non-PR branches other
than main not triggering a build, and having to create a
dummy draft PR for testing the CI build.

This reverts commit d1f02afe79.

Fixes #359
2022-01-03 01:54:00 +01:00
Oliver Klee
07ff094028
[TASK] Use Composer 2.2 in the CI pipeline (#362)
With the releases of Composer 2.2.2 and 2.2.3 (and PHPUnit 9.5.11),
running the tests with Composer 2 in the pipeline should be safe afain.
2022-01-02 02:23:40 +01:00
Oliver Klee
d1f02afe79
[TASK] Always run the CI build after a push (#354)
This will allow us to test things on the CI pipeline without
having to create a dummy/draft PR for this.

Hopefully, this will also allow builds for forks.
2021-12-24 02:42:15 +01:00
Oliver Klee
feaf6f2fc9
[BUGFIX] Pin Composer to version 2.1.x (#352)
Composer versions 2.2.0 and 2.2.1 have a bug that breaks PHPUnit.
Until version 2.2.2 is released with a fix, we need to keep to
Composer 2.1 to keep the tests from breaking.

See https://github.com/composer/composer/issues/10387 for details.
2021-12-24 02:15:42 +01:00
Oliver Klee
9c1a522ebb
[FEATURE] Also run the unit tests with V11 in the CI pipeline (#336) 2021-11-06 15:57:36 +01:00
Oliver Klee
19f3820d0d
[BUGFIX] Only publish to the TER if the tag is a valid version number (#329)
Tags named like `test-tag` should not trigger a TER releasen, but only
valid version numbers in the format major.minor.bugfix.

Fixes #327
2021-11-03 01:07:00 +01:00
Oliver Klee
696ec68eb0
[TASK] Only install Composer packages once in a CI build (#330)
If the CI build will do a composer update in the next step anyway,
there is no need to actually install any packages when requiring
the desired TYPO3 version.

Fixes #324
2021-11-03 01:05:16 +01:00
Łukasz Uznański
9bf78a580b
[FEATURE] Calculate code coverage (#266) 2021-10-06 16:23:35 +02:00
Łukasz Uznański
a2342d5421
[TASK] Allow installation on TYPO3 V11 (#293)
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.com>
2021-09-22 17:14:29 +02:00
Oliver Klee
01c0d4b4d5
[TASK] Use the Composer scripts for the CI builds by default (#283)
Also stop running the other CI workflow on every push/PR
(as the results of both workflows provide the same results).

Fixes #275
2021-08-24 02:34:05 +02:00
Łukasz Uznański
8e3e3630a5
[TASK] Add separate workflow for composer scripts (#258)
Co-authored-by: David Bruchmann <david.bruchmann@gmail.com>
Co-authored-by: Łukasz Uznański <l.uznanski@macopedia.com>
2021-07-21 13:06:59 +02:00
Łukasz Uznański
dd2378416e
[TASK] Migrate the PHPStan check to GitHub actions (#239) 2021-05-05 13:05:44 +02:00
Łukasz Uznański
d87519aed8
[TASK] Migrate JSON linting to GitHub Actions (#238) 2021-04-07 16:35:44 +02:00
Łukasz Uznański
a2da368d7b
[TASK] Migrate the XLIFF linting to GitHub Actions (#237) 2021-04-07 14:27:28 +02:00