On 25.09.23 12:56, Nazir Bilal Yavuz wrote:
+  # Only run if a specific OS is not requested and if there are changes in docs
+  # or in the CI files.
+  skip: >
+    $CIRRUS_CHANGE_MESSAGE =~ '.*\nci-os-only:.*' ||
+    !changesInclude('doc/**',
+                    '.cirrus.yml',
+                    '.cirrus.tasks.yml',
+                    'src/backend/catalog/sql_feature_packages.txt',
+                    'src/backend/catalog/sql_features.txt',
+                    'src/backend/utils/errcodes.txt',
+                    'src/backend/utils/activity/wait_event_names.txt',
+                    'src/backend/utils/activity/generate-wait_event_types.pl',
+                    'src/include/parser/kwlist.h')

This is kind of annoying. Now we need to maintain yet another list of these dependencies and keep it in sync with the build systems.

I think meson can produce a dependency tree from a build. Maybe we could use that somehow and have Cirrus cache it between runs?

Also note that there are also dependencies in the other direction. For example, the psql help is compiled from XML DocBook sources. So your other patch would also need to include similar changesInclude() clauses.




Reply via email to