From cae9e8fd2c257eaad0270f79b595eb70a743ab13 Mon Sep 17 00:00:00 2001
From: Andres Freund <andres@anarazel.de>
Date: Tue, 22 Aug 2023 21:45:31 -0700
Subject: [PATCH v3 06/10] ci: dontmerge: Example custom CI configuration

Uses a custom google compute account (freebsd, linux and windows) and
persistent workers (macos).

This only works in repositories that are configured for both. In addition,
cirrus-ci needs to be configured to set the REPO_CI_CONFIG_GIT_URL pointing to
the file added here.
---
 .cirrus.custom.yml | 49 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 .cirrus.custom.yml

diff --git a/.cirrus.custom.yml b/.cirrus.custom.yml
new file mode 100644
index 00000000000..42cbeecc715
--- /dev/null
+++ b/.cirrus.custom.yml
@@ -0,0 +1,49 @@
+gcp_credentials:
+  workload_identity_provider: projects/1072892761768/locations/global/workloadIdentityPools/cirrus-ci-pool/providers/cirrus-oidc
+  service_account: cirrus-ci@pg-ci-runs.iam.gserviceaccount.com
+
+
+# Defaults
+gce_instance:
+  type: t2d-standard-4
+  spot: true
+  zone: us-west1-a
+  use_ssd: true
+
+
+gce_instance_template: &gce_instance_template
+  gce_instance:
+    image_project: $IMAGE_PROJECT
+    image_family: $IMAGE_FAMILY
+    platform: $PLATFORM
+    disk: $DISK_SIZE
+    platform: $PLATFORM
+
+
+gce_linux_task_template: &linux_task_template
+  env:
+    PLATFORM: linux
+  <<: *gce_instance_template
+
+
+gce_freebsd_task_template: &freebsd_task_template
+  env:
+    PLATFORM: freebsd
+  <<: *gce_instance_template
+
+
+gce_windows_task_template: &windows_task_template
+  env:
+    PLATFORM: windows
+  <<: *gce_instance_template
+
+
+persistent_worker_macos_task_template: &macos_task_template
+  env:
+    PLATFORM: macos
+  persistent_worker:
+    isolation:
+      tart:
+        image: $IMAGE
+        user: admin
+        password: admin
-- 
2.38.0

