Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/flower-ball-gulp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'hive': minor
---

Show affected app deployments for breaking schema changes. When a schema check detects breaking changes, it now shows which active app deployments would be affected, including the specific operations within each deployment that use the affected schema coordinates.
14 changes: 14 additions & 0 deletions .changeset/jdpj-gvmv-utrp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
'hive': minor
---

Add `activeAppDeployments` GraphQL query to find app deployments based on usage criteria.

New filter options:
- `lastUsedBefore`: Find stale deployments that were used but not recently (OR with neverUsedAndCreatedBefore)
- `neverUsedAndCreatedBefore`: Find old deployments that have never been used (OR with lastUsedBefore)
- `name`: Filter by app deployment name (case-insensitive partial match, AND with date filters)

Also adds `createdAt` field to the `AppDeployment` type.

See [Finding Stale App Deployments](https://the-guild.dev/graphql/hive/docs/schema-registry/app-deployments#finding-stale-app-deployments) for more details.
16 changes: 16 additions & 0 deletions integration-tests/testkit/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,22 @@ async function dev(args: string[]) {
);
}

export async function appCreate(args: string[]) {
const registryAddress = await getServiceHost('server', 8082);

return await exec(
['app:create', `--registry.endpoint`, `http://${registryAddress}/graphql`, ...args].join(' '),
);
}

export async function appPublish(args: string[]) {
const registryAddress = await getServiceHost('server', 8082);

return await exec(
['app:publish', `--registry.endpoint`, `http://${registryAddress}/graphql`, ...args].join(' '),
);
}

export function createCLI(tokens: { readwrite: string; readonly: string }) {
let publishCount = 0;

Expand Down
Loading
Loading