Skip to content

GraphQL: deprecate StorageMapping.spec, add structured fragmentStores and dataPlanes fields #3395

Description

@GregorShear

StorageMapping exposes its storage definition as an untyped spec: JSON! field, so clients must hand-type the blob.

Desired API contract:

  • spec marked @deprecated (removed once the UI adopts the new fields)
  • Structured output fields for the spec's contents:
query {
    storageMappings(filter: { catalogPrefix: { startsWith: "acmeCo/" } }) {
        edges {
            node {
                catalogPrefix
                spec                    # deprecated in favor of dataPlanes and fragmentStores
                dataPlanes {
                    name
                    cloudProvider
                    region
                    isPublic
                }
                fragmentStores {
                    provider
                    prefix
                    bucket              # null for Azure stores
                    region              # null for GCS/Azure stores
                    storageAccountName  # null for S3/GCS/Custom stores
                    containerName       # null for S3/GCS/Custom stores
                }
            }
        }
    }
}

Note: check user's authz access to each dataPlane.dataPlaneName and simply omit any that the user lacks access to

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions