Welcome to Drupal Operations: a suite of modules and tools to build ops platforms out of Drupal.
This repository serves as the main development codebase for all of the Operations submodules and packages.
For more information, see the Drupal.org Project Page.
Whenever possible, the Drupal Operations Modules can be installed independently of one another. The Site module is designed to go into every site, so that it can report back to Site Manager.
-
Site Entity Module - https://www.drupal.org/project/site
Provides advanced status and information about any Drupal site. Connects to Site Manager for tracking and control.
-
Site Manager Module- https://www.drupal.org/project/site_manager
Provides a CMS-like experience for monitoring and managing multiple sites.
-
Operations - https://www.drupal.org/project/operations_ui
Provides a central dashboard for browsing Sites, Servers, Tasks & Users. Right now, it doesn't do much other than add an Admin menu section.
Since there are many possibilities with Ox, the project will contain different distributions for different purposes. Additions are welcome!
-
Stock installation of the Ox Platform. Enables Site Manager & Operations out of the box. Used for development.
Whenever a useful tool is created, a PHP Package can be created to release independently of Ox. Drupal core uses this method.
The following PHP Packages are developed in this repository:
-
A composer plugin that pushes subfolders into other git repositories using "git-split" method. Add
composer.json:extras.git-split
configuration and usecomposer git:split
to push branches and tags. -
A basic drush plugin that calls behat with BEHAT_PARAMS with URL, root and drush alias set automatically.
-
A universal Settings.php file that sets recommended defaults based on the hosting environment. Removes the need for complex settings.php files or manually setting database configuration.
Issue management takes place in the Operations project issue queues: https://www.drupal.org/project/issues/operations?categories=All
The primary branch of development is 2.x
.
Everything needed to develop Operations is in this repository, including a Lando development environment with multiple sites for testing Site Manager connections:
-
Find or Submit an issue to work on at https://www.drupal.org/project/issues/operations?categories=All
-
Create an issue fork: On the issue page, underneath the issue description, there is a big green button labelled "Create Issue Fork".
-
Clone your repository and create a branch for the issue:
See the buttons on the issue.
-
Enter the code and launch lando:
lando start
-
Install Drupal Operations using the composer command.
composer ox:launch
This will give you 4 sites to work with.
- Do the work, push the code.
- Once ready, submit a Merge Request using the gitlab or the issue page.
- Mark the issue Needs review.