Skip to content

Instantly share code, notes, and snippets.

@knksmith57
Last active January 23, 2024 16:16
Show Gist options
  • Save knksmith57/ca5831382fddaee8f3cf33dbe957ee92 to your computer and use it in GitHub Desktop.
Save knksmith57/ca5831382fddaee8f3cf33dbe957ee92 to your computer and use it in GitHub Desktop.
curl -sS "https://demo.backstage.io/api/catalog/entities/by-query" \
     --request GET \
     --get \
     --data filter=kind=component \
     --data limit=10 \
| jq --raw-output '
    .items[]
    |[
       (.kind + ":" + .metadata.namespace + "/" + .metadata.name|ascii_downcase),
       .apiVersion,
       .spec.type,
       .spec.lifecycle,
       (.relations|map(select(.type == "ownedBy"))|first|.targetRef)
     ]
    |@csv'
"component:default/wayback-archive-storage","backstage.io/v1alpha1","service","production","group:default/team-a"
"component:default/artist-lookup","backstage.io/v1alpha1","service","experimental","group:default/team-a"
"component:default/backstage","backstage.io/v1alpha1","library","experimental","group:default/cncf"
"component:default/wayback-archive","backstage.io/v1alpha1","service","production","group:default/team-a"
"component:default/shuffle-api","backstage.io/v1alpha1","service","production","user:default/guest"
"component:default/wayback-search","backstage.io/v1alpha1","service","production","group:default/team-a"
"component:default/playback-order","backstage.io/v1alpha1","service","production","user:default/guest"
"component:default/podcast-api","backstage.io/v1alpha1","service","experimental","group:default/team-b"
"component:default/petstore","backstage.io/v1alpha1","service","experimental","group:default/team-c"
"component:default/queue-proxy","backstage.io/v1alpha1","website","production","group:default/team-b"
entity reference API version type lifecycle owner
component:default/wayback-archive-storage backstage.io/v1alpha1 service production group:default/team-a
component:default/artist-lookup backstage.io/v1alpha1 service experimental group:default/team-a
component:default/backstage backstage.io/v1alpha1 library experimental group:default/cncf
component:default/wayback-archive backstage.io/v1alpha1 service production group:default/team-a
component:default/shuffle-api backstage.io/v1alpha1 service production user:default/guest
component:default/wayback-search backstage.io/v1alpha1 service production group:default/team-a
component:default/playback-order backstage.io/v1alpha1 service production user:default/guest
component:default/podcast-api backstage.io/v1alpha1 service experimental group:default/team-b
component:default/petstore backstage.io/v1alpha1 service experimental group:default/team-c
component:default/queue-proxy backstage.io/v1alpha1 website production group:default/team-b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment