Switch to a single matrix builder
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 3cb6cbd..a95a9fb 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -10,24 +10,16 @@
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v3.0.2
-      - run: |
-          echo "Releases: $(./ci/build-release-matrix)"
-          echo "Projects: $(./ci/build-project-matrix)"
       - id: set-matrix
-        run: |
-          echo "::set-output name=release::$(./ci/build-release-matrix)"
-          echo "::set-output name=project::$(./ci/build-project-matrix)"
+        run: echo "::set-output name=matrix::$(./ci/build-matrix)"
     outputs:
-      release_matrix: ${{ steps.set-matrix.outputs.release }}
-      project_matrix: ${{ steps.set-matrix.outputs.project }}
+      matrix: ${{ steps.set-matrix.outputs.matrix }}
 
   build-openstack-images:
     runs-on: ubuntu-latest
     strategy:
       fail-fast: false
-      matrix:
-        release: ${{ fromJson(needs.build-matrix.outputs.release_matrix) }}
-        project: ${{ fromJson(needs.build-matrix.outputs.project_matrix) }}
+      matrix: ${{ fromJSON(needs.build-matrix.outputs.matrix) }}
     steps:
       - uses: actions/checkout@v3
       - uses: docker/setup-qemu-action@v2
diff --git a/ci/build-matrix b/ci/build-matrix
new file mode 100755
index 0000000..dac838d
--- /dev/null
+++ b/ci/build-matrix
@@ -0,0 +1,19 @@
+#!/usr/bin/env python3
+
+import glob
+import sys
+import json
+
+releases = sorted([r.split("/")[-1] for r in glob.glob("images/openstack/releases/*")])
+projects = sorted([r.split("/")[-1] for r in glob.glob("images/openstack/projects/*")])
+
+matrix = {
+    "releases": releases,
+    "projects": projects,
+}
+
+json.dump(
+    matrix,
+    sys.stdout,
+    separators=(",", ":"),
+)
diff --git a/ci/build-project-matrix b/ci/build-project-matrix
deleted file mode 100755
index 29a7e8d..0000000
--- a/ci/build-project-matrix
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env python3
-
-import glob
-import sys
-import json
-
-
-json.dump(
-    sorted([r.split("/")[-1] for r in glob.glob("images/openstack/projects/*")]),
-    sys.stdout,
-    separators=(",", ":"),
-)
diff --git a/ci/build-release-matrix b/ci/build-release-matrix
deleted file mode 100755
index 25e689d..0000000
--- a/ci/build-release-matrix
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env python3
-
-import glob
-import sys
-import json
-
-
-json.dump([
-    r.split('/')[-1] for r in glob.glob('images/openstack/releases/*')
-], sys.stdout, separators=(',', ':'))