-
Notifications
You must be signed in to change notification settings - Fork 2
/
defaults.yml
316 lines (270 loc) · 12.5 KB
/
defaults.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
# @file
# This file contains the full set of default properties for targets in the-build.
#
# Properties may be overridden for individual projects by copying them to the project's
# own property files:
# - .the-build/build.yml
# - .the-build/build.circleci.yml
# - .the-build/build.acquia.yml
# - etc.
#
# @copyright 2018 Palantir.net, Inc.
# Configuration for the-build.
build:
# The destination host, either 'acquia', 'pantheon', 'platformsh', or 'other'. This is
# currently only used when setting up the settings.php file for a Drupal site.
host: acquia
# Adding specific packages for specific host. One per line.
host_packages:
acquia:
- "typhonius/acquia-php-sdk-v2:^2.0"
# Drupal configuration used by targets/drupal.xml
drupal:
# Relative path to the Drupal web root. This is co-dependent with the composer installer
# configuration in your `composer.json`. Use caution when changing this value.
# **This is a required value but must be set in a project's own build.yml file**
#root: web
# Comma-separated list of directories that should be present for Drupal development.
create_dirs: "${drupal.root}/modules/custom,${drupal.root}/themes/custom,config/config_split/development,config/config_split/staging,config/config_split/production,features/screenshots"
twig:
# Whether to enable twig debugging.
debug: false
# Whether to prevent Drupal install when there are local (non-committed) changes to the
# exported Drupal config.
validate_clean_config:
# Use 'true' or 'yes' to bypass.
bypass: false
sites:
# Configuration values for a Drupal site build. The values in this section
# must be customized for each Drupal multisite installation that you add.
#
# This site configuration is partial; it will be completed in targets/the-build.xml by
# loading any missing values from drupal.sites._defaults.
#
# To add a Drupal multisite installation, copy these default values into
# your project's .the-build/build.yml file and change
# the 'default' key to the name of your new multisite. The key must not
# contain '.' characters, but the 'dir' property may.
default:
# REQUIRED: Name of the sites subdirectory where the `settings.php` file
# should live.
dir: default
# REQUIRED: Your site's URI; the default should be the URI of your local
# development environment. This must be present in your
# .the-build/build.yml file.
# uri: "https://${projectname}.ddev.site"
# Customizing the following values is OPTIONAL. If these values are not
# explicitly configured, they will be set in the-build.xml based on the
# 'dir' value configured above.
#
# NOTE: Properties may use other properties in their values, which are
# expanded when the property file is loaded. We can not use that behavior
# here because these values must reference a variable path: the 'default'
# key in the 'drupal.sites.*' properties.
#
# # Path to the Drupal config directory, relative to the Drupal root.
# config_sync_directory: "../config/sites/default"
#
# # Database connection for Drupal.
# database:
# database: drupal
#
# settings:
# # Path to the Drupal public files directory, relative to the Drupal root.
# file_public_path: sites/default/files
#
# # Path to the Drupal private files directory, relative to the Drupal root.
# file_private_path: "../artifacts/private/default"
#
# # Configuration used by the default 'build' target.
# build:
# # Destination for the templated settings.php file.
# settings_dest: ${drupal.root}/sites/default/settings.build.php
#
# # Destination for the templated `services.yml` file.
# services_dest: ${drupal.root}/sites/default/services.build.yml
# These values are used to fill in defaults for Drupal multisites that might
# not have everything defined. These may be set for specific multisites, or
# you may choose to override the defaults.
_defaults:
# Salt for Drupal's password hashing. A unique salt is generated when you install
# `the-build`.
hash_salt: temporary
# Drupal install profile to use for the drupal-install target.
#
# DEPRECATED - to be removed in 3.1
# This property was used in the 'install' target in the default build.xml, until
# we switched from the config_installer profile to using
# 'drush site-install --existing-config`.
profile: config_installer
# Drupal admin username, if you feel inclined to change it.
admin_user: admin
# Database connection for Drupal.
database:
# This value is required, but a default is set in the-build.xml.
# database: drupal
username: db
password: db
host: db
# Configuration used by the default 'build' target.
build:
# Source template for Drupal's `settings.php` file. This may vary per build
# environment.
settings_template: .the-build/drupal/settings.build.php
# Source template for Drupal's `services.yml` file. This may vary per build
# environment.
services_template: .the-build/drupal/services.build.yml
# Configuration for the database loading utility.
load_db:
# Pattern to match gzipped database dump files.
export_pattern: artifacts/backups/*.sql.gz
# The following two commands are composed to load the database into Drupal:
# $> gunzip -c FILENAME.sql.gz | drush sqlc
#
# Command to extract text contents of the backup file.
contents_command: gzip -dc
# Command to load database contents into Drupal.
mysql_command: mysql --host=${drupal.site.database.host} --user=${drupal.site.database.username} --password=${drupal.site.database.password} --database=${drupal.site.database.database}
# Load a specific file rather than one matching the `export_pattern`. This can be used
# if your build relies on a seed database that is checked in to the repository.
# Otherwise, you may occasionally want to set this value at run time:
# $> phing load-db -Ddb.load.file=artifacts/foo.sql.gz
#file:
drop_db:
# Command to drop the database tables.
mysql_command: drush sql-drop -y
# Configuration for targets/artifact.xml
artifact:
# The path of the working directory where the artifact should be built.
directory: artifacts/build
# A string prefix to use for branch names.
prefix: artifact-
# Path to a template .gitignore file to use in the artifact.
gitignore_template: "${build.thebuild.dir}/defaults/artifact/gitignore"
# Path to a template README file to use in the artifact.
readme_template: "${build.thebuild.dir}/defaults/artifact/README.md"
git:
# Git repository for the artifact. This is typically an Acquia or Pantheon git URL.
# This property is commented out, because the value should only be set in per-project
# properties files.
#remote:
# Name of the remote branch to push the artifact to.
# The remote_branch property is generally set dynamically, to 'artifact.prefix' plus
# the current branch name. However, it may be overridden either in your project
# properties or in a run-time flag (-Dartifact.git.remote_branch=foo) in order to
# build to a static destination branch, or a branch name that matches other
# constraints (like Pantheon's 11 character limit for multidev environment branch
# names).
#remote_branch:
# Name of a branch to use as the base, if the artifact.remote_branch does not yet
# exist on the artifact.git.remote repository.
remote_base_branch: master
# Name to use for the git remote on the artifact repository.
remote_name: origin
# Configuration for targets/acquia.xml
acquia:
# Directory for storing downloaded database backups.
backups: artifacts/backups
# Acquia site/application name.
site: ""
# Acquia database name. This can be left to match the site name unless you're
# using multisites.
database: "${acquia.site}"
# Acquia environment to download backups from.
env: "prod"
# Configuration to use the PHP interpreter's built in linter to check for syntax errors
# and deprecated code. This property is used by the <phplint> task in the
# defaults/build.xml template.
phplint:
# Path to a file where each line is a pattern matching files to lint.
includesfile: "${build.thebuild.dir}/defaults/standard/phplint.txt"
# Configuration for using PHP_CodeSniffer to review code according to the Drupal coding
# standards.
#
# DEPRECATED - to be removed in the-build 4.2
# This configuration is replaced by defaults/install/phpcs.xml.
#
# @see https://www.drupal.org/docs/develop/standards
# @see https://github.com/squizlabs/PHP_CodeSniffer
# @see https://www.drupal.org/project/coder
#
# These values are used in the defaults/build.xml template:
# $> phpcs --standard=${phpcs.standard} --ignore=${phpcs.ignore} ${phpcs.directories}
phpcs:
# Path to a PHP_CodeSniffer standard file.
standard: "${build.dir}/vendor/drupal/coder/coder_sniffer/Drupal/ruleset.xml"
# Space-separated list of directories to review.
directories: "${drupal.root}/modules/custom ${drupal.root}/themes/custom"
# Comma-separated list of extensions to check in the PHP_CodeSniffer review.
extensions: "php,module,inc,install,test,profile,theme,css,info,txt,yml,js"
# Configuration for using PHP Mess Detector to check for general PHP best practices,
# unused variables, and to analyze complexity.
#
# @see https://phpmd.org/
#
# These values are used in the defaults/build.xml template:
# $> phpmd ${phpmd.directories} ${phpmd.format} ${phpmd.rulesets} --suffixes ${phpmd.suffixes}
phpmd:
# Comma-separated list of directories to review.
directories: "${drupal.root}/modules/custom/,${drupal.root}/themes/custom/"
# Output format for phpmd.
format: text
# Comma-separated list of ruleset paths or names.
rulesets: "${build.dir}/phpmd.xml"
# File extensions to review.
suffixes: php,inc,module,theme,profile,install,test
# Configuration for checking the site with the Drupal Checker code linter.
#
# @see https://github.com/mglaman/drupal-check
# @see defaults/build.xml
drupal-check:
# Location of the drupal-check script. This shouldn't need to be overridden,
# but it is used in the defaults/build.xml template.
bin: "vendor/bin/drupal-check"
# Comma separated list of directories
directories: "${drupal.root}/modules/custom/,${drupal.root}/themes/custom/"
# Configuration for running behat tests.
#
# Putting these flags in configuration allows you to vary the behat configuration per
# environment. Sometimes, there are tests that are appropriate to skip on CI. Compare
# these values to the defaults in build.circleci.yml.
#
# Also consider:
# * Tagging tests based on where they should run (e.g. '@skipci')
# * Creating additional "profiles" in behat.yml for environments or multisites (see
# http://docs.behat.org/en/v2.5/guides/7.config.html#profiles)
behat:
args: "--suite=default --strict"
# Configuration for composer.
#
# Use this configuration if you're running on an environment where composer is not
# available on the command line as `composer` or `composer.phar`. In some cases, you may
# need to add composer to your project itself with `composer require composer/composer`.
# composer:
# composer: /path/to/composer.phar
# Configuration for building the style guide.
#
# Use these properties if you're using a Composer + Yarn install process for your
# style guide and need to customize the location or the build command.
styleguide:
# Location of the style guide, relative to the project root.
root: 'styleguide'
# Command to compile the style guide assets, for use during the build and artifact steps.
command: 'yarn default'
# Configuration for linting custom javascript.
#
# Update these properties to reflect the directories and extensions used for
# your project's custom javascript.
# @see https://eslint.org/docs/latest/use/core-concepts
eslint:
# Run eslint on custom modules AND themes, this must be a single value.
# @see: https://eslint.org/docs/latest/use/command-line-interface#run-the-cli
#
# If you need multiple directories that don't match a single pattern, you
# may need to add multiple config values here and add a for loop to the build
# target for eslint.
directory: "${drupal.root}/**/custom/"
# Run eslint on files with .es6.js extension.
# This can be a comma separated list.
# @see: https://eslint.org/docs/latest/use/command-line-interface#--ext
extensions: ".es6.js"