Merge branch 'fast-dev'
This commit is contained in:
@@ -32,8 +32,8 @@ module "project" {
|
||||
"cloudbuild.googleapis.com",
|
||||
"cloudfunctions.googleapis.com",
|
||||
"cloudscheduler.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"compute.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"pubsub.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"storage.googleapis.com"
|
||||
|
||||
@@ -20,7 +20,7 @@ require (
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.7.1 // indirect
|
||||
go.opencensus.io v0.24.0 // indirect
|
||||
golang.org/x/net v0.36.0 // indirect
|
||||
golang.org/x/net v0.38.0 // indirect
|
||||
golang.org/x/oauth2 v0.7.0 // indirect
|
||||
golang.org/x/sync v0.11.0 // indirect
|
||||
golang.org/x/sys v0.30.0 // indirect
|
||||
|
||||
@@ -29,8 +29,8 @@ module "host-project" {
|
||||
"compute.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"servicecontrol.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"vmmigration.googleapis.com",
|
||||
]
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
|
||||
@@ -28,8 +28,8 @@ module "host-project" {
|
||||
"compute.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"servicecontrol.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"vmmigration.googleapis.com",
|
||||
]
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
|
||||
@@ -29,8 +29,8 @@ module "landing-project" {
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"networkconnectivity.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"servicecontrol.googleapis.com",
|
||||
"servicemanagement.googleapis.com",
|
||||
"vmmigration.googleapis.com"
|
||||
]
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
|
||||
@@ -97,5 +97,5 @@ module "test" {
|
||||
prefix = "prefix"
|
||||
}
|
||||
|
||||
# tftest modules=9 resources=71
|
||||
# tftest modules=9 resources=74
|
||||
```
|
||||
|
||||
@@ -39,15 +39,16 @@ module "project" {
|
||||
services = [
|
||||
"aiplatform.googleapis.com",
|
||||
"bigquery.googleapis.com",
|
||||
"bigquerystorage.googleapis.com",
|
||||
"bigqueryreservation.googleapis.com",
|
||||
"bigquerystorage.googleapis.com",
|
||||
"compute.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"ml.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"notebooks.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com"
|
||||
]
|
||||
shared_vpc_service_config = local.shared_vpc_project == null ? null : {
|
||||
attach = true
|
||||
|
||||
@@ -67,10 +67,11 @@ module "land-project" {
|
||||
"cloudresourcemanager.googleapis.com",
|
||||
"datalineage.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"serviceusage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
]
|
||||
service_encryption_key_ids = {
|
||||
"bigquery.googleapis.com" = compact([var.service_encryption_keys.bq])
|
||||
|
||||
@@ -119,11 +119,12 @@ module "processing-project" {
|
||||
"datalineage.googleapis.com",
|
||||
"dataproc.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"serviceusage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com"
|
||||
]
|
||||
service_encryption_key_ids = {
|
||||
"composer.googleapis.com" = compact([var.service_encryption_keys.composer])
|
||||
|
||||
@@ -24,11 +24,12 @@ locals {
|
||||
"compute.googleapis.com",
|
||||
"datalineage.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"serviceusage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com"
|
||||
]
|
||||
iam_cur = {
|
||||
"roles/bigquery.dataOwner" = [
|
||||
|
||||
@@ -79,8 +79,9 @@ module "common-project" {
|
||||
"datacatalog.googleapis.com",
|
||||
"dlp.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"serviceusage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -229,7 +229,7 @@ module "data-platform" {
|
||||
prefix = "myprefix"
|
||||
}
|
||||
|
||||
# tftest modules=23 resources=158
|
||||
# tftest modules=23 resources=170
|
||||
```
|
||||
|
||||
## Customizations
|
||||
|
||||
@@ -84,5 +84,5 @@ module "test" {
|
||||
parent = "folders/467898377"
|
||||
}
|
||||
}
|
||||
# tftest modules=8 resources=70
|
||||
# tftest modules=8 resources=73
|
||||
```
|
||||
|
||||
@@ -61,19 +61,20 @@ module "project" {
|
||||
services = [
|
||||
"aiplatform.googleapis.com",
|
||||
"bigquery.googleapis.com",
|
||||
"bigquerystorage.googleapis.com",
|
||||
"bigqueryreservation.googleapis.com",
|
||||
"bigquerystorage.googleapis.com",
|
||||
"composer.googleapis.com",
|
||||
"compute.googleapis.com",
|
||||
"dialogflow.googleapis.com",
|
||||
"dataflow.googleapis.com",
|
||||
"dialogflow.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"ml.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"notebooks.googleapis.com",
|
||||
"orgpolicy.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com"
|
||||
]
|
||||
|
||||
shared_vpc_service_config = local.shared_vpc_project == null ? null : {
|
||||
|
||||
@@ -271,20 +271,20 @@ module "project" {
|
||||
"bigquery.googleapis.com",
|
||||
"bigquerystorage.googleapis.com",
|
||||
"cloudbuild.googleapis.com",
|
||||
"containerfilesystem.googleapis.com",
|
||||
"compute.googleapis.com",
|
||||
"containerfilesystem.googleapis.com",
|
||||
"datacatalog.googleapis.com",
|
||||
"dataflow.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"ml.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"notebooks.googleapis.com",
|
||||
"secretmanager.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"serviceusage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"storage-component.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"storage-component.googleapis.com"
|
||||
]
|
||||
shared_vpc_service_config = local.shared_vpc_project == null ? null : {
|
||||
attach = true
|
||||
|
||||
@@ -36,8 +36,8 @@ module "project" {
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
services = [
|
||||
"compute.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"secretmanager.googleapis.com"
|
||||
]
|
||||
shared_vpc_service_config = !local.use_shared_vpc ? null : {
|
||||
|
||||
@@ -102,5 +102,5 @@ module "test" {
|
||||
mgmt_subnet_cidr_block = "10.0.0.0/24"
|
||||
istio_version = "1.14.1-asm.3"
|
||||
}
|
||||
# tftest modules=13 resources=74
|
||||
# tftest modules=13 resources=73
|
||||
```
|
||||
|
||||
@@ -72,12 +72,11 @@ module "fleet_project" {
|
||||
"anthos.googleapis.com",
|
||||
"cloudresourcemanager.googleapis.com",
|
||||
"container.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"gkeconnect.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"mesh.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"stackdriver.googleapis.com"
|
||||
]
|
||||
iam = {
|
||||
"roles/container.admin" = [module.mgmt_server.service_account_iam_email]
|
||||
|
||||
@@ -40,7 +40,7 @@ module "project_landing" {
|
||||
"networkmanagement.googleapis.com",
|
||||
# Logging and Monitoring
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com"
|
||||
"monitoring.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ module "project_spoke_01" {
|
||||
"networkmanagement.googleapis.com",
|
||||
# Logging and Monitoring
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com"
|
||||
"monitoring.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ There's a minor glitch that can surface running `terraform destroy`, where the s
|
||||
|---|---|:---:|:---:|:---:|
|
||||
| [billing_account_id](variables.tf#L15) | Billing account id used as default for new projects. | <code>string</code> | ✓ | |
|
||||
| [prefix](variables.tf#L69) | Prefix used for resource names. | <code>string</code> | ✓ | |
|
||||
| [root_node](variables.tf#L93) | Hierarchy node where projects will be created, 'organizations/org_id' or 'folders/folder_id'. | <code>string</code> | ✓ | |
|
||||
| [root_node](variables.tf#L94) | Hierarchy node where projects will be created, 'organizations/org_id' or 'folders/folder_id'. | <code>string</code> | ✓ | |
|
||||
| [cluster_create](variables.tf#L20) | Create GKE cluster and nodepool. | <code>bool</code> | | <code>true</code> |
|
||||
| [deletion_protection](variables.tf#L26) | Prevent Terraform from destroying data storage resources (storage buckets, GKE clusters, CloudSQL instances) in this blueprint. When this field is set in Terraform state, a terraform destroy or terraform apply that would delete data storage resources will fail. | <code>bool</code> | | <code>false</code> |
|
||||
| [ip_ranges](variables.tf#L33) | Subnet IP CIDR ranges. | <code>map(string)</code> | | <code title="{ gce = "10.0.16.0/24" gke = "10.0.32.0/24" }">{…}</code> |
|
||||
@@ -56,8 +56,8 @@ There's a minor glitch that can surface running `terraform destroy`, where the s
|
||||
| [owners_gce](variables.tf#L51) | GCE project owners, in IAM format. | <code>list(string)</code> | | <code>[]</code> |
|
||||
| [owners_gke](variables.tf#L57) | GKE project owners, in IAM format. | <code>list(string)</code> | | <code>[]</code> |
|
||||
| [owners_host](variables.tf#L63) | Host project owners, in IAM format. | <code>list(string)</code> | | <code>[]</code> |
|
||||
| [project_services](variables.tf#L78) | Service APIs enabled by default in new projects. | <code>list(string)</code> | | <code title="[ "container.googleapis.com", "stackdriver.googleapis.com", ]">[…]</code> |
|
||||
| [region](variables.tf#L87) | Region used. | <code>string</code> | | <code>"europe-west1"</code> |
|
||||
| [project_services](variables.tf#L78) | Service APIs enabled by default in new projects. | <code>list(string)</code> | | <code title="[ "container.googleapis.com", "logging.googleapis.com", "monitoring.googleapis.com", ]">[…]</code> |
|
||||
| [region](variables.tf#L88) | Region used. | <code>string</code> | | <code>"europe-west1"</code> |
|
||||
|
||||
## Outputs
|
||||
|
||||
@@ -77,5 +77,5 @@ module "test" {
|
||||
prefix = "test"
|
||||
root_node = "organizations/0123456789"
|
||||
}
|
||||
# tftest modules=11 resources=57
|
||||
# tftest modules=11 resources=66
|
||||
```
|
||||
|
||||
@@ -80,7 +80,8 @@ variable "project_services" {
|
||||
type = list(string)
|
||||
default = [
|
||||
"container.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -108,5 +108,5 @@ module "test" {
|
||||
prefix = "fast-sr0-sbox"
|
||||
}
|
||||
|
||||
# tftest modules=35 resources=150
|
||||
# tftest modules=35 resources=153
|
||||
```
|
||||
|
||||
@@ -31,6 +31,7 @@ module "project" {
|
||||
"compute.googleapis.com",
|
||||
"dns.googleapis.com",
|
||||
"networkconnectivity.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
@@ -38,10 +38,10 @@ git clone https://github.com/GoogleCloudPlatform/cloud-foundation-fabric.git
|
||||
Before you deploy the architecture, you will need at least the following
|
||||
information/configurations in place (for more precise configuration see the Variables section):
|
||||
|
||||
* The project ID
|
||||
* The VPC host project
|
||||
* VPC and subnets should already exist
|
||||
* Subnet must be configured with pods and services secondary ranges (default names for secondary ranges is "pod" and "services")
|
||||
- The project ID
|
||||
- The VPC host project
|
||||
- VPC and subnets should already exist
|
||||
- Subnet must be configured with pods and services secondary ranges (default names for secondary ranges is "pod" and "services")
|
||||
|
||||
#### Step 2: Prepare the variables
|
||||
|
||||
@@ -98,7 +98,7 @@ Then running the command `kubectl get pods` you should receive the following mes
|
||||
"No resources found in default namespace."
|
||||
```
|
||||
|
||||
In case private connection is available and DNS configuration is properly in place you should be able to reach the BindPlane OP Management console navigating the url (e.g. https://bindplane.example.com/), the following login page should show up.
|
||||
In case private connection is available and DNS configuration is properly in place you should be able to reach the BindPlane OP Management console navigating the url (e.g. <https://bindplane.example.com/>), the following login page should show up.
|
||||
|
||||

|
||||
|
||||
@@ -158,5 +158,5 @@ module "bindplane-gke" {
|
||||
region = "europe-west8"
|
||||
prefix = "tmp"
|
||||
}
|
||||
# tftest modules=10 resources=45
|
||||
# tftest modules=10 resources=48
|
||||
```
|
||||
|
||||
@@ -36,14 +36,15 @@ module "project" {
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
name = var.project_id
|
||||
services = concat([
|
||||
"compute.googleapis.com",
|
||||
"iap.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"chronicle.googleapis.com",
|
||||
"container.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"compute.googleapis.com",
|
||||
"connectgateway.googleapis.com",
|
||||
"gkeconnect.googleapis.com"
|
||||
"container.googleapis.com",
|
||||
"gkeconnect.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"iap.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
])
|
||||
iam = {
|
||||
"roles/pubsub.editor" = ["principal://iam.googleapis.com/projects/${module.project.number}/locations/global/workloadIdentityPools/${module.project.project_id}.svc.id.goog/subject/ns/bindplane/sa/bindplane"]
|
||||
|
||||
@@ -33,9 +33,9 @@ git clone https://github.com/GoogleCloudPlatform/cloud-foundation-fabric.git
|
||||
Before you deploy the architecture, you will need at least the following
|
||||
information/configurations in place (for more precise configuration see the Variables section):
|
||||
|
||||
* The project ID
|
||||
* The VPC host project
|
||||
* VPC and subnets should already exist
|
||||
- The project ID
|
||||
- The VPC host project
|
||||
- VPC and subnets should already exist
|
||||
|
||||
#### Step 2: Prepare the variables
|
||||
|
||||
@@ -147,7 +147,7 @@ module "test" {
|
||||
}
|
||||
}
|
||||
}
|
||||
# tftest modules=5 resources=34 files=credentials,config
|
||||
# tftest modules=5 resources=37 files=credentials,config
|
||||
```
|
||||
|
||||
```
|
||||
@@ -198,4 +198,4 @@ collectors:
|
||||
tcp_address: 0.0.0.0:10515
|
||||
connection_timeout_sec: 60
|
||||
tcp_buffer_size: 524288
|
||||
```
|
||||
```
|
||||
|
||||
@@ -37,13 +37,14 @@ module "project" {
|
||||
name = var.project_id
|
||||
services = concat([
|
||||
"compute.googleapis.com",
|
||||
"iap.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"chronicle.googleapis.com",
|
||||
"container.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"connectgateway.googleapis.com",
|
||||
"gkeconnect.googleapis.com"
|
||||
"container.googleapis.com",
|
||||
"gkeconnect.googleapis.com",
|
||||
"gkehub.googleapis.com",
|
||||
"iap.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
])
|
||||
}
|
||||
|
||||
|
||||
@@ -48,10 +48,11 @@ module "project" {
|
||||
services = [
|
||||
"compute.googleapis.com",
|
||||
"storage.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"dns.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"secretmanager.googleapis.com"
|
||||
"secretmanager.googleapis.com",
|
||||
]
|
||||
shared_vpc_service_config = {
|
||||
attach = true
|
||||
|
||||
@@ -55,12 +55,12 @@ managed services incorporated:
|
||||
|
||||
Benefits:
|
||||
|
||||
- Reduced Operational Overhead: Google handles infrastructure setup,
|
||||
* Reduced Operational Overhead: Google handles infrastructure setup,
|
||||
maintenance, and updates, freeing up your time and resources.
|
||||
- Enhanced Security: Managed services often benefit from Google's comprehensive
|
||||
* Enhanced Security: Managed services often benefit from Google's comprehensive
|
||||
security measures and expertise.
|
||||
- Scalability: Easily adjust resource allocation to meet evolving demands.
|
||||
- Cost Optimization: Pay for the resources you use, benefiting from Google's
|
||||
* Scalability: Easily adjust resource allocation to meet evolving demands.
|
||||
* Cost Optimization: Pay for the resources you use, benefiting from Google's
|
||||
infrastructure optimization.
|
||||
Integration: Managed services seamlessly integrate with other GCP services,
|
||||
promoting a cohesive cloud environment.
|
||||
@@ -80,25 +80,25 @@ type, the table below summarized such a configuration:
|
||||
|
||||
| Object Type | Description | Cloud Storage Bucket |
|
||||
|------------------|----------------------------------------|-----------------------------------|
|
||||
| artifacts | CI artifacts | ${prefix}-gitlab-artifacts |
|
||||
| artifacts | CI artifacts | ${prefix}-gitlab-artifacts |
|
||||
| external_diffs | Merge request diffs | ${prefix}-mr-diffs |
|
||||
| uploads | User uploads | ${prefix}-gitlab-uploads |
|
||||
| lfs | Git Large File Storage objects | ${prefix}-gitlab-lfs |
|
||||
| packages | Project packages (e.g. PyPI, Maven ..) | ${prefix}-gitlab-packages |
|
||||
| uploads | User uploads | ${prefix}-gitlab-uploads |
|
||||
| lfs | Git Large File Storage objects | ${prefix}-gitlab-lfs |
|
||||
| packages | Project packages (e.g. PyPI, Maven ..) | ${prefix}-gitlab-packages |
|
||||
| dependency_proxy | Dependency Proxy | ${prefix}-gitlab-dependency-proxy |
|
||||
| terraform_state | Terraform state files | ${prefix}-gitlab-terraform-state |
|
||||
| pages | Pages | ${prefix}-gitlab-pages |
|
||||
| pages | Pages | ${prefix}-gitlab-pages |
|
||||
|
||||
For more information on Gitlab object storage and Google Cloud Storage
|
||||
integration please refer to the official Gitlab documentation available at the
|
||||
following [link](https://docs.gitlab.com/ee/administration/object_storage.html).
|
||||
|
||||
- [PostgreSQL service](https://docs.gitlab.com/ee/administration/postgresql/external.html)
|
||||
* [PostgreSQL service](https://docs.gitlab.com/ee/administration/postgresql/external.html)
|
||||
|
||||
Updated postgres configuration to match documentation, created required database
|
||||
in postgres instance.
|
||||
|
||||
- [Redis](https://docs.gitlab.com/ee/administration/redis/replication_and_failover_external.html)
|
||||
* [Redis](https://docs.gitlab.com/ee/administration/redis/replication_and_failover_external.html)
|
||||
|
||||
## Identity
|
||||
|
||||
@@ -116,7 +116,7 @@ SP). This allows GitLab to consume assertions from a SAML identity provider (
|
||||
IdP), such as Cloud Identity, to authenticate users. Please find instructions
|
||||
below for integration with:
|
||||
|
||||
- [Google Workspace](#google-workspace-setup)
|
||||
* [Google Workspace](#google-workspace-setup)
|
||||
|
||||
#### Google Workspace Setup
|
||||
|
||||
@@ -131,11 +131,11 @@ information in the service provider configuration:
|
||||
|
||||
| Configuration | Typical Value | Cloud Storage Bucket |
|
||||
|-------------------|--------------------------------------------------|---------------------------------------------------------------------------------------------|
|
||||
| Name of SAML App | Gitlab | Name of the app |
|
||||
| Name of SAML App | Gitlab | Name of the app |
|
||||
| ACS URL | https://<GITLAB_DOMAIN>/users/auth/saml/callback | Assertion Consumer Service URL. |
|
||||
| GITLAB_DOMAIN | gitlab.example.com | Your GitLab instance domain. |
|
||||
| Entity ID | https://gitlab.example.com | A value unique to your SAML application. Set it to the issuer in your GitLab configuration. |
|
||||
| Name ID | EMAIL | Required value. Also known as name_identifier_format. |
|
||||
| GITLAB_DOMAIN | gitlab.example.com | Your GitLab instance domain. |
|
||||
| Entity ID | <https://gitlab.example.com> | A value unique to your SAML application. Set it to the issuer in your GitLab configuration. |
|
||||
| Name ID | EMAIL | Required value. Also known as name_identifier_format. |
|
||||
|
||||
Then setup the following SAML attribute mappings:
|
||||
|
||||
@@ -155,14 +155,14 @@ information:
|
||||
|
||||
### Others Identity Integration
|
||||
|
||||
- [OpenID Connect OmniAuth](https://docs.gitlab.com/ee/administration/auth/oidc.html#configure-google)
|
||||
- [Google Secure LDAP](https://docs.gitlab.com/ee/administration/auth/ldap/google_secure_ldap.html)
|
||||
* [OpenID Connect OmniAuth](https://docs.gitlab.com/ee/administration/auth/oidc.html#configure-google)
|
||||
* [Google Secure LDAP](https://docs.gitlab.com/ee/administration/auth/ldap/google_secure_ldap.html)
|
||||
|
||||
## Email
|
||||
|
||||
### Gmail / Workspace
|
||||
|
||||
- [ ] [documentation](https://docs.gitlab.com/ee/administration/incoming_email.html#gmail)
|
||||
* [ ] [documentation](https://docs.gitlab.com/ee/administration/incoming_email.html#gmail)
|
||||
|
||||
### Sendgrid integration
|
||||
|
||||
@@ -229,11 +229,11 @@ following [link](https://docs.gitlab.com/omnibus/settings/ssl/#configure-https-m
|
||||
|
||||
## Networking and scalability
|
||||
|
||||
- [Load balancer](https://docs.gitlab.com/ee/administration/load_balancer.html)
|
||||
* [Load balancer](https://docs.gitlab.com/ee/administration/load_balancer.html)
|
||||
|
||||
## HA
|
||||
|
||||
- [High Availability](http://ubimol.it/12.0/ee/administration/high_availability/README.html)
|
||||
* [High Availability](http://ubimol.it/12.0/ee/administration/high_availability/README.html)
|
||||
|
||||
### Deployment
|
||||
|
||||
@@ -256,10 +256,10 @@ information (for more precise configuration see the Variables section):
|
||||
* The project ID
|
||||
|
||||
The VPC host project, VPC and subnets should already exist and the following networking requirements are satisfied:
|
||||
- configured PSA for Cloud SQL on the VPC
|
||||
- subnets configured with PGA and Cloud NAT for internet access
|
||||
- Inbound firewall rule for IAP on port 22
|
||||
- Inbound firewall rule for TCP ports 80, 443, 2222 from proxy subnet CIDR (gitlab)
|
||||
* configured PSA for Cloud SQL on the VPC
|
||||
* subnets configured with PGA and Cloud NAT for internet access
|
||||
* Inbound firewall rule for IAP on port 22
|
||||
* Inbound firewall rule for TCP ports 80, 443, 2222 from proxy subnet CIDR (gitlab)
|
||||
|
||||
#### Step 2: Prepare the variables
|
||||
|
||||
@@ -295,7 +295,7 @@ A gcloud command like the following should be available
|
||||
gcloud compute ssh squid-vm --project ${project} --zone europe-west8-b -- -L 3128:127.0.0.1:3128 -N -q -f
|
||||
```
|
||||
|
||||
Set as system proxy ip 127.0.0.1 and port 3128 and connect to Gitlab hostname https://gitlab.gcp.example.com.
|
||||
Set as system proxy ip 127.0.0.1 and port 3128 and connect to Gitlab hostname <https://gitlab.gcp.example.com>.
|
||||
Use default admin password available in /run/gitlab/config/initial_root_password or reset admin password via the following command on the Docker container:
|
||||
|
||||
```bash
|
||||
@@ -304,9 +304,9 @@ gitlab-rake “gitlab:password:reset”
|
||||
|
||||
## Reference and useful links
|
||||
|
||||
- [Reference architecture up to 1k users](https://docs.gitlab.com/ee/administration/reference_architectures/1k_users.html)
|
||||
- [`/etc/gitlab/gitlab.rb` template](https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-config-template/gitlab.rb.template)
|
||||
- [`/etc/gitlab/gitlab.rb` default options](https://docs.gitlab.com/ee/administration/package_information/defaults.html)
|
||||
* [Reference architecture up to 1k users](https://docs.gitlab.com/ee/administration/reference_architectures/1k_users.html)
|
||||
* [`/etc/gitlab/gitlab.rb` template](https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/files/gitlab-config-template/gitlab.rb.template)
|
||||
* [`/etc/gitlab/gitlab.rb` default options](https://docs.gitlab.com/ee/administration/package_information/defaults.html)
|
||||
|
||||
<!-- TFDOC OPTS files:1 show_extra:1 -->
|
||||
<!-- BEGIN TFDOC -->
|
||||
@@ -385,5 +385,5 @@ module "test" {
|
||||
project_id = "my-project"
|
||||
region = "europe-west8"
|
||||
}
|
||||
# tftest modules=15 resources=60
|
||||
# tftest modules=15 resources=63
|
||||
```
|
||||
|
||||
@@ -23,13 +23,14 @@ module "project" {
|
||||
project_reuse = var.project_create != null ? null : {}
|
||||
services = [
|
||||
"compute.googleapis.com",
|
||||
"memcache.googleapis.com",
|
||||
"redis.googleapis.com",
|
||||
"sqladmin.googleapis.com",
|
||||
"sql-component.googleapis.com",
|
||||
"stackdriver.googleapis.com",
|
||||
"dns.googleapis.com",
|
||||
"iam.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"memcache.googleapis.com",
|
||||
"redis.googleapis.com",
|
||||
"sql-component.googleapis.com",
|
||||
"sqladmin.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
]
|
||||
shared_vpc_service_config = {
|
||||
attach = true
|
||||
|
||||
@@ -62,9 +62,9 @@ module "project" {
|
||||
"monitoring.googleapis.com",
|
||||
"run.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"sqladmin.googleapis.com",
|
||||
"sql-component.googleapis.com",
|
||||
"vpcaccess.googleapis.com"
|
||||
"sqladmin.googleapis.com",
|
||||
"vpcaccess.googleapis.com",
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -63,10 +63,10 @@ module "project" {
|
||||
"run.googleapis.com",
|
||||
"logging.googleapis.com",
|
||||
"monitoring.googleapis.com",
|
||||
"sqladmin.googleapis.com",
|
||||
"servicenetworking.googleapis.com",
|
||||
"sql-component.googleapis.com",
|
||||
"sqladmin.googleapis.com",
|
||||
"vpcaccess.googleapis.com",
|
||||
"servicenetworking.googleapis.com"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user