27. Git Hooks: Post-db-copy
drush @domain.stage cc all
drush @domain.stage updb -y
drush @domain.stage en views_ui -y
drush @domain.stage en context_ui -y
drush @domain.stage fra -y
drush @domain.stage dis chartbeat -y
drush @domain.stage vset cdn_status 0 -y
drush @domain.stage solr-vset conf[apachesolr_read_only] 1 -y
drush @domain.stage vset preprocess_js 0 -y
drush @domain.stage vset preprocess_css 0 -y
drush @domain.stage vset purge_proxy_urls
'http://stage.domain.com/?purge_method=ah' -y
drush @domain.stage cc all
28. Git Hooks: Post-db-copy
drush @domain.dev cc all
drush @domain.dev updb -y
drush @domain.dev en views_ui -y
drush @domain.dev en context_ui -y
drush @domain.dev fra -y
drush @domain.dev dis chartbeat -y
drush @domain.dev vset cdn_status 0 -y
drush @domain.dev vset conf[apachesolr_read_only] 1 -y
drush @domain.dev vset preprocess_js 0 -y
drush @domain.dev vset preprocess_css 0 -y
drush @domain.dev vset purge_proxy_urls
'http://stage.domain.com/?purge_method=ah' -y
drush @domain.dev cc all
29. Git Hooks: Post-files-copy
Will run after finished copying files
- from prod to uat, stage, and or dev
- from uat to stage or dev
- from stage to uat or dev
- from dev to uat or stage
32. Drush
is a command-line shell and scripting interface for Drupal, a veritable
Swiss Army knife designed to make life easier for those who spend
their working hours hacking away at the command prompt
36. Drush: Make Capabilities
Downloading Drupal core, as well as contrib modules from drupal.org.
Checking code out from SVN, git, and bzr repositories.
Getting plain `.tar.gz` and `.zip` files (particularly useful for libraries
that can not be distributed directly with drupal core or modules).
Fetching and applying patches.
Fetching modules, themes, and installation profiles, but also external
libraries.
50. Use Site Alias
Allows you to execute Drush commands in target remote
server via ssh
Command:
$ drush @domain.prod updb -y
51. Features
Enables the capture and management of features in Drupal. A feature
is a collection of Drupal entities which taken together satisfy a
certain use-case.
56. Bash
A command processor, typically run in a text window, allowing the
user to type commands which cause actions. Bash can also read
commands from a file, called a script. Like all Unix shells, it supports
filename wildcarding, piping, here documents, command
substitution, variables and control structures for condition-testing
and iteration. - Wikipedia
71. Puppet
Open-souce automation software that helps system administrators
manage infrastructure throughout its lifecycle, from provisioning and
configuration to orchestration and reporting.
72. Chef
A systems and cloud infrastructure automation framework that
makes it easy to deploy servers and applications to any physical,
virtual, or cloud location, no matter the size of the infrastructure.
73. Ansible
Ansible configures operating systems, deploys applications, runs
parallel commands, and orchestrates IT processes like zero-downtime
rolling updates. It uses SSH by default, so no special software has to
be installed to start managing remote machines. Modules can be
written in any language.
74. Juju
Juju is a powerful service orchestration tool from Ubuntu that helps
you define, configure and deploy services to any cloud quickly and
easily.
76. Docker
Docker is an open-source project to easily create lightweight,
portable, self-sufficient containers from any application. The same
container that a developer builds and tests on a laptop can run at
scale, in production, on VMs, bare metal, OpenStack clusters, public
clouds and more.
79. Jenkins
An extendable open source continuous integration server. Built with
Java, it provides 829 plugins to support building and testing virtually
any project.
80. Maven
Maven allows a project to build using its project object model (POM)
and a set of plugins that are shared by all projects using Maven,
providing a uniform build system.
81. rsync
Is a file transfer program for Unix systems. rsync uses the "rsync
algorithm" which provides a very fast method for bringing remote
files into sync. It does this by sending just the differences in the files
across the link, without requiring that both sets of files are present
at one of the ends of the link beforehand.