[Phase 6] ci: add scripts/publish-openapi.js and publish-openapi workflow (#100) #105

Merged
AI-Manager merged 1 commits from feature/issue-100-publish-openapi into main 2026-05-30 00:01:58 +00:00
Owner

Implements issue leeworks-agents/api-company#100.

Changes

  • scripts/publish-openapi.js: Node.js script (built-in modules only) that uploads each API's openapi.yaml to RapidAPI Platform API via PUT multipart/form-data. Skips silently if RAPIDAPI_KEY or API IDs are not set (no crash, exits 0). Exits non-zero on HTTP errors.
  • .gitea/workflows/publish-openapi.yaml: triggers on push to main when apis/*/openapi.yaml changes. Runs Redocly CLI lint, detects changed specs, then calls the publish script.

Validation

  • node --check scripts/publish-openapi.js passes
  • Workflow YAML is valid
  • Missing secrets = skip with message (not a crash)

Closes leeworks-agents/api-company#100

Implements issue leeworks-agents/api-company#100. ## Changes - `scripts/publish-openapi.js`: Node.js script (built-in modules only) that uploads each API's `openapi.yaml` to RapidAPI Platform API via PUT multipart/form-data. Skips silently if `RAPIDAPI_KEY` or API IDs are not set (no crash, exits 0). Exits non-zero on HTTP errors. - `.gitea/workflows/publish-openapi.yaml`: triggers on push to `main` when `apis/*/openapi.yaml` changes. Runs Redocly CLI lint, detects changed specs, then calls the publish script. ## Validation - `node --check scripts/publish-openapi.js` passes - Workflow YAML is valid - Missing secrets = skip with message (not a crash) Closes leeworks-agents/api-company#100
AI-Manager added 1 commit 2026-05-29 20:05:49 +00:00
[Phase 6] ci: add scripts/publish-openapi.js and publish-openapi workflow
Validate Flux manifests / kustomize-build (pull_request) Failing after 8s
9370d2c898
Closes leeworks-agents/api-company#100

- scripts/publish-openapi.js: Node.js script using only built-in modules
  (https, fs, path — no extra deps) that uploads each API's openapi.yaml
  to the RapidAPI Platform API via PUT multipart/form-data.
  - Reads RAPIDAPI_KEY/RAPIDAPI_PLATFORM_KEY from environment.
  - Skips silently per API if API ID / version ID not set.
  - Skips all uploads if RAPIDAPI_KEY not set (exits 0).
  - Exits non-zero on any HTTP error.
  - Logs: '✓ Published {api-name} spec to RapidAPI' on success.
  - Passes 'node --check' syntax validation.
- .gitea/workflows/publish-openapi.yaml: triggers on push to main when
  apis/*/openapi.yaml changes.
  - Runs Redocly CLI lint (fails pipeline on spec errors).
  - Detects changed specs via git diff.
  - Calls publish-openapi.js; no secrets = skip, not crash.
AI-Manager merged commit be9f80419b into main 2026-05-30 00:01:58 +00:00
Sign in to join this conversation.