Process for provisioning a cloud project
This topic is part of a series of articles related to getting started with Configured Commerce Cloud.
Additional articles can be found here: Get started with Configured Commerce.
All development work is the responsibility of the Implementation Team. As a result, implementation teams need to initiate the request to provision Configured Commerce environments in the cloud for Optimizely customers. This document outlines the process, environments, and resources involved to ensure a smooth transition for implementation teams and Optimizely customers.
Setup and configure
There are multiple data points that are needed to initiate an Configured Commerce in the Cloud project. Optimizely uses Git source control and infrastructure tools to deploy Configured Commerce websites to the cloud environment.
Optimizely does not support the use of File Transfer Protocol (FTP) and blocks use of port 21 in the PAWS environment.
The customer needs to provide Optimizely with the following data points during on-boarding:
- Email addresses for deployment notifications
- Email addresses for outage notifications
- Authorized implementation teams, or Optimizely Implementation teams, for project access
- Public facing go-live, production URL**
Implementation team provides the necessary information via the project initiation form. Please work with your Onboarding agent to have them fill out this form on your behalf.
Additionally, the implementation team will authorize the GitHub account name insite-teamcity-build read-only access to the new repository for each Configured Commerce instance/project in the cloud. If the GitHub repository does not exist, a private GitHub repository will be created and the account listed above will be authorized with read-only access.
Project initiation form
An online form is used to capture the important data points needed to provision the Configured Commerce in the Cloud environment.
Work with your onboarding agent to open this ticket on your behalf.
Note
This form should not be used when requesting a PIM instance.
Environments
Optimizely will provision and maintain two hosting environments: Sandbox and Production. The Sandbox environment supports customer UAT testing scenarios, while the Production environment is the live site where commerce is conducted. The implementation team must host all development and test environments.
Configured Commerce uses a mix of hosting services. The core of the application and database are hosted in Azure for new customers. Other services, including File Storage and Search, are provided through AWS.
Prepare for production
As you look to provision your production website, please make sure that the following things are in place:
- Check if there is a 'production' branch with extensions.dll and versionInfo.yaml in the GitHub repo.
- Confirm the versionInfo.yaml for production matches sandbox.
- Determine if the email domain SPF record has exceeded 7 (Mailgun requires 3, and the limit is 10) using this tool https://dmarcian.com/spf-survey/
- If more than 7 records exist, the number of records will need to be reduced or a subdomain will need to be used for Mailgun.
Note
As a best practice, content created (i.e. new CMS pages, content added to CMS pages, etc.) in the Development environment should be used for User Acceptance Testing, not for go-live content. Additionally, Optimizely will assist in a one-time migration of content from the Sandbox environment to the Production environment prior to go-live. Once the site is live, any content modifications or new content should be created in the Production environment. To maintain PCI compliance, Optimizely cannot copy content from Production back to Sandbox; therefore, attempting to mirror Production in Sandbox is not possible. If content is created in Sandbox, it will then need to be manually copied over to Production by the customer.
Basic pipeline
Workflow Pipeline
Integrate backend systems
The Windows Integration Service (WIS) used for integrating backend systems such as ERPs is the responsibility of the implementation team in coordination with the customer. The WIS relies on a close proximity to those systems and uses push/pull requests to transfer data between backend systems and the commerce application.
Database Requests
Optimizely Implementation teams may request a copy of a Sandbox database with written permission from the customer. Direct access to the database is not available, only copies. Please submit database requests to the support portal.
All projects must be PCI compliant. The implementation team assumes all responsibility for PCI compliance on behalf of the client.
Deploy code
ITo ensure a smooth process for conducting code deployments to Optimizely Hosting environments, the ensuing guidelines should be followed:
Target Environment | Description |
---|---|
Sandbox | Implementation team pushes local git repository changes to the remote sandbox branch. Server side extensions will be loaded from Git via Team City Theme source is configured and project theme is initialized Sandbox will always contain the latest build provisioned by Optimizely Custom domains are not allowed |
Production | Base code updates/releases will be deployed via a set schedule. Insite[CC1] Software will deploy production updates via the schedule published in the Configured Commerce Cloud Communication article in the Help Center. Your team can opt-out of the scheduled upgrade and defer to another date Please provide three (3) business days advanced notice. Off-hours production deployments are available; please be sure to indicate this need in all production requests. Submit deployment requests via the Code Deployment Request Form |
Set up the local development environment
Deploy to Configured Commerce cloud
Deployment support
All prioritized requests should be submitted to and marked according to the status indicated below:
Priority | Timeline |
---|---|
Urgent – Impacting Critical Business Process | Less than 2 business hours |
High – Interruption to Business Process | Less than 4 business hours |
Normal – Interruption to Workflow | Less than 12 business hours |
Low – Non-Impact | Less than 2 business days |
Updated 10 days ago