ui-research / lightning-drops-8-composer
Install lightning with Composer on Pantheon.
Installs: 31
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 11
Forks: 124
Open Issues: 0
Language:HTML
Type:project
Requires
- php: >=7.0.8
- composer/installers: ^1.0.20
- cweagans/composer-patches: ^1.0
- drupal-composer/drupal-scaffold: ^2.0.1
- drupal/config_direct_save: ^1.0
- drupal/config_installer: ^1.0
- drupal/console: ^1
- drupal/core: ^8
- drupal/simple_block: ^1.0@beta
- drush-ops/behat-drush-endpoint: ^0.0.5
- drush/drush: ~8
- pantheon-systems/quicksilver-pushback: ~1
- rvtraveller/qs-composer-installer: ^1.1
- webflo/drupal-core-strict: ^8
Requires (Dev)
- behat/behat: 3.*
- behat/mink: ^1.7
- behat/mink-extension: ^2.2
- behat/mink-goutte-driver: ^1.2
- drupal/drupal-extension: ^3.1
- jcalderonzumba/gastonjs: ^1.0.2
- jcalderonzumba/mink-phantomjs-driver: ^0.3.1
- mikey179/vfsstream: ^1.2
- phpunit/phpunit: ^4.8
- symfony/css-selector: ^2.8
Conflicts
- dev-master
- 1.3.10
- 1.3.9
- 1.3.8
- 1.3.7
- 1.3.6
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-upstream-upgrade2
- dev-clu-2019-01-03-00-00
- dev-clu-2018-12-05-18-19
- dev-clu-2018-11-07-17-28
- dev-update-8.6.2
- dev-clu-2018-10-17-23-41
- dev-drush9
- dev-update-8.6.1
- dev-update-8.6.0
- dev-update-8.5.6
- dev-drupal-8.5.5
- dev-clu-2018-06-04-08-36
- dev-clu-2018-04-25-17-05
- dev-better-update-instructions
- dev-no-dev
- dev-clu-2018-03-28-20-48
- dev-use-drops-8-scaffolding
- dev-clu-2018-03-07-22-47
- dev-drush-9
- dev-terminus-171
- dev-clu-2018-02-23-18-27
- dev-contenta
- dev-contenta--take2--install-hack
- dev-clu-2017-12-07-16-40
- dev-mc-address
- dev-build-tools-2a4
- dev-clu-2017-11-03-17-37
- dev-drupal-8.4.0
- dev-php-70
- dev-use-script-in-docker
- dev-circle-2.0
- dev-clu-2017-09-06-15-43
- dev-clu-2017-09-06-a152e36
- dev-ratelimit-check
- dev-readme-update
- dev-non-interactive
- dev-redundant-files-ignore
- dev-merge-test-branch
- dev-test
- dev-test-2.x
- dev-git-ignore-file-perms
- dev-prevent-submodules
- dev-modern-commands
- dev-simple-block
- dev-d830
- dev-behat-components
- dev-updatedb
- dev-example-theme
- dev-remove-reinstall
- dev-clone-content
- dev-first-to-dev
- dev-site-install-composer-script
- dev-config-installer
- dev-update-env-vars
- dev-lightning-fist-2
- dev-behat-wait
- dev-dc-workaround
- dev-0e9bashallow-clone
- dev-db0f2shallow-clone
- dev-473aeshallow-clone
- dev-451bfshallow-clone
- dev-composer-merge-pantheon
This package is auto-updated.
Last update: 2024-11-29 05:33:09 UTC
README
This repository is a start state for a Composer-based Drupal (Lightning Distro) workflow with Pantheon. It is meant to be copied by the the Terminus Build Tools Plugin which will set up for you a brand new site.
- GitHub repo
- Free Pantheon sandbox site
- A CircleCI configuration to run tests and push from the source repo (GitHub) to Pantheon.
For more background information on this style of workflow, see the Pantheon documentation.
Installation
Prerequisites
Before running the terminus build:project:create
command, make sure you have all of the prerequisites:
- A Pantheon account
- Terminus, the Pantheon command line tool
- The Terminus Build Tools Plugin
- An account with GitHub and an authentication token capable of creating new repos.
- An account with CircleCI and an authentication token.
You may find it easier to export the GitHub and CircleCI tokens as variables on your command line where the Build Tools Plugin can detect them automatically:
export GITHUB_TOKEN=[REDACTED]
export CIRCLE_TOKEN=[REDACTED]
One command setup:
Once you have all of the prerequisites in place, you can create your copy of this repo with one command:
terminus build:project:create ui-research/lightning-drops-8-composer:dev-master my-new-site --org="UI-Research"
if this is part of the Urban "Team" there is an extra flag like so:
terminus build:project:create ui-research/lightning-drops-8-composer:dev-master my-new-site --org="UI-Research" --team="The Urban Institute"
The parameters shown here are:
- The name of the source repo,
UI-Research/lightning-drops-8-composer
. If you are interest in other source repos like WordPress, see the Terminus Build Tools Plugin. - The machine name to be used by both the soon-to-be-created Pantheon site and GitHub repo. Change
my-new-site
to something meaningful for you. - The
--org
flag is optional and refers to a Github organization. - The
--team
flag is optional and refers to a Pantheon organization.
Important files and directories
/web
Pantheon will serve the site from the /web
subdirectory due to the configuration in pantheon.yml
, facilitating a Composer based workflow. Having your website in this subdirectory also allows for tests, scripts, and other files related to your project to be stored in your repo without polluting your web document root.
/config
One of the directories moved to the git root is /config
. This directory holds Drupal's .yml
configuration files. In more traditional repo structure these files would live at /sites/default/config/
. Thanks to this line in settings.php
, the config is moved entirely outside of the web root.
composer.json
If you are just browsing this repository on GitHub, you may notice that the files of Drupal core itself are not included in this repo. That is because Drupal core and contrib modules are installed via Composer and ignored in the .gitignore
file. Specific contrib modules are added to the project via composer.json
and composer.lock
keeps track of the exact version of each modules (or other dependency). Modules, and themes are placed in the correct directories thanks to the "installer-paths"
section of composer.json
. composer.json
also includes instructions for drupal-scaffold
which takes care of placing some individual files in the correct places like settings.pantheon.php
.
Behat tests
So that CircleCI will have some test to run, this repository includes a configuration of Behat tests. You can add your own .feature
files within /tests/features/
.
Updating your site
When using this repository to manage your Drupal site, you will no longer use the Pantheon dashboard to update your Drupal version. Instead, you will manage your updates using Composer. Ensure your site is in Git mode, clone it locally, and then run composer commands from there. Commit and push your files back up to Pantheon as usual.