Drupal deployment

Problems:

  • Content and Configuration all in the database (nodes, users, views)
    • Configuration is the structure around a node type or the configuration around a view
  • No standard for storing configuration

Solutions:

  • Updates functions (hooks) thats make changes in the database
  • SQL Queries (not  a good solution)
  • Patterns module / library (existed before Features Module)
  • Exportables (i.e. export button in a View)
  • Features Module
  • Use version control

Features Module (a module that creates modules called ‘features’)

  • Exports configuration to code (PHP)
  • Creates a module for that code (called a feature)
  • Monitors discrepancies; it checks discrepancies between what is live in the database and what is in code

Git

Git is a Distributed Version Control Systems. Each checkout contains the full repository history. You can work offline with the full repository. A Git tag is a reference to a certain point in the repository. A branch is a used to track ongoing development. Most of the time the code that is deployed on the production site is maintained in the master branch. You use ‘feature’ branches to track ongoing work.

 


Leave a Reply