ci: Use VMs for SanityCheck and CompilerWarnings
authorAndres Freund <andres@anarazel.de>
Wed, 23 Aug 2023 19:29:50 +0000 (12:29 -0700)
committerAndres Freund <andres@anarazel.de>
Wed, 23 Aug 2023 19:29:50 +0000 (12:29 -0700)
The main reason for this change is to reduce different ways of executing
tasks, making it easier to use custom compute resources for cfbot. A secondary
benefit is that the tasks seem slightly faster this way, apparently the
increased startup overhead is outweighed by reduced runtime overhead.

Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
Discussion: https://postgr.es/m/20230808021541.7lbzdefvma7qmn3w@awork3.anarazel.de
Backpatch: 15-, where CI support was added

.cirrus.yml

index 0fa3bc61d8a9adc174ae34a51a38d401095baf1d..d350db7f41ec029ea34293e05ca39b4a881b0cd0 100644 (file)
@@ -110,15 +110,14 @@ task:
     CPUS: 4
     BUILD_JOBS: 8
     TEST_JOBS: 8
+    IMAGE_FAMILY: pg-ci-bullseye
     CCACHE_DIR: ${CIRRUS_WORKING_DIR}/ccache_dir
     # no options enabled, should be small
     CCACHE_MAXSIZE: "150M"
 
-  # Container starts up quickly, but is slower at runtime, particularly for
-  # tests. Good for the briefly running sanity check.
-  container:
-    image: $CONTAINER_REPO/linux_debian_bullseye_ci:latest
-    cpu: $CPUS
+  # While containers would start up a bit quicker, building is a bit
+  # slower. This way we don't have to maintain a container image.
+  <<: *linux_task_template
 
   ccache_cache:
     folder: $CCACHE_DIR
@@ -691,6 +690,7 @@ task:
   env:
     CPUS: 4
     BUILD_JOBS: 4
+    IMAGE_FAMILY: pg-ci-bullseye
 
     # Use larger ccache cache, as this task compiles with multiple compilers /
     # flag combinations
@@ -700,9 +700,7 @@ task:
     LINUX_CONFIGURE_FEATURES: *LINUX_CONFIGURE_FEATURES
     LINUX_MESON_FEATURES: *LINUX_MESON_FEATURES
 
-  container:
-    image: $CONTAINER_REPO/linux_debian_bullseye_ci:latest
-    cpu: $CPUS
+  <<: *linux_task_template
 
   sysinfo_script: |
     id