Technologies and requirements

This topic describes technologies, knowledge, accounts, and steps to complete when working with your Magento Commerce (Cloud) code, environments, and store(s) and site(s). If you are not experienced with a technology, we provide additional links and information to get you started.

Technologies

The following technologies are requirements for developing and deploying your store code:

  • Git
  • Composer
  • Magento 2
  • Continuous Integration
  • Architectures including Starter or Pro architecture

Here are some advanced technologies we recommend getting familiar with:

Magento Commerce (Cloud) does not support the split database performance solution at this time.

What is Git

Git is the heart of all your code in repositories. It acts as a version control system through branches from a parent. Multiple developers can work together in personal branches all merging into the same parent. You can also work on features at the same time in multiple branches.

We hope you have a good working knowledge of Git. Need some help? Don’t worry, we have you covered with some of our favorite links and information. We’ll also include a Git guide to branching and developing soon.

To get started with Git, you should have Git installed on your local.

In addition to Git's requirements for valid branch names, Magento Commerce adds two additional requirements:

  • The / character isn't allowed.
  • Branch names must be case-insensitively unique. In other words, if you have a branch named _CaSe_, you cannot create another branch named _case_.

You must use Secure Shell (SSH) and not HTTPS to connect to the Git repository. We walk you through the process of setting this up with your local.

Supported software versions

Magento Commerce (Cloud) uses:

  • Operating system: Debian GNU/Linux 8 (jessie)
  • Web server: nginx 1.8

This software is not upgradable but versions for the following software is configurable:

Elasticsearch 5.2 is only availble for 2.2.3 and higher.

For Staging and Production, you will use Fastly for CDN and caching. We recommend installing Fastly module 1.2.33 or later. For details, see Fastly in Cloud.

For detailed information on supported versions and extensions, see the following information. These files allow you to configure software versions you want to use in your implementation.

Requirements to get started

To get started as a developer in a Magento Commerce (Cloud) project, you need to set up the following:

  • Set up a local development environment. Your local workspace works best as a virtual system (VM or container) with all prerequisities installed and the project master Git branch cloned. You’ll develop in branches to add modules, extensions, 3rd party integrations, and configurations. We recommend reading over develop and deploy process for your Starter or Pro plan.
  • Get repo.magento.com credentials in your account.
  • Get a project invitiation from the Project Owner or a super user.

We walk you through everything you need to do and know.

Magento configurations

Before you test any custom code in your local Magento Commerce environment, you must do all of the following:

Development and testing

For development and testing, we recommend the following:

  • Test your site in an Integration (development) and Staging (near-production) environment as you complete modifications

    You can enable and test individual features, new extensions, and 3rd party integration on different environments prior to merging into a single environment.

  • Verify magento setup:install and magento setup:upgrade commands work during the build and deploy process and that any extensions and customizations compile correctly in Production mode

    You can set an environment variable or enter a CLI command for this specific mode.

  • Fully test your site in Staging as a merchant and customer prior to Production deployment
  • Verify the Fastly VCL is uploaded to Fastly
  • Send a ticket with all storefront domains when going live (to be added to the shared SSL (HTTPS) certificate)
  • For custom deploy hooks in Integration, open a Support ticket to have them added to the Staging and Production deployment process
  • Profile key flows and customizations using Blackfire.io

License and authentication requirements

The Account Owner creates the initial Magento Commerce (Cloud) account with a purchased subscription. This owner should invite all technical staff, consultants, and Magento partners involved in the code and production of the stores to the project. The invitation provides access to the Git code, environments, and ticketing for the project.

To work with and deploy stores, you need the following:

Your Magento Commerce account must authenticate using any of the following:

  • GitHub
  • Bitbucket
  • Google
  • Create your own Cloud account