You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: pass regional Flight gRPC URL; correct app-url to spice.ai/<org>/<app>
Two fixes from the latest failed deploy run.
1. SQL probe `14 UNAVAILABLE: No connection established`
The @spiceai/spice SDK was initialized without `flightUrl`, so its
gRPC client targeted the default localhost:50051. Per the Spice docs
the regional flight endpoint is
`<region>-prod-aws-flight.spiceai.io:443` (mirrors the data hostname
with `-data` swapped for `-flight`). Derive that from the resolved
app's cname / region and pass it through to `RuntimeClient` →
`SpiceClient`. Add a `flight-url` input override that accepts
`host:port` or `grpc+tls://host:port` form (scheme is stripped).
2. `app-url` was wrong
Apps live at `https://spice.ai/<org>/<app-name>`, not
`https://<app-name>.spice.ai`. New helper `buildAppUrl` constructs
the right URL using the new `org` input, falling back to the owner
part of `GITHUB_REPOSITORY` (which matches the Spice org slug for
personal orgs and connected GitHub orgs), and finally to
`https://spice.ai/apps` if neither is available.
Tests: 101 passing (up from 93). New cases cover flight URL derivation
from cname / region / explicit input / scheme stripping, and the
buildAppUrl org-precedence logic.
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,14 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
7
7
## [Unreleased]
8
8
9
+
### Added
10
+
- New `org` input. The action now constructs the `app-url` output as `https://spice.ai/<org>/<app-name>` (the canonical Spice Cloud portal URL pattern). When `org` is unset, it falls back to the owner part of `GITHUB_REPOSITORY`, which matches the Spice org slug for personal orgs and orgs created from a connected GitHub organization.
11
+
- New `flight-url` input. The action now passes a regional Apache Arrow Flight gRPC endpoint to the `@spiceai/spice` SDK so the SQL probe uses gRPC instead of falling through to localhost. When `flight-url` is unset, it's derived from the resolved app's region as `<region>-prod-aws-flight.spiceai.io:443` (mirrors the data hostname with `-data` swapped for `-flight`). A `grpc+tls://` / `grpc://` scheme prefix on the input is stripped automatically.
12
+
13
+
### Fixed
14
+
- The `app-url` output was previously `https://<app-name>.spice.ai`, which doesn't resolve. It is now `https://spice.ai/<org>/<app-name>` (e.g. `https://spice.ai/lukekim/home`).
15
+
- SQL smoke test failed with `14 UNAVAILABLE: No connection established` because the SDK initialized a gRPC client with no `flightUrl` configured for Spice Cloud. The action now derives a regional flight URL by default; the SDK uses gRPC for SQL queries with HTTP fallback as it was designed to.
16
+
9
17
### Added
10
18
- Auto-capture a `repository` tag from `GITHUB_REPOSITORY` when set, sanitized to fit the API's tag-value rule (`/` → `_`). Users can override by setting `repository:` explicitly in the `tags` input.
11
19
- New post-deploy dataset readiness check: poll `GET /v1/datasets?status=true` until every dataset reaches a terminal-ok state (`ready`, `disabled`, or `refreshing`); fail the job immediately on `error` or on timeout-while-pending — regardless of `fail-on-test-error`, which still only governs runtime-probe results. Statuses like `shuttingdown` and any unrecognized values are treated as still-pending so the loop never returns a false-positive "loaded". Configured via `dataset-ready-timeout-seconds` (default `300`, set `0` to skip). Dataset states are surfaced as a `datasets` action output and as a table in the GitHub job step summary.
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -118,7 +118,7 @@ Grant exactly the scopes for the features you use. The "All-in" row at the botto
118
118
| --- | --- |
119
119
| `app-id` | Resolved numeric app ID. |
120
120
| `app-name` | Resolved app name. |
121
-
| `app-url` | `https://<app-name>.spice.ai`. |
121
+
| `app-url` | Portal URL of the deployed app: `https://spice.ai/<org>/<app-name>`. The `<org>` slug comes from the `org` input when set, otherwise the owner part of `GITHUB_REPOSITORY`. |
122
122
| `deployment-id` | Created deployment ID. |
123
123
| `deployment-status` | Final status (`queued`, `in_progress`, `succeeded`, `failed`). |
124
124
| `deployment-created-at` | ISO 8601 timestamp the deployment was created. |
0 commit comments