Skip to content

Commit 871d79c

Browse files
committed
Extract project services and provider configuration to calling module
1 parent d659bc0 commit 871d79c

File tree

2 files changed

+13
-32
lines changed

2 files changed

+13
-32
lines changed

modules/project_cleanup/README.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,20 @@
22

33
This module schedules a job to clean up GCP projects older than a specified length of time, that match a particular key-value pair. This job runs every 5 minutes via Google Cloud Scheduled Functions. Please see the [utility's readme](./function_source/README.md) for more information as to its operation and configuration.
44

5+
## Requirements
6+
7+
### App Engine
8+
59
Running this module requires an App Engine app in the specified project/region. More information is in the [root readme](../../README.md#app-engine).
610

11+
### Enabled Services
12+
13+
The following services must be enabled on the project housing the cleanup function prior to invoking this module:
14+
15+
- Cloud Functions (`cloudfunctions.googleapis.com`)
16+
- Cloud Scheduler (`cloudscheduler.googleapis.com`)
17+
- Cloud Resource Manager (`cloudresourcemanager.googleapis.com`)
18+
719
[^]: (autogen_docs_start)
820

921

modules/project_cleanup/main.tf

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -14,33 +14,6 @@
1414
* limitations under the License.
1515
*/
1616

17-
provider "google-beta" {
18-
version = "~> 2.1"
19-
project = "${var.project_id}"
20-
region = "${var.region}"
21-
}
22-
23-
resource "google_project_service" "cloudfunctions" {
24-
project = "${var.project_id}"
25-
service = "cloudfunctions.googleapis.com"
26-
disable_dependent_services = true
27-
disable_on_destroy = false
28-
}
29-
30-
resource "google_project_service" "cloudscheduler" {
31-
project = "${google_project_service.cloudfunctions.project}"
32-
service = "cloudscheduler.googleapis.com"
33-
disable_dependent_services = true
34-
disable_on_destroy = false
35-
}
36-
37-
resource "google_project_service" "cloudresourcemanager" {
38-
project = "${google_project_service.cloudscheduler.project}"
39-
service = "cloudresourcemanager.googleapis.com"
40-
disable_dependent_services = true
41-
disable_on_destroy = false
42-
}
43-
4417
resource "google_service_account" "project_cleaner_function" {
4518
project = "${var.project_id}"
4619
account_id = "project-cleaner-function"
@@ -54,12 +27,8 @@ resource "google_organization_iam_member" "project_owner" {
5427
}
5528

5629
module "scheduled_project_cleaner" {
57-
providers = {
58-
google = "google-beta"
59-
}
60-
6130
source = "../../"
62-
project_id = "${google_project_service.cloudresourcemanager.project}"
31+
project_id = "${var.project_id}"
6332
job_name = "project-cleaner"
6433
job_schedule = "*/5 * * * *"
6534
function_entry_point = "CleanUpProjects"

0 commit comments

Comments
 (0)