This is an automated email from the ASF dual-hosted git repository.

harishgokul01 pushed a commit to branch development
in repository https://gitbox.apache.org/repos/asf/incubator-resilientdb.git


The following commit(s) were added to refs/heads/development by this push:
     new 559eebc1 update workflow to python runners
559eebc1 is described below

commit 559eebc1a72752c33a7c8b9b5c5e03d02d53004e
Author: harish876 <[email protected]>
AuthorDate: Tue Jan 20 00:31:24 2026 +0000

    update workflow to python runners
---
 .github/workflows/deploy-ecosystem.yml | 52 ++++++++++++++++++++++++++++++----
 .secrets                               |  3 ++
 2 files changed, 49 insertions(+), 6 deletions(-)

diff --git a/.github/workflows/deploy-ecosystem.yml 
b/.github/workflows/deploy-ecosystem.yml
index 70440a35..7720e45f 100644
--- a/.github/workflows/deploy-ecosystem.yml
+++ b/.github/workflows/deploy-ecosystem.yml
@@ -52,14 +52,54 @@ jobs:
         with:
           fetch-depth: 0
 
-      - name: Install yq
-        uses: mikefarah/[email protected]
-
-      - name: Convert deployment config YAML to JSON
+      - name: Parse deployment config (YAML -> JSON) with Python
         id: config
+        shell: bash
         run: |
-          yq -o=json '.'
-          yq -o=json '.' .github/deploy-ecosystem-configs.yml > 
/tmp/deploy-config.json
+          set -euo pipefail
+
+          # Convert YAML to JSON. Prefer PyYAML if present; install locally if 
missing.
+          python3 - << 'PY' > /tmp/deploy-config.json
+          import json, sys
+          from pathlib import Path
+
+          config_path = Path(".github/deploy-ecosystem-configs.yml")
+          if not config_path.exists():
+              print(f"Config file not found: {config_path}", file=sys.stderr)
+              sys.exit(1)
+
+          try:
+              import yaml  # type: ignore
+          except Exception:
+              # If PyYAML isn't available, signal caller to install it.
+              print("__NEED_PYYAML__", file=sys.stderr)
+              sys.exit(2)
+
+          data = yaml.safe_load(config_path.read_text(encoding="utf-8"))
+          print(json.dumps(data))
+          PY
+
+          # If PyYAML was missing, install it and retry once.
+          if grep -q "__NEED_PYYAML__" /tmp/deploy-config.json 2>/dev/null; 
then
+            true
+          fi
+
+          # The above approach prints the marker to stderr and exits 2, so 
handle that:
+          if [ "${PIPESTATUS[0]:-0}" -ne 0 ]; then
+            echo "PyYAML not found; installing with pip (user install)..."
+            python3 -m pip install --user pyyaml
+            python3 - << 'PY' > /tmp/deploy-config.json
+            import json
+            from pathlib import Path
+            import yaml  # type: ignore
+
+            config_path = Path(".github/deploy-ecosystem-configs.yml")
+            data = yaml.safe_load(config_path.read_text(encoding="utf-8"))
+            print(json.dumps(data))
+            PY
+          fi
+
+          # Expose JSON as a multiline output safely
           echo "config_json<<EOF" >> "$GITHUB_OUTPUT"
           cat /tmp/deploy-config.json >> "$GITHUB_OUTPUT"
           echo "EOF" >> "$GITHUB_OUTPUT"
diff --git a/.secrets b/.secrets
new file mode 100644
index 00000000..555ebbc5
--- /dev/null
+++ b/.secrets
@@ -0,0 +1,3 @@
+VERCEL_TOKEN=XQuR5T8IS00tGUqzSD6DjdNq
+VERCEL_ORG_ID=team_Rkpr79hpkdN1SRUfFXjMlW5H
+GITHUB_TOKEN=test
\ No newline at end of file

Reply via email to