mirror of
https://github.com/FriendsOfTYPO3/tea.git
synced 2024-12-25 08:26:11 +01:00
parent
248c759206
commit
fc512e50e9
6 changed files with 29 additions and 319 deletions
|
@ -1,283 +0,0 @@
|
|||
name: tea
|
||||
type: php
|
||||
docroot: ""
|
||||
php_version: "8.3"
|
||||
webserver_type: nginx-fpm
|
||||
router_http_port: "8081"
|
||||
router_https_port: "4434"
|
||||
xdebug_enabled: false
|
||||
additional_hostnames: []
|
||||
additional_fqdns: []
|
||||
database:
|
||||
type: mariadb
|
||||
version: "10.5"
|
||||
hooks:
|
||||
post-start:
|
||||
- exec: composer install --no-progress
|
||||
omit_containers: [dba, ddev-ssh-agent]
|
||||
webimage_extra_packages: [parallel]
|
||||
use_dns_when_possible: true
|
||||
composer_version: "2"
|
||||
web_environment:
|
||||
- typo3DatabaseName=typo3
|
||||
- typo3DatabaseHost=db
|
||||
- typo3DatabaseUsername=root
|
||||
- typo3DatabasePassword=root
|
||||
nodejs_version: "16"
|
||||
|
||||
# Key features of DDEV's config.yaml:
|
||||
|
||||
# name: <projectname> # Name of the project, automatically provides
|
||||
# http://projectname.ddev.site and https://projectname.ddev.site
|
||||
|
||||
# type: <projecttype> # drupal6/7/8, backdrop, typo3, wordpress, php
|
||||
|
||||
# docroot: <relative_path> # Relative path to the directory containing index.php.
|
||||
|
||||
# php_version: "8.1" # PHP version to use, "5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0", "8.1", "8.2", "8.3"
|
||||
|
||||
# You can explicitly specify the webimage but this
|
||||
# is not recommended, as the images are often closely tied to DDEV's' behavior,
|
||||
# so this can break upgrades.
|
||||
|
||||
# webimage: <docker_image> # nginx/php docker image.
|
||||
|
||||
# database:
|
||||
# type: <dbtype> # mysql, mariadb, postgres
|
||||
# version: <version> # database version, like "10.4" or "8.0"
|
||||
# MariaDB versions can be 5.5-10.8 and 10.11, MySQL versions can be 5.5-8.0
|
||||
# PostgreSQL versions can be 9-16.
|
||||
|
||||
# router_http_port: <port> # Port to be used for http (defaults to global configuration, usually 80)
|
||||
# router_https_port: <port> # Port for https (defaults to global configuration, usually 443)
|
||||
|
||||
# xdebug_enabled: false # Set to true to enable Xdebug and "ddev start" or "ddev restart"
|
||||
# Note that for most people the commands
|
||||
# "ddev xdebug" to enable Xdebug and "ddev xdebug off" to disable it work better,
|
||||
# as leaving Xdebug enabled all the time is a big performance hit.
|
||||
|
||||
# xhprof_enabled: false # Set to true to enable Xhprof and "ddev start" or "ddev restart"
|
||||
# Note that for most people the commands
|
||||
# "ddev xhprof" to enable Xhprof and "ddev xhprof off" to disable it work better,
|
||||
# as leaving Xhprof enabled all the time is a big performance hit.
|
||||
|
||||
# webserver_type: nginx-fpm, apache-fpm, or nginx-gunicorn
|
||||
|
||||
# timezone: Europe/Berlin
|
||||
# This is the timezone used in the containers and by PHP;
|
||||
# it can be set to any valid timezone,
|
||||
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
# For example Europe/Dublin or MST7MDT
|
||||
|
||||
# composer_root: <relative_path>
|
||||
# Relative path to the Composer root directory from the project root. This is
|
||||
# the directory which contains the composer.json and where all Composer related
|
||||
# commands are executed.
|
||||
|
||||
# composer_version: "2"
|
||||
# You can set it to "" or "2" (default) for Composer v2 or "1" for Composer v1
|
||||
# to use the latest major version available at the time your container is built.
|
||||
# It is also possible to use each other Composer version channel. This includes:
|
||||
# - 2.2 (latest Composer LTS version)
|
||||
# - stable
|
||||
# - preview
|
||||
# - snapshot
|
||||
# Alternatively, an explicit Composer version may be specified, for example "2.2.18".
|
||||
# To reinstall Composer after the image was built, run "ddev debug refresh".
|
||||
|
||||
# nodejs_version: "18"
|
||||
# change from the default system Node.js version to another supported version, like 16, 18, 20.
|
||||
# Note that you can use 'ddev nvm' or nvm inside the web container to provide nearly any
|
||||
# Node.js version, including v6, etc.
|
||||
# You only need to configure this if you are not using nvm and you want to use a major
|
||||
# version that is not the default.
|
||||
|
||||
# additional_hostnames:
|
||||
# - somename
|
||||
# - someothername
|
||||
# would provide http and https URLs for "somename.ddev.site"
|
||||
# and "someothername.ddev.site".
|
||||
|
||||
# additional_fqdns:
|
||||
# - example.com
|
||||
# - sub1.example.com
|
||||
# would provide http and https URLs for "example.com" and "sub1.example.com"
|
||||
# Please take care with this because it can cause great confusion.
|
||||
|
||||
# upload_dirs: "custom/upload/dir"
|
||||
#
|
||||
# upload_dirs:
|
||||
# - custom/upload/dir
|
||||
# - ../private
|
||||
#
|
||||
# would set the destination paths for ddev import-files to <docroot>/custom/upload/dir
|
||||
# When Mutagen is enabled this path is bind-mounted so that all the files
|
||||
# in the upload_dirs don't have to be synced into Mutagen.
|
||||
|
||||
# disable_upload_dirs_warning: false
|
||||
# If true, turns off the normal warning that says
|
||||
# "You have Mutagen enabled and your 'php' project type doesn't have upload_dirs set"
|
||||
|
||||
# ddev_version_constraint: ""
|
||||
# Example:
|
||||
# ddev_version_constraint: ">= 1.22.4"
|
||||
# This will enforce that the running ddev version is within this constraint.
|
||||
# See https://github.com/Masterminds/semver#checking-version-constraints for
|
||||
# supported constraint formats
|
||||
|
||||
# working_dir:
|
||||
# web: /var/www/html
|
||||
# db: /home
|
||||
# would set the default working directory for the web and db services.
|
||||
# These values specify the destination directory for ddev ssh and the
|
||||
# directory in which commands passed into ddev exec are run.
|
||||
|
||||
# omit_containers: [db, ddev-ssh-agent]
|
||||
# Currently only these containers are supported. Some containers can also be
|
||||
# omitted globally in the ~/.ddev/global_config.yaml. Note that if you omit
|
||||
# the "db" container, several standard features of DDEV that access the
|
||||
# database container will be unusable. In the global configuration it is also
|
||||
# possible to omit ddev-router, but not here.
|
||||
|
||||
# performance_mode: "global"
|
||||
# DDEV offers performance optimization strategies to improve the filesystem
|
||||
# performance depending on your host system. Should be configured globally.
|
||||
#
|
||||
# If set, will override the global config. Possible values are:
|
||||
# - "global": uses the value from the global config.
|
||||
# - "none": disables performance optimization for this project.
|
||||
# - "mutagen": enables Mutagen for this project.
|
||||
# - "nfs": enables NFS for this project.
|
||||
#
|
||||
# See https://ddev.readthedocs.io/en/latest/users/install/performance/#nfs
|
||||
# See https://ddev.readthedocs.io/en/latest/users/install/performance/#mutagen
|
||||
|
||||
# fail_on_hook_fail: False
|
||||
# Decide whether 'ddev start' should be interrupted by a failing hook
|
||||
|
||||
# host_https_port: "59002"
|
||||
# The host port binding for https can be explicitly specified. It is
|
||||
# dynamic unless otherwise specified.
|
||||
# This is not used by most people, most people use the *router* instead
|
||||
# of the localhost port.
|
||||
|
||||
# host_webserver_port: "59001"
|
||||
# The host port binding for the ddev-webserver can be explicitly specified. It is
|
||||
# dynamic unless otherwise specified.
|
||||
# This is not used by most people, most people use the *router* instead
|
||||
# of the localhost port.
|
||||
|
||||
# host_db_port: "59002"
|
||||
# The host port binding for the ddev-dbserver can be explicitly specified. It is dynamic
|
||||
# unless explicitly specified.
|
||||
|
||||
# mailpit_http_port: "8025"
|
||||
# mailpit_https_port: "8026"
|
||||
# The Mailpit ports can be changed from the default 8025 and 8026
|
||||
|
||||
# host_mailpit_port: "8025"
|
||||
# The mailpit port is not normally bound on the host at all, instead being routed
|
||||
# through ddev-router, but it can be bound directly to localhost if specified here.
|
||||
|
||||
# webimage_extra_packages: [php7.4-tidy, php-bcmath]
|
||||
# Extra Debian packages that are needed in the webimage can be added here
|
||||
|
||||
# dbimage_extra_packages: [telnet,netcat]
|
||||
# Extra Debian packages that are needed in the dbimage can be added here
|
||||
|
||||
# use_dns_when_possible: true
|
||||
# If the host has internet access and the domain configured can
|
||||
# successfully be looked up, DNS will be used for hostname resolution
|
||||
# instead of editing /etc/hosts
|
||||
# Defaults to true
|
||||
|
||||
# project_tld: ddev.site
|
||||
# The top-level domain used for project URLs
|
||||
# The default "ddev.site" allows DNS lookup via a wildcard
|
||||
# If you prefer you can change this to "ddev.local" to preserve
|
||||
# pre-v1.9 behavior.
|
||||
|
||||
# ngrok_args: --basic-auth username:pass1234
|
||||
# Provide extra flags to the "ngrok http" command, see
|
||||
# https://ngrok.com/docs/ngrok-agent/config or run "ngrok http -h"
|
||||
|
||||
# disable_settings_management: false
|
||||
# If true, DDEV will not create CMS-specific settings files like
|
||||
# Drupal's settings.php/settings.ddev.php or TYPO3's AdditionalConfiguration.php
|
||||
# In this case the user must provide all such settings.
|
||||
|
||||
# You can inject environment variables into the web container with:
|
||||
# web_environment:
|
||||
# - SOMEENV=somevalue
|
||||
# - SOMEOTHERENV=someothervalue
|
||||
|
||||
# no_project_mount: false
|
||||
# (Experimental) If true, DDEV will not mount the project into the web container;
|
||||
# the user is responsible for mounting it manually or via a script.
|
||||
# This is to enable experimentation with alternate file mounting strategies.
|
||||
# For advanced users only!
|
||||
|
||||
# bind_all_interfaces: false
|
||||
# If true, host ports will be bound on all network interfaces,
|
||||
# not the localhost interface only. This means that ports
|
||||
# will be available on the local network if the host firewall
|
||||
# allows it.
|
||||
|
||||
# default_container_timeout: 120
|
||||
# The default time that DDEV waits for all containers to become ready can be increased from
|
||||
# the default 120. This helps in importing huge databases, for example.
|
||||
|
||||
#web_extra_exposed_ports:
|
||||
#- name: nodejs
|
||||
# container_port: 3000
|
||||
# http_port: 2999
|
||||
# https_port: 3000
|
||||
#- name: something
|
||||
# container_port: 4000
|
||||
# https_port: 4000
|
||||
# http_port: 3999
|
||||
# Allows a set of extra ports to be exposed via ddev-router
|
||||
# Fill in all three fields even if you don’t intend to use the https_port!
|
||||
# If you don’t add https_port, then it defaults to 0 and ddev-router will fail to start.
|
||||
#
|
||||
# The port behavior on the ddev-webserver must be arranged separately, for example
|
||||
# using web_extra_daemons.
|
||||
# For example, with a web app on port 3000 inside the container, this config would
|
||||
# expose that web app on https://<project>.ddev.site:9999 and http://<project>.ddev.site:9998
|
||||
# web_extra_exposed_ports:
|
||||
# - name: myapp
|
||||
# container_port: 3000
|
||||
# http_port: 9998
|
||||
# https_port: 9999
|
||||
|
||||
#web_extra_daemons:
|
||||
#- name: "http-1"
|
||||
# command: "/var/www/html/node_modules/.bin/http-server -p 3000"
|
||||
# directory: /var/www/html
|
||||
#- name: "http-2"
|
||||
# command: "/var/www/html/node_modules/.bin/http-server /var/www/html/sub -p 3000"
|
||||
# directory: /var/www/html
|
||||
|
||||
# override_config: false
|
||||
# By default, config.*.yaml files are *merged* into the configuration
|
||||
# But this means that some things can't be overridden
|
||||
# For example, if you have 'use_dns_when_possible: true'' you can't override it with a merge
|
||||
# and you can't erase existing hooks or all environment variables.
|
||||
# However, with "override_config: true" in a particular config.*.yaml file,
|
||||
# 'use_dns_when_possible: false' can override the existing values, and
|
||||
# hooks:
|
||||
# post-start: []
|
||||
# or
|
||||
# web_environment: []
|
||||
# or
|
||||
# additional_hostnames: []
|
||||
# can have their intended affect. 'override_config' affects only behavior of the
|
||||
# config.*.yaml file it exists in.
|
||||
|
||||
# Many DDEV commands can be extended to run tasks before or after the
|
||||
# DDEV command is executed, for example "post-start", "post-import-db",
|
||||
# "pre-composer", "post-composer"
|
||||
# See https://ddev.readthedocs.io/en/stable/users/extend/custom-commands/ for more
|
||||
# information on the commands that can be extended and the tasks you can define
|
||||
# for them. Example:
|
||||
#hooks:
|
|
@ -1,2 +0,0 @@
|
|||
[PHP]
|
||||
xdebug.mode=coverage,debug
|
1
.gitattributes
vendored
1
.gitattributes
vendored
|
@ -1,5 +1,4 @@
|
|||
/.Build/ export-ignore
|
||||
/.ddev/ export-ignore
|
||||
/.editorconfig export-ignore
|
||||
/.eslintignore export-ignore
|
||||
/.eslintrc.json export-ignore
|
||||
|
|
|
@ -14,6 +14,7 @@ This project adheres to [Semantic Versioning](https://semver.org/).
|
|||
### Deprecated
|
||||
|
||||
### Removed
|
||||
- Drop DDEV configuration in favor of `runTests.sh` (#1063)
|
||||
- Stop using the predefined GitHub Actions (#1211)
|
||||
|
||||
### Fixed
|
||||
|
|
|
@ -6,6 +6,5 @@
|
|||
Development environment
|
||||
=======================
|
||||
|
||||
You can either run the code quality checks and automated tests locally (using a
|
||||
local PHP, Composer, and database), or you can use
|
||||
`ddev <https://github.com/drud/ddev>`__ for a Docker-based setup.
|
||||
You can run the code quality checks and automated tests locally (using a
|
||||
local PHP, Composer, and database) or using runTests.sh.
|
||||
|
|
|
@ -21,120 +21,116 @@ Composer scripts
|
|||
|
||||
For most development-related tasks, this extension provides Composer scripts.
|
||||
If you are working locally, you can run them using :bash:`composer <scriptname>`.
|
||||
If you are working with ddev, you can run them with :bash:`ddev composer <scriptname>`.
|
||||
You do not need to start or build the containers for this as this happens
|
||||
automatically.
|
||||
|
||||
The code-quality-related Composer scripts make use of the PHIVE-installed tools.
|
||||
This means that for non-ddev-based development, you need to run :bash:`phive install`
|
||||
before you can use the Composer scripts.
|
||||
|
||||
You can run :bash:`composer` (or :bash:`ddev composer`) to display a list of all available
|
||||
Composer commands and scripts. For all custom Composer scripts there are descriptions
|
||||
in the `script-description` section of the `composer.json`.
|
||||
You can run :bash:`composer` or :bash:`./Build/Scripts/runTests.sh composer` to
|
||||
display a list of all available Composer commands and scripts. For all custom
|
||||
Composer scripts there are descriptions in the `script-description` section of
|
||||
the `composer.json`.
|
||||
|
||||
.. _running-code-checks:
|
||||
|
||||
Running code checks
|
||||
===================
|
||||
|
||||
You can currently run these code checks on the command line (if working locally without ddev, omit the :bash:`ddev` part):
|
||||
You can currently run these code checks on the command line:
|
||||
|
||||
.. index:: Commands; composer ci:composer:normalize
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:composer:normalize
|
||||
composer ci:composer:normalize
|
||||
|
||||
Checks the composer.json.
|
||||
|
||||
.. index:: Commands; composer ci:json:lint
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:json:lint
|
||||
composer ci:json:lint
|
||||
|
||||
Lints the JSON files.
|
||||
|
||||
.. index:: Commands; composer ci:php
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:php
|
||||
composer ci:php
|
||||
|
||||
Runs all static checks for the PHP files.
|
||||
|
||||
.. index:: Commands; composer ci:php:cs-fixer
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:php:cs-fixer
|
||||
composer ci:php:cs-fixer
|
||||
|
||||
Checks the code style with the PHP Coding Standards Fixer (PHP-CS-Fixer).
|
||||
|
||||
.. index:: Commands; composer ci:php:lint
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:php:lint
|
||||
composer ci:php:lint
|
||||
|
||||
Lints the PHP files for syntax errors.
|
||||
|
||||
.. index:: Commands; composer ci:php:sniff
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:php:sniff
|
||||
composer ci:php:sniff
|
||||
|
||||
Checks the code style with PHP_CodeSniffer (PHPCS).
|
||||
|
||||
.. index:: Commands; composer ci:php:stan
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:php:stan
|
||||
composer ci:php:stan
|
||||
|
||||
Checks the PHP types using PHPStan.
|
||||
|
||||
.. index:: Commands; composer ci:static
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:static
|
||||
composer ci:static
|
||||
|
||||
Runs all static code checks (syntax, style, types).
|
||||
|
||||
.. index:: Commands; composer ci:ts:lint
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:ts:lint
|
||||
composer ci:ts:lint
|
||||
|
||||
Lints the TypoScript files.
|
||||
|
||||
.. index:: Commands; composer ci:yaml:lint
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:yaml:lint
|
||||
composer ci:yaml:lint
|
||||
|
||||
Lints the YAML files.
|
||||
|
||||
.. index:: Commands; composer fix:php
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer fix:php
|
||||
composer fix:php
|
||||
|
||||
Runs all fixers for the PHP code.
|
||||
|
||||
.. index:: Commands; composer fix:php:cs
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer fix:php:cs
|
||||
composer fix:php:cs
|
||||
|
||||
Fixes the code style with PHP-CS-Fixer.
|
||||
|
||||
.. index:: Commands; composer fix:php:sniff
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer fix:php:sniff
|
||||
composer fix:php:sniff
|
||||
|
||||
Fixes the code style with PHP_CodeSniffer.
|
||||
|
||||
.. index:: Commands; composer phpstan:baseline
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer phpstan:baseline
|
||||
composer phpstan:baseline
|
||||
|
||||
Updates the PHPStan baseline file to match the code.
|
||||
|
||||
|
@ -143,47 +139,47 @@ Updates the PHPStan baseline file to match the code.
|
|||
Running unit and functional tests
|
||||
=================================
|
||||
|
||||
You can currently run these tests and coverages on the command line (if working locally without ddev, omit the :bash:`ddev` part):
|
||||
You can currently run these tests and coverages on the command line:
|
||||
|
||||
.. index:: Commands; composer ci:coverage
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:coverage
|
||||
composer ci:coverage
|
||||
|
||||
Runs the ci:coverage script as defined in composer.json.
|
||||
|
||||
.. index:: Commands; composer ci:coverage:functional
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:coverage:functional
|
||||
composer ci:coverage:functional
|
||||
|
||||
Generates the code coverage report for functional tests.
|
||||
|
||||
.. index:: Commands; composer ci:coverage:merge
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:coverage:merge
|
||||
composer ci:coverage:merge
|
||||
|
||||
Merges the code coverage reports for unit and functional tests.
|
||||
|
||||
.. index:: Commands; composer ci:coverage:unit
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:coverage:unit
|
||||
composer ci:coverage:unit
|
||||
|
||||
Generates the code coverage report for unit tests.
|
||||
|
||||
.. index:: Commands; composer ci:tests:functional
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:tests:functional
|
||||
composer ci:tests:functional
|
||||
|
||||
Runs the functional tests.
|
||||
|
||||
.. index:: Commands; composer ci:tests:unit
|
||||
.. code-block:: bash
|
||||
|
||||
ddev composer ci:tests:unit
|
||||
composer ci:tests:unit
|
||||
|
||||
Runs the unit tests.
|
||||
|
||||
|
|
Loading…
Reference in a new issue