Skip to content

Commit 54a621e

Browse files
EXP-00: Update drupal core 9.4.5
1 parent fabd07c commit 54a621e

File tree

9 files changed

+1699
-1283
lines changed

9 files changed

+1699
-1283
lines changed

.ddev/config.yaml

Lines changed: 109 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,26 @@
1-
name: drupal-actions
1+
name: drupal-experiments
22
type: drupal9
33
docroot: web
44
php_version: "8.0"
5-
webserver_type: apache-fpm
5+
webserver_type: nginx-fpm
66
router_http_port: "80"
77
router_https_port: "443"
88
xdebug_enabled: false
99
additional_hostnames: []
1010
additional_fqdns: []
11-
mariadb_version: ""
12-
mysql_version: "8.0"
11+
database:
12+
type: mariadb
13+
version: "10.4"
14+
nfs_mount_enabled: false
15+
mutagen_enabled: false
16+
use_dns_when_possible: true
17+
composer_version: "2"
18+
web_environment: []
19+
nodejs_version: "16"
1320
hooks:
1421
post-start:
1522
- exec: cp .env.example .env
1623
- exec: composer install --no-interaction
17-
webimage_extra_packages: ['ruby']
18-
use_dns_when_possible: true
19-
timezone: Europe/Athens
20-
composer_version: "2"
21-
disable_settings_management: true
22-
23-
# This config.yaml was created with ddev version v1.17.7
24-
# webimage: drud/ddev-webserver:v1.17.7
25-
# dbimage: drud/ddev-dbserver-mariadb-10.3:v1.17.7
26-
# dbaimage: phpmyadmin:5
27-
# However we do not recommend explicitly wiring these images into the
28-
# config.yaml as they may break future versions of ddev.
29-
# You can update this config.yaml using 'ddev config'.
3024

3125
# Key features of ddev's config.yaml:
3226

@@ -37,21 +31,19 @@ disable_settings_management: true
3731

3832
# docroot: <relative_path> # Relative path to the directory containing index.php.
3933

40-
# php_version: "7.4" # PHP version to use, "5.6", "7.0", "7.1", "7.2", "7.3", "7.4" "8.0"
34+
# php_version: "7.4" # PHP version to use, "5.6", "7.0", "7.1", "7.2", "7.3", "7.4", "8.0", "8.1"
4135

42-
# You can explicitly specify the webimage, dbimage, dbaimage lines but this
36+
# You can explicitly specify the webimage but this
4337
# is not recommended, as the images are often closely tied to ddev's' behavior,
4438
# so this can break upgrades.
4539

4640
# webimage: <docker_image> # nginx/php docker image.
47-
# dbimage: <docker_image> # mariadb docker image.
48-
# dbaimage: <docker_image>
4941

50-
# mariadb_version and mysql_version
51-
# ddev can use many versions of mariadb and mysql
52-
# However these directives are mutually exclusive
53-
# mariadb_version: 10.2
54-
# mysql_version: 8.0
42+
# database:
43+
# type: <dbtype> # mysql, mariadb
44+
# version: <version> # database version, like "10.3" or "8.0"
45+
# Note that mariadb_version or mysql_version from v1.18 and earlier
46+
# will automatically be converted to this notation with just a "ddev config --auto"
5547

5648
# router_http_port: <port> # Port to be used for http (defaults to port 80)
5749
# router_https_port: <port> # Port for https (defaults to 443)
@@ -74,12 +66,25 @@ disable_settings_management: true
7466
# see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
7567
# For example Europe/Dublin or MST7MDT
7668

77-
# composer_version: ""
78-
# if composer_version:"" it will use the current ddev default composer release.
79-
# It can also be set to "1", to get most recent composer v1
80-
# or "2" for most recent composer v2.
81-
# It can be set to any existing specific composer version.
82-
# After first project 'ddev start' this will not be updated until it changes
69+
# composer_root: <relative_path>
70+
# Relative path to the composer root directory from the project root. This is
71+
# the directory which contains the composer.json and where all Composer related
72+
# commands are executed.
73+
74+
# composer_version: "2"
75+
# You can set it to "" or "2" (default) for Composer v2 or "1" for Composer v1
76+
# to use the latest major version available at the time your container is built.
77+
# It is also possible to select a minor version for example "2.2" which will
78+
# install the latest release of that branch. Alternatively, an explicit Composer
79+
# version may be specified, for example "1.0.22". Finally, it is also possible
80+
# to use one of the key words "stable", "preview" or "snapshot" see Composer
81+
# documentation.
82+
# To reinstall Composer after the image was built, run "ddev debug refresh".
83+
84+
# nodejs_version: "16"
85+
# change from the default system Node.js version to another supported version, like 12, 14, 17, 18.
86+
# Note that you can use 'ddev nvm' or nvm inside the web container to provide nearly any
87+
# Node.js version, including v6, etc.
8388

8489
# additional_hostnames:
8590
# - somename
@@ -94,7 +99,9 @@ disable_settings_management: true
9499
# Please take care with this because it can cause great confusion.
95100

96101
# upload_dir: custom/upload/dir
97-
# would set the destination path for ddev import-files to custom/upload/dir.
102+
# would set the destination path for ddev import-files to <docroot>/custom/upload/dir
103+
# When mutagen is enabled this path is bind-mounted so that all the files
104+
# in the upload_dir don't have to be synced into mutagen
98105

99106
# working_dir:
100107
# web: /var/www/html
@@ -107,12 +114,17 @@ disable_settings_management: true
107114
# Currently only these containers are supported. Some containers can also be
108115
# omitted globally in the ~/.ddev/global_config.yaml. Note that if you omit
109116
# the "db" container, several standard features of ddev that access the
110-
# database container will be unusable.
117+
# database container will be unusable. In the global configuration it is also
118+
# possible to omit ddev-router, but not here.
111119

112120
# nfs_mount_enabled: false
113121
# Great performance improvement but requires host configuration first.
114122
# See https://ddev.readthedocs.io/en/stable/users/performance/#using-nfs-to-mount-the-project-into-the-container
115123

124+
# mutagen_enabled: false
125+
# Performance improvement using mutagen asynchronous updates.
126+
# See https://ddev.readthedocs.io/en/latest/users/performance/#using-mutagen
127+
116128
# fail_on_hook_fail: False
117129
# Decide whether 'ddev start' should be interrupted by a failing hook
118130

@@ -136,10 +148,18 @@ disable_settings_management: true
136148
# phpmyadmin_https_port: "8037"
137149
# The PHPMyAdmin ports can be changed from the default 8036 and 8037
138150

151+
# host_phpmyadmin_port: "8036"
152+
# The phpmyadmin (dba) port is not normally bound on the host at all, instead being routed
153+
# through ddev-router, but it can be specified and bound.
154+
139155
# mailhog_port: "8025"
140156
# mailhog_https_port: "8026"
141157
# The MailHog ports can be changed from the default 8025 and 8026
142158

159+
# host_mailhog_port: "8025"
160+
# The mailhog port is not normally bound on the host at all, instead being routed
161+
# through ddev-router, but it can be bound directly to localhost if specified here.
162+
143163
# webimage_extra_packages: [php7.4-tidy, php-bcmath]
144164
# Extra Debian packages that are needed in the webimage can be added here
145165

@@ -158,7 +178,7 @@ disable_settings_management: true
158178
# If you prefer you can change this to "ddev.local" to preserve
159179
# pre-v1.9 behavior.
160180

161-
# ngrok_args: --subdomain mysite --auth username:pass
181+
# ngrok_args: --basic-auth username:pass1234
162182
# Provide extra flags to the "ngrok http" command, see
163183
# https://ngrok.com/docs#http or run "ngrok http -h"
164184

@@ -178,10 +198,63 @@ disable_settings_management: true
178198
# This is to enable experimentation with alternate file mounting strategies.
179199
# For advanced users only!
180200

201+
# bind_all_interfaces: false
202+
# If true, host ports will be bound on all network interfaces,
203+
# not just the localhost interface. This means that ports
204+
# will be available on the local network if the host firewall
205+
# allows it.
206+
207+
# default_container_timeout: 120
208+
# The default time that ddev waits for all containers to become ready can be increased from
209+
# the default 120. This helps in importing huge databases, for example.
210+
211+
#web_extra_exposed_ports:
212+
#- name: nodejs
213+
# container_port: 3000
214+
# http_port: 2999
215+
# https_port: 3000
216+
#- name: something
217+
# container_port: 4000
218+
# https_port: 4000
219+
# http_port: 3999
220+
# Allows a set of extra ports to be exposed via ddev-router
221+
# The port behavior on the ddev-webserver must be arranged separately, for example
222+
# using web_extra_daemons.
223+
# For example, with a web app on port 3000 inside the container, this config would
224+
# expose that web app on https://<project>.ddev.site:9999 and http://<project>.ddev.site:9998
225+
# web_extra_exposed_ports:
226+
# - container_port: 3000
227+
# http_port: 9998
228+
# https_port: 9999
229+
230+
#web_extra_daemons:
231+
#- name: "http-1"
232+
# command: "/var/www/html/node_modules/.bin/http-server -p 3000"
233+
# directory: /var/www/html
234+
#- name: "http-2"
235+
# command: "/var/www/html/node_modules/.bin/http-server /var/www/html/sub -p 3000"
236+
# directory: /var/www/html
237+
238+
# override_config: false
239+
# By default, config.*.yaml files are *merged* into the configuration
240+
# But this means that some things can't be overridden
241+
# For example, if you have 'nfs_mount_enabled: true'' you can't override it with a merge
242+
# and you can't erase existing hooks or all environment variables.
243+
# However, with "override_config: true" in a particular config.*.yaml file,
244+
# 'nfs_mount_enabled: false' can override the existing values, and
245+
# hooks:
246+
# post_start: []
247+
# or
248+
# web_environment: []
249+
# or
250+
# additional_hostnames: []
251+
# can have their intended affect. 'override_config' affects only behavior of the
252+
# config.*.yaml file it exists in.
253+
181254
# Many ddev commands can be extended to run tasks before or after the
182255
# ddev command is executed, for example "post-start", "post-import-db",
183256
# "pre-composer", "post-composer"
184-
# See https://ddev.readthedocs.io/en/stable/users/extending-commands/ for more
257+
# See https://ddev.readthedocs.io/en/stable/users/extend/custom-commands/ for more
185258
# information on the commands that can be extended and the tasks you can define
186259
# for them. Example:
187260
#hooks:

.ddev/providers/platform.yaml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
#ddev-generated
2+
# Example Platform.sh provider configuration.
3+
4+
# Consider using `ddev get platformsh/ddev-platformsh` (https://github.com/platformsh/ddev-platformsh) for more
5+
# complete platform integration.
6+
7+
# To use this configuration,
8+
9+
# 1. Check out the site from platform.sh and then configure it with `ddev config`. You'll want to use `ddev start` and make sure the basic functionality is working.
10+
# 2. Obtain and configure an API token.
11+
# a. Login to the Platform.sh Dashboard and go to Account->API Tokens to create an API token for ddev to use.
12+
# b. Add the API token to the `web_environment` section in your global ddev configuration at ~/.ddev/global_config.yaml:
13+
# ```yaml
14+
# web_environment:
15+
# - PLATFORMSH_CLI_TOKEN=abcdeyourtoken
16+
# ```
17+
# 3. Add PLATFORM_PROJECT and PLATFORM_ENVIRONMENT variables to your project `.ddev/config.yaml` or a `.ddev/config.platform.yaml`
18+
# ```yaml
19+
# web_environment:
20+
# - PLATFORM_PROJECT=nf4amudfn23biyourproject
21+
# - PLATFORM_ENVIRONMENT=main
22+
# 4. `ddev restart`
23+
# 5. Run `ddev pull platform`. After you agree to the prompt, the current upstream database and files will be downloaded.
24+
# 6. Optionally use `ddev push platform` to push local files and database to platform.sh. Note that `ddev push` is a command that can potentially damage your production site, so this is not recommended.
25+
26+
# If you need to change this `platform.yaml` recipe, you can change it to suit your needs, but remember to remove the "ddev-generated" line from the top.
27+
28+
# Debugging: Use `ddev exec platform` to see what platform.sh knows about
29+
# your configuration and whether it's working correctly.
30+
31+
auth_command:
32+
command: |
33+
set -eu -o pipefail
34+
if [ -z "${PLATFORMSH_CLI_TOKEN:-}" ]; then echo "Please make sure you have set PLATFORMSH_CLI_TOKEN in ~/.ddev/global_config.yaml" && exit 1; fi
35+
36+
db_pull_command:
37+
command: |
38+
#set -x # You can enable bash debugging output by uncommenting
39+
set -eu -o pipefail
40+
ls /var/www/html/.ddev >/dev/null # This just refreshes stale NFS if possible
41+
platform db:dump --yes --gzip --file=/var/www/html/.ddev/.downloads/db.sql.gz --project="${PLATFORM_PROJECT}" --environment="${PLATFORM_ENVIRONMENT}"
42+
43+
files_import_command:
44+
command: |
45+
#set -x # You can enable bash debugging output by uncommenting
46+
set -eu -o pipefail
47+
# Use $PLATFORM_MOUNTS if it exists to get list of mounts to download, otherwise just web/sites/default/files (drupal)
48+
declare -a mounts=(${PLATFORM_MOUNTS:-/web/sites/default/files})
49+
platform mount:download --all --yes --quiet --project="${PLATFORM_PROJECT}" --environment="${PLATFORM_ENVIRONMENT}" --target=/var/www/html
50+
51+
52+
# push is a dangerous command. If not absolutely needed it's better to delete these lines.
53+
db_push_command:
54+
command: |
55+
# set -x # You can enable bash debugging output by uncommenting
56+
set -eu -o pipefail
57+
ls /var/www/html/.ddev >/dev/null # This just refreshes stale NFS if possible
58+
pushd /var/www/html/.ddev/.downloads >/dev/null;
59+
gzip -dc db.sql.gz | platform db:sql --project="${PLATFORM_PROJECT}" --environment="${PLATFORM_ENVIRONMENT}"
60+
61+
# push is a dangerous command. If not absolutely needed it's better to delete these lines.
62+
# TODO: This is a naive, Drupal-centric push, which needs adjustment for the mount to be pushed.
63+
files_push_command:
64+
command: |
65+
# set -x # You can enable bash debugging output by uncommenting
66+
set -eu -o pipefail
67+
ls "${DDEV_FILES_DIR}" >/dev/null # This just refreshes stale NFS if possible
68+
platform mount:upload --yes --quiet --project="${PLATFORM_PROJECT}" --environment="${PLATFORM_ENVIRONMENT}" --source="${DDEV_FILES_DIR}" --mount=web/sites/default/files
69+

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414
/web/sites/*/files/
1515
/private-files/**
1616

17+
# Ignore config
18+
/config/sync
19+
1720
# Ignore SimpleTest multi-site environment.
1821
/web/sites/simpletest
1922

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090
"patches": {
9191
"drupal/core": {
9292
"BaseFieldOverride fails to take into account ContentEntityInterface::bundleFieldDefinitions()... https://dgo.to/2321071": "https://www.drupal.org/files/issues/2019-12-24/2321071-39.patch",
93-
"Allow an install hook in profiles installing from configuration, https://dgo.to/2982052": "https://www.drupal.org/files/issues/2021-09-27/2982052-73.patch"
93+
"Allow an install hook in profiles installing from configuration, https://dgo.to/2982052": "https://www.drupal.org/files/issues/2022-05-19/2982052-80.patch"
9494
},
9595
"drupal/devel": {
9696
"Compatability with Core 9.3, https://gitlab.com/drupalspoons/devel/-/issues/388": "https://gitlab.com/drupalspoons/devel/uploads/63e4e96921f8c05d3e98faf84d62d4e4/388-compatability-with-core-9.3.diff"

0 commit comments

Comments
 (0)