diff --git a/.ddev/config.private-environment-variables.yml b/.ddev/config.private-environment-variables.yml new file mode 100644 index 000000000..eb38f4abb --- /dev/null +++ b/.ddev/config.private-environment-variables.yml @@ -0,0 +1,10 @@ +# Uncomment below lines to activate the variables. +#web_environment: +# - SITESTUDIO_API_KEY= +# - SITESTUDIO_ORG_KEY= +# - CONNECTOR_ID= +# - SEARCH_UUID= +# - CONNECTOR_KEY= +# - CLOUD_API_KEY= +# - CLOUD_API_SECRET= +# - GMAPS_KEY= diff --git a/.ddev/config.yaml b/.ddev/config.yaml new file mode 100644 index 000000000..90275b5ef --- /dev/null +++ b/.ddev/config.yaml @@ -0,0 +1,19 @@ +name: acquia-cms +type: drupal +docroot: docroot +php_version: "8.3" +webserver_type: nginx-fpm +xdebug_enabled: false +additional_hostnames: [] +additional_fqdns: [] +database: + type: mariadb + version: "10.11" +use_dns_when_possible: true +composer_version: "2" +web_environment: + - SIMPLETEST_BASE_URL=http://web + - SIMPLETEST_DB=mysql://db:db@db/db + - BROWSERTEST_OUTPUT_DIRECTORY=docroot/sites/simpletest/browser_output + # - MINK_DRIVER_ARGS_WEBDRIVER='["chrome", {"browserName":"chrome","chromeOptions":{"args":["--disable-gpu","--headless", "--no-sandbox"]}}, "http://chromedriver:9515"]' +corepack_enable: false diff --git a/.ddev/docker-compose.chromedriver.yml b/.ddev/docker-compose.chromedriver.yml new file mode 100644 index 000000000..2243f3665 --- /dev/null +++ b/.ddev/docker-compose.chromedriver.yml @@ -0,0 +1,15 @@ +services: + chromedriver: + container_name: ddev-${DDEV_SITENAME}-chromedriver + image: drupalci/chromedriver:production + labels: + # These labels ensure this service is discoverable by ddev + com.ddev.site-name: ${DDEV_SITENAME} + com.ddev.approot: $DDEV_APPROOT + com.ddev.app-url: $DDEV_URL + # This links the Chromedriver service to the web service defined + # in the main docker-compose.yml, allowing applications running + # in the web service to access the driver at `chromedriver`. + web: + links: + - chromedriver:$DDEV_HOSTNAME diff --git a/DEVELOPING.md b/DEVELOPING.md index 634e494b1..c061e8f40 100644 --- a/DEVELOPING.md +++ b/DEVELOPING.md @@ -15,6 +15,18 @@ Contact Michael Sherron or Prafful Nagwani for an invitation. ### Background To provide a consistent environment for our development team, Acquia CMS is developed using Acquia's Cloud IDE service, which provides a VSCode-like developer experience. It is possible to work on Acquia CMS on your own machine, using an IDE of your choice, but we do not recommend that set-up in most circumstances. +### Setting up using DDEV +1. Install docker provider [Colima](https://ddev.readthedocs.io/en/stable/users/install/docker-installation/#colima) using brew `brew install colima`. +2. Start colima services `colima start`. +3. Install ddev using brew `brew install ddev/ddev/ddev`. +4. Clone this repository `git clone git@github.com:acquia/acquia_cms.git`. +5. Change directory to acquia_cms `cd acquia_cms`. +6. Run `composer install`. +7. Update your private environment variable from `.ddev/config.private-environment-variables.yml`. +8. Run `ddev start` to star container. +9. Install site using `ddev composer acms:install` and provide the input requested by script to proceed with installation. +10. Visit the site [http://acquia-cms.ddev.site](http://acquia-cms.ddev.site). + ### Setting up a Cloud IDE Because there is a limited number of Cloud IDEs available to the Acquia CMS team, each active developer should only need (and have) one. Therefore, you should only do this once.