Giter Club home page Giter Club logo

drupal-test-site's Introduction

A test site to experiment with Drupal deployment strategies.

This project provides a system for deploying an existing Drupal site, known here as Drupal Test Site, from a fresh installation of Drupal. The deployment results in a fully-configured site, but does not include content.

Dependencies

The scripts contained in this project were built on Debian 8.9, and they require the following software:

  • Composer.
  • Drush, installed globally via Composer.
  • Drupal Console Launcher. Drupal Console itself will be installed locally via Composer automatically. The launcher is needed for reasons stated in the link, and becomes especially important if you plan on installing mulitple Drupal instances on the same system.

It's also worth noting that Composer and Drush should be invokable via the commands composer and drush, respectively. Drupal Console should be invokable via drupal.

Usage

The system can be adapted to deploy any Drupal site.

  1. To start, clone this repository and, rather than use the initial-deploy script, install Drupal via the script scripts/drupal_install.sh.
  2. Configure your site. I've used the deployment module to do so, though conceivably you could also configure it by hand via the admin GUI.
  3. Get your site's UUID with drush cget system.site uuid while within the Drupal root. Use it to update the deployment module's .install file's call to [YOURMODULE]_set_uuid(). It should pass your UUID as its only argument.
  4. Once you've written your configuration, enable the deployment module. Then, export your configuration to /deploy.
  5. You'll want to make sure that each reference to that deployment module is updated if it's renamed, including in the initial deploy script.
  6. Add your exported config, updated scripts, and adapted deployment module (copied to /modules/custom/) to your repository. The drupal/ directory should not be included.
  7. Once you push your changes to your central repository, you should be able to clone it elsewhere and use the installation instructions below to create a new instance of your site.

Installation

Follow these steps to deploy a new instance of this site:

  1. Create and enter a directory for the project.
  2. Run git clone https://github.com/jackbradford/drupal-test-site.git .
  3. Run scripts/initial_deploy.sh
  4. You'll be asked to specify the "Drupal Root." Enter drupal, which has been created automatically.
  5. Follow the rest of the prompts. The script will exit on failure. If such a failure occurs, it may be easiest to start the process again from scratch.
  6. If the script completes without error, the site deployed successfully.

drupal-test-site's People

Contributors

jackbradford avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.