Begin repository based on build_source main

This commit is contained in:
Keegan Rankin 2023-12-01 13:52:30 -08:00
commit 208a90e7b9
6 changed files with 27379 additions and 0 deletions

266
.ddev/config.yaml Normal file
View file

@ -0,0 +1,266 @@
name: experienceolympic-com
type: drupal10
docroot: web
php_version: "8.1"
webserver_type: apache-fpm
xdebug_enabled: false
additional_hostnames: []
additional_fqdns: []
database:
type: mariadb
version: "10.8"
use_dns_when_possible: true
composer_version: "2"
web_environment: []
nodejs_version: "18"
# 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-15.
# 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 14, 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.
# 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"
# 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 dont intend to use the https_port!
# If you dont 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 'nfs_mount_enabled: 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,
# 'nfs_mount_enabled: 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:
# post-import-db:
# - exec: drush cr
# - exec: drush updb

34
.gitignore vendored Normal file
View file

@ -0,0 +1,34 @@
# Ignore dependencies that are managed with Composer.
# Generally you should only ignore the root vendor directory. It's important
# that core/assets/vendor and any other vendor directories within contrib or
# custom module, theme, etc., are not ignored unless you purposely do so.
/vendor/
# Ignore configuration files that may contain sensitive information.
sites/*/settings*.php
sites/*/services*.yml
# Ignore paths that contain user-generated content.
sites/*/files
sites/*/private
# Ignore SimpleTest multi-site environment.
sites/simpletest
# If you prefer to store your .gitignore file in the sites/ folder, comment
# or delete the previous settings and uncomment the following ones, instead.
# Ignore configuration files that may contain sensitive information.
# */settings*.php
# Ignore paths that contain user-generated content.
# */files
# */private
# Drupal scaffolding auto-added ignores
/.editorconfig
/.gitattributes
/web/
# Ignore database backup directory.
/backups/

238
composer.json Normal file
View file

@ -0,0 +1,238 @@
{
"name": "drutopia/drutopia_template",
"description": "Project template for Drupal 10 Drutopia projects.",
"type": "project",
"license": "GPL-2.0-or-later",
"minimum-stability": "dev",
"prefer-stable": true,
"homepage": "https://drutopia.org",
"support": {
"docs": "http://docs.drutopia.org/en/latest",
"issues": "https://gitlab.com/drutopia/drutopia/-/issues"
},
"repositories": {
"drupal/search_api_entity_multiselect": {
"type": "git",
"url": "https://codeberg.org/agaric/search_api_entity_multiselect.git"
},
"drupal/google_analytics": {
"type": "git",
"url": "git@git.drupal.org:issue/google_analytics-3357831.git"
},
"drupal": {
"type": "composer",
"url": "https://packages.drupal.org/8"
}
},
"require": {
"composer/installers": "^2",
"cweagans/composer-patches": "^1.7",
"drupal/admin_toolbar": "^3",
"drupal/allowed_formats": "^2",
"drupal/antibot": "^2",
"drupal/asset_injector": "^2",
"drupal/auto_entitylabel": "^3.0@beta",
"drupal/backup_migrate": "^5",
"drupal/better_exposed_filters": "^6",
"drupal/block_class": "^2",
"drupal/bpmn_io": "^1",
"drupal/cancel_button": "^1",
"drupal/ckeditorheight": "^1",
"drupal/classitup": "^1",
"drupal/comment_notify": "^1",
"drupal/content_lock": "^2",
"drupal/context_stack": "^1",
"drupal/convert_bundles": "^2",
"drupal/core-composer-scaffold": "^10",
"drupal/core-recommended": "^10",
"drupal/csp": "^1",
"drupal/customerror": "^1",
"drupal/dashboards": "^2",
"drupal/date_popup": "^2",
"drupal/datetimehideseconds": "^1",
"drupal/diff": "^1",
"drupal/drd_agent": "^4",
"drupal/dropdown_language": "^4",
"drupal/drutopia_collection": "2.0.x-dev@dev",
"drupal/drutopia_core": "2.0.x-dev@dev",
"drupal/drutopia_organization": "2.0.x-dev@dev",
"drupal/drutopia_paragraph_title": "^1",
"drupal/drutopia_site": "2.0.x-dev@dev",
"drupal/easy_breadcrumb": "^2",
"drupal/eca": "^1",
"drupal/eca_context": "^1.0",
"drupal/editor_advanced_link": "^2.0",
"drupal/editoria11y": "^2",
"drupal/email_registration": "^1",
"drupal/entity_notify": "^1",
"drupal/entity_reference_override": "^2",
"drupal/entitygroupfield": "^2",
"drupal/environment_indicator": "^4",
"drupal/eva": "^3",
"drupal/exif_orientation": "^1",
"drupal/facets": "dev-3.0.x as 2.0.x-dev",
"drupal/feeds": "^3",
"drupal/feeds_ex": "^1",
"drupal/feeds_ical": "^2",
"drupal/field_defaults": "^2",
"drupal/field_formatter_class": "^1",
"drupal/field_token_value": "^3",
"drupal/filter_perms": "^1",
"drupal/fitvids": "^2",
"drupal/fixed_block_content": "^1",
"drupal/flag": "^4",
"drupal/footnotes": "^3",
"drupal/fullcalendar_view": "^5",
"drupal/geolocation": "^3",
"drupal/gin": "^3",
"drupal/gin_gutenberg": "^1",
"drupal/gin_login": "^2",
"drupal/gin_toolbar": "^1",
"drupal/google_analytics": "dev-3357831-php-8.2-compatibility",
"drupal/gutenberg": "^2",
"drupal/http_cache_control": "^2",
"drupal/http_client_error_status": "^3",
"drupal/ief_complex_open": "^1",
"drupal/indieweb": "^1",
"drupal/inline_entity_form": "^1.0@RC",
"drupal/inotherwords": "^3",
"drupal/insert": "^3",
"drupal/key": "^1.14",
"drupal/link_attributes": "^1.9",
"drupal/linkit": "^6",
"drupal/mail_login": "^2.7",
"drupal/markdown": "^3",
"drupal/menu_item_extras": "^2.19",
"drupal/menu_link_config": "^1.0@alpha",
"drupal/menu_trail_by_path": "^2",
"drupal/microformats": "^2",
"drupal/migrate_plus": "^6",
"drupal/migrate_source_csv": "^3",
"drupal/migrate_tools": "^6",
"drupal/migrate_upgrade": "^4",
"drupal/minimalhtml": "^2",
"drupal/node_view_permissions": "^1.4",
"drupal/noreferrer": "^1",
"drupal/notfoundpassthrough": "1.x-dev",
"drupal/octavia": "2.0.x-dev@dev",
"drupal/octavia_camouflage": "2.0.x-dev@dev",
"drupal/paragraphs_features": "^2",
"drupal/password_policy": "^4",
"drupal/plausible": "^2.0@beta",
"drupal/prepopulate": "^2",
"drupal/preview_link": "^2",
"drupal/printable": "^3",
"drupal/r4032login": "^2",
"drupal/rabbit_hole": "^1.0@beta",
"drupal/regionincontent": "^1",
"drupal/registration_role": "^2",
"drupal/require_on_publish": "^1",
"drupal/role_delegation": "^1",
"drupal/scheduler": "^1",
"drupal/schema_metatag": "^2",
"drupal/scn": "^2",
"drupal/search404": "^2",
"drupal/search_api_autocomplete": "^1.6",
"drupal/search_api_entity_multiselect": "1.0.x-dev",
"drupal/search_api_saved_searches": "^1",
"drupal/seckit": "^2.0",
"drupal/select_or_other": "^4.0",
"drupal/shield": "^1.4",
"drupal/smart_date": "^4.0",
"drupal/sms": "^2.0",
"drupal/social_post_facebook": "3.0.x-dev@dev",
"drupal/social_post_twitter": "3.x-dev@dev",
"drupal/stringoverrides": "^1.8",
"drupal/subpathauto": "^1.0@RC",
"drupal/taxonomy_import": "^2",
"drupal/taxonomy_manager": "^2",
"drupal/textarea_widget_for_text": "^1.1",
"drupal/tomselect": "1.0.x-dev@dev",
"drupal/trim": "^2",
"drupal/twig_tweak": "^3.2",
"drupal/twigsuggest": "^1",
"drupal/ui_patterns": "^1",
"drupal/unique_content_field_validation": "^1.1",
"drupal/view_password": "^6",
"drupal/view_unpublished": "^1.0",
"drupal/views_daterange_filters": "^1.0@alpha",
"drupal/views_field_compare": "^1.0@beta",
"drupal/viewsreference": "^1",
"drupal/webform": "^6.0",
"drupal/weight": "^3.3",
"drupal/workflow_buttons": "1.x-dev",
"drupal/wysiwyg_linebreaks": "^2",
"drush/drush": "^11",
"drutopia/drutopia": "2.0.x-dev",
"league/commonmark": "^1.0",
"vlucas/phpdotenv": "^5.1",
"webflo/drupal-finder": "^1.2"
},
"require-dev": {
"behat/behat": "^3.4",
"behat/mink": "^1.7",
"drupal/upgrade_status": "^4"
},
"config": {
"sort-packages": true,
"process-timeout": 600,
"allow-plugins": {
"composer/installers": true,
"cweagans/composer-patches": true,
"drupal/core-composer-scaffold": true,
"drupal/core-project-message": false
}
},
"conflict": {
"drupal/drupal": "*"
},
"extra": {
"drupal-scaffold": {
"locations": {
"web-root": "web/"
},
"allowed-packages": [
"drupal/ui_patterns"
]
},
"installer-paths": {
"web/core": ["type:drupal-core"],
"web/libraries/{$name}": ["type:drupal-library"],
"web/modules/contrib/{$name}": ["type:drupal-module"],
"web/profiles/contrib/{$name}": ["type:drupal-profile"],
"web/themes/contrib/{$name}": ["type:drupal-theme"],
"drush/Commands/contrib/{$name}": ["type:drupal-drush"],
"web/modules/custom/{$name}": ["type:drupal-custom-module"],
"web/themes/custom/{$name}": ["type:drupal-custom-theme"]
},
"merge-plugin": {
"include": [
"web/modules/contrib/webform/composer.libraries.json"
]
},
"enable-patching": true,
"patches": {
"drupal/core": {
"Adding attributes to views-view-list.html.twig doesn't work if Views List class Style option is empty": "https://www.drupal.org/files/issues/2023-03-16/2845400-24.patch",
"Use form element of type date instead textfield when selecting a date in an exposed filter": "https://www.drupal.org/files/issues/2021-12-01/2648950-257.patch",
"Views Date Filter Datetime Granularity Option": "https://www.drupal.org/files/issues/2021-04-27/2868014-110-after-2648950-247-applied.patch",
"Entity reference filter for all entity reference fields 3347343": "https://git.drupalcode.org/project/drupal/-/merge_requests/4053.diff"
},
"drupal/ds": {
"Parent theme template inheritance bug": "https://www.drupal.org/files/issues/2021-02-22/2895316-12.patch"
},
"drupal/unique_content_field_validation": {
"Overriden title field" : "https://www.drupal.org/files/issues/2023-01-05/unique-validation-title-override.patch"
}
}
},
"scripts": {
"nuke": "rm -rf vendor web/core web/modules/contrib web/profiles/contrib drush/contrib",
"pull": "scripts/pull.sh",
"quick-start": [
"composer install",
"php docroot/core/scripts/drupal quick-start drutopia --no-interaction"
],
"post-drupal-scaffold-cmd": "scripts/retain-custom-htaccess.sh"
}
}

26817
composer.lock generated Normal file

File diff suppressed because it is too large Load diff

17
scripts/pull.sh Executable file
View file

@ -0,0 +1,17 @@
#!/bin/bash
set -e
# Confirmed with echo `pwd` that as long as we use via composer it's always in
# /var/www/html (aka the project root).
proj_dir="$(cd $(dirname ${0})/../ && pwd)" # Parent of this script folder.
[ "$proj_dir" != "/var/www/html" ] && { echo "Script running from unexpected path - are you running within ddev, as you should?"; exit 1; }
backup_file="$(date +%Y%m%dT%H%M%S)_pre_pull.sql"
[ ! -d /var/www/html/backups ] && mkdir /var/www/html/backups || true
echo "Backing up current db to backups/${backup_file}..."
drush sql-dump > /var/www/html/backups/${backup_file}
echo "Dropping local db..."
drush -y sql-drop
echo "Pulling db from live into local..."
drush -y sql-sync @live @self
echo "Pulling files from live into local..."
drush -y rsync @live:%files @self:%files
echo "Done"

View file

@ -0,0 +1,7 @@
#!/bin/bash
if [ -f ./web/.htaccess.custom ]
then
cd web && mv .htaccess .htaccess.default && cp .htaccess.custom .htaccess
git diff -s --exit-code .htaccess.default || echo 'NOTE: .htaccess.default file has changed! Be sure to integrate latest updates into .htaccess and .htaccess.custom, then commit all three files. For example, meld web/.htaccess.custom web/.htaccess.default'
fi