|
| 1 | +# cloud-compose |
| 2 | + |
| 3 | +Deploy a docker compose project to a Google Cloud Compute Instance. |
| 4 | + |
| 5 | + |
| 6 | +<!-- BEGIN_TF_DOCS --> |
| 7 | +## Requirements |
| 8 | + |
| 9 | +| Name | Version | |
| 10 | +|------|---------| |
| 11 | +| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.2.4 | |
| 12 | +| <a name="requirement_google"></a> [google](#requirement\_google) | ~> 7.0 | |
| 13 | + |
| 14 | +## Providers |
| 15 | + |
| 16 | +| Name | Version | |
| 17 | +|------|---------| |
| 18 | +| <a name="provider_cloudinit"></a> [cloudinit](#provider\_cloudinit) | 2.3.7 | |
| 19 | +| <a name="provider_google"></a> [google](#provider\_google) | 7.12.0 | |
| 20 | + |
| 21 | +## Modules |
| 22 | + |
| 23 | +| Name | Source | Version | |
| 24 | +|------|--------|---------| |
| 25 | +| <a name="module_ppb"></a> [ppb](#module\_ppb) | git::https://github.com/libops/terraform-cloudrun-v2 | 0.4.0 | |
| 26 | + |
| 27 | +## Resources |
| 28 | + |
| 29 | +| Name | Type | |
| 30 | +|------|------| |
| 31 | +| [google_artifact_registry_repository_iam_member.private-policy-cloud-compose](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/artifact_registry_repository_iam_member) | resource | |
| 32 | +| [google_compute_disk.boot](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_disk) | resource | |
| 33 | +| [google_compute_disk.data](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_disk) | resource | |
| 34 | +| [google_compute_instance.cloud-compose](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance) | resource | |
| 35 | +| [google_project_iam_member.gce-start](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/project_iam_member) | resource | |
| 36 | +| [google_project_iam_member.gce-suspend](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/project_iam_member) | resource | |
| 37 | +| [google_project_iam_member.log](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/project_iam_member) | resource | |
| 38 | +| [google_project_iam_member.stackdriver](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/project_iam_member) | resource | |
| 39 | +| [google_service_account.cloud-compose](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account) | resource | |
| 40 | +| [google_service_account.ppb](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account) | resource | |
| 41 | +| [google_service_account_iam_member.gsa-user](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account_iam_member) | resource | |
| 42 | +| [google_service_account_iam_member.token-creator](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account_iam_member) | resource | |
| 43 | +| [cloudinit_config.ci](https://registry.terraform.io/providers/hashicorp/cloudinit/latest/docs/data-sources/config) | data source | |
| 44 | +| [google_project_iam_custom_role.gce-start](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/project_iam_custom_role) | data source | |
| 45 | +| [google_project_iam_custom_role.gce-suspend](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/project_iam_custom_role) | data source | |
| 46 | + |
| 47 | +## Inputs |
| 48 | + |
| 49 | +| Name | Description | Type | Default | Required | |
| 50 | +|------|-------------|------|---------|:--------:| |
| 51 | +| <a name="input_allowed_ips"></a> [allowed\_ips](#input\_allowed\_ips) | CIDR IP Addresses allowed to turn on this site's GCP instance | `list(string)` | `[]` | no | |
| 52 | +| <a name="input_disk_size_gb"></a> [disk\_size\_gb](#input\_disk\_size\_gb) | Data disk size in GB | `number` | `25` | no | |
| 53 | +| <a name="input_docker_compose_branch"></a> [docker\_compose\_branch](#input\_docker\_compose\_branch) | git branch to checkout for var.docker\_compose\_repo | `string` | `"main"` | no | |
| 54 | +| <a name="input_docker_compose_down"></a> [docker\_compose\_down](#input\_docker\_compose\_down) | Command to stop the docker compose project | `string` | `"docker compose down"` | no | |
| 55 | +| <a name="input_docker_compose_init"></a> [docker\_compose\_init](#input\_docker\_compose\_init) | After cloning the docker compose git repo, any initialization that needs to happen before the docker compose project can start | `string` | `""` | no | |
| 56 | +| <a name="input_docker_compose_repo"></a> [docker\_compose\_repo](#input\_docker\_compose\_repo) | git repo to checkout that contains a docker compose project | `string` | n/a | yes | |
| 57 | +| <a name="input_docker_compose_up"></a> [docker\_compose\_up](#input\_docker\_compose\_up) | Command to start the docker compose project | `string` | `"docker compose up --remove-orphans"` | no | |
| 58 | +| <a name="input_machine_type"></a> [machine\_type](#input\_machine\_type) | VM machine type | `string` | `"e2-medium"` | no | |
| 59 | +| <a name="input_name"></a> [name](#input\_name) | The site name | `string` | n/a | yes | |
| 60 | +| <a name="input_os"></a> [os](#input\_os) | The host OS to install on the GCP instance | `string` | `"cos-117-18613-439-28"` | no | |
| 61 | +| <a name="input_project_id"></a> [project\_id](#input\_project\_id) | libops project ID (logical identifier, not GCP project ID) | `string` | n/a | yes | |
| 62 | +| <a name="input_project_number"></a> [project\_number](#input\_project\_number) | The GCP project to use | `string` | n/a | yes | |
| 63 | +| <a name="input_region"></a> [region](#input\_region) | GCP region for resources | `string` | `"us-central1"` | no | |
| 64 | +| <a name="input_zone"></a> [zone](#input\_zone) | GCP zone for resources | `string` | `"us-central1-f"` | no | |
| 65 | + |
| 66 | +## Outputs |
| 67 | + |
| 68 | +| Name | Description | |
| 69 | +|------|-------------| |
| 70 | +| <a name="output_gsaEmail"></a> [gsaEmail](#output\_gsaEmail) | n/a | |
| 71 | +| <a name="output_gsaId"></a> [gsaId](#output\_gsaId) | n/a | |
| 72 | +| <a name="output_instance_id"></a> [instance\_id](#output\_instance\_id) | n/a | |
| 73 | +| <a name="output_name"></a> [name](#output\_name) | n/a | |
| 74 | +| <a name="output_zone"></a> [zone](#output\_zone) | n/a | |
| 75 | +<!-- END_TF_DOCS --> |
0 commit comments