Skip to content
This repository was archived by the owner on Nov 19, 2024. It is now read-only.

Commit 317643f

Browse files
author
Lori Krell
authored
Merge pull request #1177 from magento/lk_1016_cloud-pipeline-deploy
Update config mgmt and pipeline deploy for Cloud
2 parents f195f84 + 5d661e9 commit 317643f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+671
-599
lines changed

common/images/cloud_arch-starter.png

921 Bytes
Loading
81 KB
Loading
79.7 KB
Loading
84.1 KB
Loading
Loading
-70 Bytes
Loading

common/images/cloud_routes copy.png

30.4 KB
Loading

guides/v2.0/cloud/access-acct/fastly.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ version: 2.0
1010
github_link: cloud/access-acct/fastly.md
1111
---
1212

13-
[Fastly]({{ page.baseurl}}cloud/basic-information/cloud-fastly.html) is required for {{site.data.var.<ece>}}, and is used in Staging and Production environments. It works with Varnish to provide fast caching capabilities and a {% glossarytooltip f83f1fa7-7a64-467b-b629-c2d0c25d2e7f %}Content Delivery Network{% endglossarytooltip %} (CDN) for static assets. Fastly is not available in Integration environments.
13+
[Fastly]({{ page.baseurl}}cloud/basic-information/cloud-fastly.html) is required for {{site.data.var.ece}}, and is used in Staging and Production environments. It works with Varnish to provide fast caching capabilities and a {% glossarytooltip f83f1fa7-7a64-467b-b629-c2d0c25d2e7f %}Content Delivery Network{% endglossarytooltip %} (CDN) for static assets. Fastly is not available in Integration environments.
1414

1515
This information gets you started with installing and configuring Fastly. We provide additional information for backends and Origin shields, and error/maintenance page, and VCL snippets.
1616

@@ -43,7 +43,7 @@ To create a branch:
4343
{% include cloud/cli-get-started.md %}
4444

4545
## Install Fastly in an Integration branch and deploy {#cloud-fastly-setup}
46-
You should install the Fastly module on your local, pushing the code to Integration and deploying across to your Staging and Production environments. For {{site.data.var.<ece>}} 2.2, install Fastly module 1.2.27 or later for all updated settings and full VCL snippet uploading support.
46+
You should install the Fastly module on your local, pushing the code to Integration and deploying across to your Staging and Production environments. For {{site.data.var.ece}} 2.2, install Fastly module 1.2.27 or later for all updated settings and full VCL snippet uploading support.
4747

4848
<div class="bs-callout bs-callout-warning" markdown="1">
4949
Don't configure the module in your local before building and deploying. You'll configure the module in those environments.
@@ -207,6 +207,18 @@ The Fastly module includes GeoIP handling to automatically redirect visitors or
207207

208208
Fastly also provides a series of [geolocation-related VCL features](https://docs.fastly.com/guides/vcl/geolocation-related-vcl-features){:target="_blank"} for customized geolocation coding.
209209

210+
## Configure DNS for Fastly {#fastly-dns}
211+
These steps you complete when going live.
212+
213+
We provide a Domain Validated SSL certificate with Subject Alternative Name enabled, issued by GLobalSign. The domain validation process is executed by Fastly. When you are ready to go, you will need to provide your domain names in a Support ticket to us. We will then provide a DNS TXT record to add to your apex domain to confirm ownership.
214+
215+
For details, see [Go live checklist]({{ page.baseurl}}cloud/live/go-live-checklist.html).
216+
217+
### TLS and Fastly {#fastly-tls}
218+
If you use TLS with Fastly enabled in your environment, you will also need a TXT record Fastly provides for your DNS provider. When entering your Support ticket for DNS information and going live, let us know you are using a TLS and request the TXT record. We can provide Fastly's TXT record file for your account. You can then send this record to your DNS provider.
219+
220+
For details on this TXT record, see Fastly's [DNS TXT record validation](https://docs.fastly.com/guides/securing-communications/domain-validation-for-tls-certificates#dns-text-record-verification){:target="_blank"}.
221+
210222
#### Related topics
211223

212224
* [Custom Fastly VCL snippets]({{ page.baseurl}}cloud/configure/cloud-vcl-custom-snippets.html)

guides/v2.0/cloud/basic-information/starter-architecture.md

Lines changed: 27 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -10,31 +10,15 @@ version: 2.0
1010
github_link: cloud/basic-information/starter-architecture.md
1111
---
1212

13-
All of your code is contained in the {{site.data.var.<ece>}} Starter project. The _project_ is your Magento store code, extensions, and integrations in a Master Git branch. Each project supports up to four active *environments* including `master` with an associated active Git branch in PAAS (Platform as a Service) containers. These containers are deployed inside highly restricted containers on a grid of servers.
13+
All of your code is contained in the {{site.data.var.ece}} Starter project. The _project_ is your Magento store code, extensions, and integrations in a Master Git branch. Each project supports up to 4 total environments including three active Integration *environments* and a Production environment using the `master` Git branch.
1414

15-
These environments are read-only, accepting deployed code changes from Git branches pushed from your local workspace.
15+
All environments are in PAAS (Platform as a Service) containers. These containers are deployed inside highly restricted containers on a grid of servers. These environments are read-only, accepting deployed code changes from Git branches pushed from your local workspace.
1616

17-
These four environments include Production, Staging, and two remaining. Consider each of the remaining environments for development to develop and test different branches simultaneously. You can use any development and branching methodology you like.
17+
You can use any development and branching methodology you like. We strongly recommend creating a Staging environment and branch as one of the Integration environments.
1818

19-
## How the environments work {#how-work}
20-
You have up to four full, active environments that generate in containers for your project. When we first provision your project, we create a `master` Git branch with a full environment. You automatically get a `master` branch and environment. This is your live site.
21-
22-
You have up to three active Git branches you can create from `master`. Each Git branch has an associated environment with a web server, database, and configured services. For these three remaining active environments, we recommend creating a branch from `master` called `staging`. Create your remaining two active Git branches from `staging` for development.
23-
24-
When you deactivate (or delete) a Git branch, you open a slot for an active Git branch. When activated, a new environment container generates for the code.
25-
26-
![High-level view of Starter project]({{ site.baseurl }}common/images/cloud_arch-starter.png)
27-
28-
To branch and develop your Magento store:
29-
30-
* Set up your local environment
31-
* Clone the `master` branch from the Project to your local
32-
* Branch and develop in a new Git branch on your local workspace
33-
* Push code to Git that builds and deploys to an environment for testing
34-
35-
Additional sections in this guide provide instructions and walk-throughs for setting up your [local workspace]({{page.baseurl}}cloud/before/before-workspace.html), working with Git branches, and [deploying code]({{page.baseurl}}cloud/live/stage-prod-live.html).
36-
37-
All code in these environments is read-only, requiring deploys of Git repositories. To make changes, install extensions, and make significant changes, you need to make them on your local and push code to the remote Git branch. The changes are pushed to those environments and finally Production in the `master` branch.
19+
<div class="bs-callout bs-callout-info" id="info" markdown="1">
20+
The following architecture information uses an architecture including Production, Staging, and Integration environments.
21+
</div>
3822

3923
## Production with a master branch {#cloud-arch-int}
4024
The Production environment is your live store(s) and site(s). The environment includes your `master` Git branch, a web server, database, and configured services to fully test your site.
@@ -46,30 +30,39 @@ We walk you through [deploying to Production]({{page.baseurl}}cloud/live/stage-p
4630
We highly recommend fully testing in your Staging environment and branch prior to pushing to Production.
4731

4832
## Staging branch and environment {#cloud-arch-stage}
49-
We recommend creating a branch called `staging` from `master`. Use this Staging environment and Git branch as your pre-production environment to test code, modules and extensions, payment gateways, shipping, product data, and much more. This environment includes all services used in Production and `master` including Fastly, New Relic, Blackfire, and search.
33+
We recommend creating a branch called `staging` from `master`. Use this Staging environment and Git branch as your pre-production environment to test code, modules and extensions, payment gateways, shipping, product data, and much more. This environment will receive all services to match Production including Fastly, New Relic, Blackfire, and search.
5034

5135
Additional sections in this guide provide instructions and walk-throughs for final code deployments and testing production level interactions in a safe Staging environment. For best performance and feature testing, replicate your Production database into Staging.
5236

5337
We walk you through [deploying to Staging]({{page.baseurl}}cloud/live/stage-prod-live.html) and [testing your store(s)]({{page.baseurl}}cloud/live/stage-prod-test.html) requirements and processes.
5438

5539
We highly recommend fully testing every merchant and customer interaction in Staging prior to pushing to Production.
5640

57-
## Development branches and environments {#dev}
58-
From `staging`, create branches for your development code. Add extensions, work in agile sprints, resolve issues all through these branches. When completed and tested, you can merge up to `staging`, test in Staging, then merge to `master` to go live.
41+
## Integration environment {#cloud-arch-int}
42+
Developers use the Integration environment to develop, deploy, and test the Magento application, custom code, extensions, and services. If you created a Staging environment, you have up to two active environments on a grid for two active Git branches. Each Integration environment matches the name of the branch and includes a web server, database, and configured services to fully test your site.
43+
44+
You can have an unlimited number of inactive Git branches to store code. To access, view, and test inactive branches, you must activate them. This environment does not support all services. For example, Fastly is not accessible in Integration.
5945

60-
We do not recommend branching these environments directly from `master` if you have a `staging` branch. Having a Staging branch and environment allows you to fully test and verify every code change before pushing to Production.
46+
The process for developing in Integration requires the following process:
47+
48+
* Branch and develop off of `staging`
49+
* Develop all work on your local workspace in these branches
50+
* Push code to Git to build and deploy on an Integration environment for testing
51+
* As work is completed, merge to `staging`
52+
53+
Additional sections in this guide provide instructions and walk-throughs for setting up your [local workspace]({{page.baseurl}}cloud/before/before-workspace.html), working with Git branches, and [deploying code]({{page.baseurl}}cloud/live/stage-prod-live.html).
6154

6255
## Production and Staging technology stack {#technology}
6356
The Production and Staging environments include the following technologies. You can modify and configure these technologies through the [.magento.app.yaml file]({{page.baseurl}}cloud/project/project-conf-files_magento-app.html).
6457

6558
* Fastly for http caching and CDN
6659
* Nginx web server speaking to PHP-FPM, one instance with multiple workers
6760
* Redis server
68-
* Elasticsearch for searching for {{site.data.var.<ece>}} 2.1 and later
69-
* Solr search is supported for {{site.data.var.<ece>}} 2.0
61+
* Elasticsearch for searching for {{site.data.var.ece}} 2.1 and later
62+
* Solr search is supported for {{site.data.var.ece}} 2.0
7063

7164
### Services {#cloud-arch-services}
72-
{{site.data.var.<ece>}} currently supports the following services: PHP, MySQL (MariaDB), Solr (Magento 2.0.x), Elasticsearch (Magento 2.1.x and later), Redis, and RabbitMQ.
65+
{{site.data.var.ece}} currently supports the following services: PHP, MySQL (MariaDB), Solr (Magento 2.0.x), Elasticsearch (Magento 2.1.x and later), Redis, and RabbitMQ.
7366

7467
Each service runs in its own secure container. containers are managed together in the project. Some services are built-in, such as the following:
7568

@@ -81,7 +74,7 @@ Each service runs in its own secure container. containers are managed together i
8174
You can even have multiple applications running in the same project. Building a microservice oriented architecture with Magento Commerce is as easy as managing a monolithic application.
8275

8376
### Software versions {#cloud-arch-software}
84-
{{site.data.var.<ece>}} uses:
77+
{{site.data.var.ece}} uses:
8578

8679
* Operating system: Debian GNU/Linux 8 (jessie)
8780
* Web server: {% glossarytooltip b14ef3d8-51fd-48fe-94df-ed069afb2cdc %}nginx{% endglossarytooltip %} 1.8
@@ -105,15 +98,13 @@ To branch and develop your Magento store:
10598

10699
* Set up your local environment
107100
* Clone the `master` branch from the Project to your local
108-
* Branch and develop in a new Git branch on your local workspace
101+
* Create a `staging` branch from `master`
102+
* Create branches for development from `staging`
109103
* Push code to Git that builds and deploys to an environment for testing
110104

111-
Additional sections in this guide provide instructions and walk-throughs for setting up your [local workspace]({{page.baseurl}}cloud/before/before-workspace.html), working with Git branches, and [deploying code]({{page.baseurl}}cloud/live/stage-prod-live.html).
112-
113-
We walk you through the entire process from [deployment]({{page.baseurl}}cloud/live/stage-prod-live.html) to [going live]({{page.baseurl}}cloud/live/live.html) requirements and processes.
114-
105+
Additional sections in this guide provide instructions and walk-throughs for setting up your [local workspace]({{page.baseurl}}cloud/before/before-workspace.html), working with Git branches, [deploying code]({{page.baseurl}}cloud/live/stage-prod-live.html), and [going live]({{page.baseurl}}cloud/live/live.html) .
115106

116107
#### Related topics
117108
* [Starter Develop and Deploy Workflow]({{page.baseurl}}cloud/basic-information/starter-develop-deploy-workflow.html)
118109
* [Deployment process]({{page.baseurl}}cloud/reference/discover-deploy.html)
119-
* [{{site.data.var.<ece>}} requirements]({{page.baseurl}}cloud/requirements/cloud-requirements.html)
110+
* [Technologies and requirements]({{page.baseurl}}cloud/requirements/cloud-requirements.html)

0 commit comments

Comments
 (0)