Skip to content

Instantly share code, notes, and snippets.

@azharuddinkhan3005
Last active January 7, 2020 13:28
Show Gist options
  • Save azharuddinkhan3005/80a15594740a9bba365d4fca6ea44fee to your computer and use it in GitHub Desktop.
Save azharuddinkhan3005/80a15594740a9bba365d4fca6ea44fee to your computer and use it in GitHub Desktop.
CCF DevOps amends/requirements

Pipeline amends/requirements:

  1. Deployment of individual feature branch:

    • create a feature branch from developer fork which will follow the following pattern (CCFSGU-<ticket_number>-<hypen-separated-short-description>)
    • using the feature branch PR code, we will perform the deployment build on the EC2 instance
    • the deployment build will for spawn for each feature branch, which will inturn set up a new drupal instance, with the existing set of configs(drush si(or site-install) --existing-config)
    • the (behat) test cases will be run in the build process on the Drupal Instance on the EC2 instance, which will help us provide the build status on the PR of the feature branch.
    • After the build has passed for the feature branch, then the PR would be merged manually on the required env branches(pointing to specific envs on the Acquia cloud, probably dev OR stage OR master)
  2. Capability to host individual feature branch on an Acquia env instance

    • Currently the acquia cloud for CCF has 3 env instances, namely: -- Dev (development (GitLab's dev branch is pointed to this env instance)) -- Stage (staging (GitLab's stage branch is pointed to this env instance)) -- Prod (Production (Here the different features will be aggregated into tags and will be deployed onto this env)
    • We need to have an env instance on acquia to test a feature branch in isolation
  3. Automation of Acquia cloud hooks

    • Currently when the code deployment happens on the Acquia cloud envs, through the GitLab's branches(specifically dev, stage and master), then we need to manually perform drupal related operations(like rebuilding cache or importing features)
    • We need to automate these through the Acquia cloud hooks.
  4. Need to explore a tool for providing performance metrics/concerns via integration testing.

  • K6
  • SonarQube
  • Blackfire
  • DrupalCI(optional, just to see its extendibility, as it is still in development via core)
  1. Need Build step in pipeline for feature branches, this will hep to validate the code.

FD for Environment and testing:

Environment and Testing

FD for Feature Deployment Workflow

Feature Deployment Workflow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment