digio / Terraform Google Gitlab Runner
Licence: apache-2.0
Terraform module for provisioning a GitLab CI Runner in a GCP project using the docker+machine executor.
Projects that are alternatives of or similar to Terraform Google Gitlab Runner
Terraform Aws VaultA Terraform Module for how to run Vault on AWS using Terraform and Packer
Stars: ✭ 545 (+3105.88%)
Mutual labels: hcl
Sentinel AttackTools to rapidly deploy a threat hunting capability on Azure Sentinel that leverages Sysmon and MITRE ATT&CK
Stars: ✭ 676 (+3876.47%)
Mutual labels: hcl
Terraform Aws Secure BaselineTerraform module to set up your AWS account with the secure baseline configuration based on CIS Amazon Web Services Foundations and AWS Foundational Security Best Practices.
Stars: ✭ 596 (+3405.88%)
Mutual labels: hcl
Vim Terraformbasic vim/terraform integration
Stars: ✭ 668 (+3829.41%)
Mutual labels: hcl
OkdThe self-managing, auto-upgrading, Kubernetes distribution for everyone
Stars: ✭ 729 (+4188.24%)
Mutual labels: hcl
Infrastructure As Code TalkSample code for the talk "Infrastructure-as-code: running microservices on AWS with Docker, ECS, and Terraform"
Stars: ✭ 520 (+2958.82%)
Mutual labels: hcl
Vscode TerraformA Visual Studio Code extension for Hashicorp Terraform
Stars: ✭ 672 (+3852.94%)
Mutual labels: hcl
Ecs loadbalancing demoDemo Terraform scripts to create an ECS + Load Balancer setup
Stars: ✭ 7 (-58.82%)
Mutual labels: hcl
Tectonic InstallerInstall a Kubernetes cluster the CoreOS Tectonic Way: HA, self-hosted, RBAC, etcd Operator, and more
Stars: ✭ 599 (+3423.53%)
Mutual labels: hcl
Red BaronAutomate creating resilient, disposable, secure and agile infrastructure for Red Teams.
Stars: ✭ 662 (+3794.12%)
Mutual labels: hcl
TackTerraform module for creating Kubernetes cluster running on Container Linux by CoreOS in an AWS VPC
Stars: ✭ 734 (+4217.65%)
Mutual labels: hcl
Intro To TerraformSample code for the blog post series "A Comprehensive Guide to Terraform."
Stars: ✭ 550 (+3135.29%)
Mutual labels: hcl
BedrockAutomation for Production Kubernetes Clusters with a GitOps Workflow
Stars: ✭ 528 (+3005.88%)
Mutual labels: hcl
PeladonerdRepo con los archivos que uso para mi videos en youtube
Stars: ✭ 716 (+4111.76%)
Mutual labels: hcl
KallewheelA custom color wheel extension for Adobe Photoshop
Stars: ✭ 16 (-5.88%)
Mutual labels: hcl
GCP GitLab Runner
A Terraform module for configuring a GCP-based GitLab CI Runner.
This runner is configured to use the docker+machine executor which allows the infrastructure to be scaled up and down as demand requires. The minimum cost (during zero activity) is the cost of an f1-micro instance.
The long-running runner instance runs under a gitlab-ci-runner
service account. This account will be granted all required permissions to spawn worker instances on demand.
The worker instances run under a gitlab-ci-worker
service account. This account will need to be granted any privileges required to perform build and deploy activities. For example, the storage.admin
role can be granted to the worker account as follows:
Usage
To use this module you can create a main.tf file similar to the following example. Note that you
will need to modify the roles assigned to the CI worker service account based on your specific
project needs.
# Configure GCP provider
provider "google" {
version = "~> 2.13"
project = var.gcp_project
region = var.gcp_region
}
# Install the GitLab CI Runner infrastructure
module "ci" {
source = "digio/gitlab-runner/google"
version = "0.0.11"
gcp_project = var.gcp_project
gcp_zone = var.gcp_zone
gitlab_url = var.gitlab_url
ci_token = var.ci_token
}
# Grant the storage.admin role to the CI workers. Add other roles as required.
resource "google_project_iam_member" "worker_storage_admin" {
role = "roles/storage.admin"
member = "serviceAccount:${module.ci.ci_worker_service_account.email}"
}
Then perform the following commands:
-
terraform init
to get the plugins
-
terraform plan
to see the infrastructure plan
-
terraform apply
to apply the infrastructure build
-
terraform destroy
to destroy the built infrastructure
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at
[email protected].