---
title: "Checklist for migrating your sites to Site Factory"
date: "2024-02-14T06:18:38+00:00"
summary: "Streamline your Site Factory migration with our comprehensive checklist. From development processes to performance optimization, ensure a smooth transition for your websites with expert-curated tasks and best practices."
image:
type: "page"
url: "/site-factory/checklist-migrating-your-sites-site-factory"
id: "687ce125-611e-4d27-bfbf-8a6bd0eb3099"
---

As you prepare to [migrate your websites](/site-factory/migrate) into Site Factory, Acquia has identified a common list of tasks to consider as part of your initial sprint _(Sprint 0)_ planning. Although the activities described on this page are not a complete list, the following task groupings can help you to identify the work that is necessary for a successful launch, and also identify the tools that can assist you:

*   [Setting up development processes](#setting-up-development-processes)
*   [Platform infrastructure and workflow management](#platform-infrastructure-and-workflow-management)
*   [Platform base architecture](#platform-base-architecture)
*   [Platform administration](#platform-administration)
*   [User roles, permissions, and accounts](#user-roles-permissions-and-accounts)
*   [Global and base theming](#global-and-base-theming)
*   [Global components](#global-components)
*   [Editorial and content workflows](#editorial-and-content-workflows)
*   [Social media](#social-media)
*   [Forms](#forms)
*   [Security](#security)
*   [Performance](#performance)
*   [Next steps](#next-steps)

Setting up development processes
--------------------------------

 

Summary

Description

□

Code repository creation and access

Create a private GitHub repository to serve as the canonical repository, and provide push and pull access as needed

□

Grant developer access to environment

Provide the technical team with all needed tool and account access

□

Define configuration management strategy

Identify a [configuration management strategy definition](/acquia-cloud-platform/help/93051-configuration-management-drupal-89 "Configuration management in Drupal 8/9"), which may include features, CMI, config split, custom modules, and scripts

□

Implement configuration management framework

Technical implementation of configuration management strategy

□

Define deployment and release strategy

Define [deployment and release workflow](/acquia-cloud-platform/help/92771-creating-releases-and-deploying-code-acquia-cloud "Creating releases and deploying code on Acquia Cloud") and communication plans

□

Implement deployment strategy

Technical implementation of deployment and release automation

□

Configure local development environment and virtual machines

Configure a standard local development environment and virtual machines (VMs)

□

Define development workflow

Define a code workflow, including `git flow`, a branching strategy, and code review process definitions

□

Document developer onboarding and configuration

Document the development team’s configuration, local environments, development processes, and tool installation

□

Configure Site Factory environment

Initial deployment of base profile to Site Factory

□

Define environment access and governance

Define roles and responsibilities on all technical environments, including the Site Factory Management Console, Site Factory code repository, and GitHub repository

Platform infrastructure and workflow management
-----------------------------------------------

 

Summary

Description

□

Configure continuous integration

Set up continuous integration using a tool such as TravisCI or Pipelines

□

Automate deployments

Configure end-to-end automation with Pipelines, TravisCI, and GitHub

□

Install platform configuration management helper modules

Identify and develop needed configuration management tools

□

Set up automated testing

Set up a base Behat and PHPunit configuration for local and continuous integration testing

Platform base architecture
--------------------------

 

Summary

Description

□

Create master website profile

Create the initial master profile

□

Configure master profile

Install modules needed by all websites on your platform

□

Follow security and performance best practices

Install and enable security-related modules (such as [Shield](http://drupal.org/project/shield), [Security Kit](https://www.drupal.org/project/seckit), and [Fast 404](https://www.drupal.org/project/fast_404)), and configure environment-specific overrides for local and non-production environments

□

Create testing modules for development and QA

Create any needed modules for environment-specific testing and quality assurance

□

Create configuration management directory

Create writable directories for importing configuration values, as described in [Configuration management directory](/site-factory/migrate#acsf-config-mgmt-directory)

□

Define demo content strategy

Determine requirements and evaluate solutions to deploy dependent content bundled with configuration, facilitate automated testing, and demonstrate platform functionality

□

Develop modules for demo content

Develop modules to provide demo content, and integrate the modules into builds and deployments

□

Define platform overrides strategy

Determine the strategy for configuration management overrides; evaluate solutions available in contributed modules and custom development, and evaluate the risk of technical debt

□

Configure roles and permissions in configuration management

Configure the roles and permissions to be managed by configuration management; modify features and other configuration accordingly

□

Develop platform override solutions

Create custom modules to provide default configuration that builders of individual websites may override, and configure the modules to override the default configuration of contributed modules when necessary

Platform administration
-----------------------

 

Summary

Description

□

Define Site Factory site groups

Define and create Site Factory site groups and site collections based on your website rollout strategy

□

Create new platform website

Perform the technical tasks needed to create an initial Site Factory website using the master profile

□

Deploy platform updates

Identify technical strategies and perform tasks for platform updates, such as configuring Site Factory [hooks](/site-factory/extend/hooks)

User roles, permissions, and accounts
-------------------------------------

 

Summary

Description

□

Create platform administration roles

Create platform user roles for [Platform administrator](/site-factory/manage/users/admin/platform-admin), [Site Builder](../manage/users/admin/site-builder.html), _Content Administrator_, _Content Editor_, _Anonymous User_, and _Authenticated User_

□

Create website administrator roles

Create website roles for _Site Administrator_, _Content Administrator_, _Content Editor_, _Anonymous User_, and _Authenticated User_

□

Create user accounts on the Site Factory Management Console

Define and assign roles to users in the Site Factory Management Console

□

Create platform user accounts

Create platform user accounts

□

Create Drupal website users

Create Drupal website accounts

□

Configure user profile management

Enable users to change their account passwords and email addresses

□

Test example features and content in new website

Confirm example features and content display properly in a new website

Global and base theming
-----------------------

 

Summary

Description

□

Define platform base theme

Select and implement a base theme, such as [Bootstrap](https://www.drupal.org/project/bootstrap)

□

Create custom platform sub-theme

Create a default sub-theme for the platform to extend the base theme

□

Define and configure a platform administration theme

Select, configure, and implement the theme to be used in the Drupal administration area of websites on your platform

□

Configure front-end build tools for continuous integration

Configure tools for continuous integration, such as [Yarn](https://yarnpkg.com/en/) or [Gulp](https://gulpjs.com/)

□

Define global theme regions

Determine and identify all the global theme regions implied in the wireframes

□

Define themed layout of pages

Define the essential layout for all pages on the website with minimal theming

□

Provide theme assets

Provide assets used in wireframing necessary for theme development, such as logos, images, icon fonts, color palettes, and fonts

□

Theme base HTML elements

Define the styling for base text, base headings, list types, and tables

□

Identify external libraries for base theme

Identify and implement external libraries for features in your base theme, such as [Responsive Menus](https://www.drupal.org/project/responsive_menus) or [Modernizr](https://www.drupal.org/project/modernizr)

□

Configure platform libraries

Configure platform libraries in the build and deployment process

□

Create page layout grid with 12-column layout

Develop the 12-column grid for basic page layouts to match the wireframes

□

Define a style guide

Identify tools for developing and managing a style guide, and implement a default style guide

□

Establish browser breakpoints

Identify browser breakpoints to ensure optimum display for the devices that your theming is intended to support, while remaining cost-effective to maintain

□

Identify fonts and assets for global theme

Add required fonts and assets to the style guide and default theme

□

Style major blocks

Create default and mobile styling for the major blocks, such as the main menu navigation block and menu links block

□

Style the footer and its blocks

Create default regions and theme blocks in the footer, including footer menus

□

Configure Browsersync for browser testing

Configure [Browsersync](https://browsersync.io/), including Gulp tasks and any needed modifications to your build and deployment process

Global components
-----------------

 

Summary

Description

□

Theme header contents

Theme common header contents, such as the main menu, logo, and contact information

□

Theme form elements

Theme common form elements, such as buttons, text areas, and check boxes

Editorial and content workflows
-------------------------------

 

Summary

Description

□

Develop content moderation workflows

Develop content moderation workflows, including the ability to save drafts and send content for approval before publication

Social media
------------

 

Summary

Description

□

Create social media integrations

Identify social media platforms to integrate with and select the appropriate icons for display

Forms
-----

 

Summary

Description

□

Install dependencies for forms

Install and configure modules, such as [Webform](http://drupal.org/project/webform)

Security
--------

 

Summary

Description

□

Verify the security of anonymous user data

Ensure there is no collection of anonymous user or session information

□

Implement and enforce SSL

Enforce SSL both on Site Factory and all external services that integrate with it

Performance
-----------

 

Summary

Description

□

Identify CDN strategy

Determine your content delivery network (CDN) strategy, and migrate assets to it

□

Configure Varnish® management

Configure cache tags and reactive purging of Varnish to improve the display of recent content while preserving website performance

□

Enforce CSS and JavaScript best practices

Ensure that CSS files are aggregated and JavaScript files are minified

□

Enforce Drupal caching best practices

Configure Drupal’s core caching capabilities

□

Configure Memcache

Determine if Memcache is appropriate for your platform, and configure cache bins if so

□

Implement performance and scalability improvements

Perform page load and performance benchmarking, and implement needed improvements

□

Test traffic using a load test environment

Use load test environments to create an isolated deployment of the production environment infrastructure.

Next steps
----------

After reviewing this checklist, see [Executing a migration into Site Factory](/site-factory/migrate/execute).