Skip to content

Commit d622ca2

Browse files
authored
chore: Update release 4.0 docs (#1072)
1 parent 7f5ce28 commit d622ca2

File tree

3 files changed

+44
-5
lines changed

3 files changed

+44
-5
lines changed

ERRATA.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
# Errata Summary
22
This is an overview of the delta between the example foundation repository and the [Google Cloud security foundations guide](https://services.google.com/fh/files/misc/google-cloud-security-foundations-guide.pdf), including code discrepancies and notes on future automation. This document will be updated as new code is merged.
33

4+
## 4.x [WIP]
5+
6+
### Code Discrepancies
7+
8+
#### Notes
9+
- The "Alerting on log-based metrics and performance metrics" described in Section "Architecture/Detective controls" will be integrated in a future release.
10+
411
## 3.x [WIP]
512

613
### Code Discrepancies

docs/GLOSSARY.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,19 @@
33
Defined terms in the documentation for Terraform Example Foundation are capitalized and have
44
specific meaning within the domain of knowledge.
55

6-
## Terraform Service Account
6+
## Terraform Service Accounts
77

8-
The email for the privileged service account created in the seed project of the step 0-bootstrap.
9-
This service account is used to run Terraform by Cloud Build and Jenkins. When using Jenkins, the service account of the Jenkins Agent uses impersonation over this Terraform Service Account.
8+
The email for the privileged service accounts created in the seed project of the step 0-bootstrap.
9+
This service accounts are used to run Terraform by Cloud Build and Jenkins. When using Jenkins, the service account of the Jenkins Agent uses impersonation over this Terraform Service Accounts. A Terraform service account is created for each one of the steps.
1010

1111
## Seed Project
1212

13-
Seed Project created in the 0-bootstrap step. It is the project where the Terraform Service Account (`terraform_service_account`) is created and hosts the GCS bucket used to store Terraform state of each environment in subsequent phases.
13+
Seed Project created in the 0-bootstrap step. It is the project where the Terraform Service Accounts (`terraform_service_account`) are created and hosts the GCS bucket used to store Terraform state of each environment in subsequent phases.
1414

1515
## Foundation CI/CD Pipeline
1616

1717
A project created in step 0-bootstrap to manage infrastructure **within the organization**.
18-
The pipeline can use either **Cloud Build** or **Jenkins** depending or your context and Terraform is executed using the seed project service account.
18+
The pipeline can use either **Cloud Build**, **Github Actions**, **GitLab pipeline**, **Terraform Cloud** or **Jenkins** depending on your context and Terraform is executed using the seed project service account.
1919
Also known as the CI/CD project.
2020
It is located under folder `bootstrap`.
2121

docs/upgrading_to_v4.0.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Upgrade Guidance
2+
Before moving forward with adopting components of v4, review the list of breaking changes below. You can find a complete list of features, bug fixes and other updates in the [Changelog](https://github.com/terraform-google-modules/terraform-example-foundation/blob/master/CHANGELOG.md).
3+
4+
**Important:** There is no in-place upgrade path from v3 to v4.
5+
6+
## Breaking Changes
7+
8+
- The BigQuery log destination was removed from the centralized logging created in step 1-org and replaced with the Log bucket destination with support for Log Analytics enabled and associated a BigQuery dataset.
9+
- Customer-managed encryption keys (CMEK) were enabled for the Terraform state buckets create in 0-bootstrap.
10+
- The configuration of Budget Alerts for the projects was changed from alarm by **spent** value to alarm by **forecast** value
11+
- `compute.disableGuestAttributesAccess` organization policy was removed
12+
- Cloud Platform Resource Hierarchy changes:
13+
- Subfolders for business units were created in 4-projects step
14+
- A new Network folder was created be used as parent by network projects:
15+
- `prj-ENV-shared-base`
16+
- `prj-ENV-shared-restricted`
17+
- `prj-c-base-net-hub`
18+
- `prj-c-restricted-net-hub`
19+
- `prj-c-dns-hub`
20+
- `prj-c-interconnect`
21+
- Network Refactoring
22+
- Network projects are now created under a new folder `network`
23+
- VPC firewall rules (`google_compute_firewall`) resources were replaced with Compute Network firewall policy (`google_compute_network_firewall_policy`) resources
24+
25+
## Integrating New Features
26+
27+
There is no direct path for upgrading from v3 to v4 as this may result in resources getting deleted or recreated.
28+
29+
In case you require to integrate some of the v4's features, we recommend to review the documentation regarding the feature you are interested in and use v4's code as a guidance for its implementation. We also recommend to review the output from `terraform plan` for any destructive operations before applying the updates.
30+
31+
**Note:** You must verify that you are using the correct version for `terraform` and `gcloud`.
32+
You can check these and other additional requirements using this [validate script](https://github.com/terraform-google-modules/terraform-example-foundation/blob/master/scripts/validate-requirements.sh).

0 commit comments

Comments
 (0)