Skip to content

feat: allow for interface types in queries to be included or excluded - #261

Open
pranav-new-relic wants to merge 1 commit into
mainfrom
include-interface-fields
Open

feat: allow for interface types in queries to be included or excluded#261
pranav-new-relic wants to merge 1 commit into
mainfrom
include-interface-fields

Conversation

@pranav-new-relic

@pranav-new-relic pranav-new-relic commented Aug 27, 2025

Copy link
Copy Markdown
Member
    queries:
      - path: [ "actor", "entityManagement" ]
        endpoints:
          - name: entity
            max_query_field_depth: 4
            exclude_fields:
              - agents
              - tools
            include_implementations:
              - EntityManagementPipelineCloudRuleEntity

    types:
      - name: EntityManagementEntity
        include_implementations:
          - EntityManagementPipelineCloudRuleEntity

To use this in the New Relic Go Client, clone the Tutone repository, compile the code locally, and copy the binary (executable) tutone (generated in the bin > darwin of the tutone repo, after the make compile is run), to the New Relic Go Client's repository, preferably just right in the repo's root directory. Once done, substitue all Tutone commands run in the Go Client, with ./tutone (instead of tutone).

Note that the above procedure will need to be followed - do not resort to changing the dependency of tutone in the New Relic Go Client's go.mod, as that would not be helpful.

@pranav-new-relic pranav-new-relic changed the title feat: allow for interface types to be included or excluded feat: allow for interface types in queries to be included or excluded Aug 27, 2025
@pranav-new-relic
pranav-new-relic force-pushed the include-interface-fields branch from b9bd11d to bf8b3bd Compare August 27, 2025 19:20
pranav-new-relic added a commit to newrelic/newrelic-client-go that referenced this pull request Jul 7, 2026
… + NerdGraph

Notebook content lives on the Blob Storage REST API; entity metadata is
served by NerdGraph's EntityManagement namespace. The Notebooks client
hides that split behind CreateNotebook / GetNotebookContent /
UpdateNotebookContent / RenameNotebook / DeleteNotebook (Blob API) and
GetNotebook / SearchNotebooks (NerdGraph). Types and the generic
entityManagementDelete mutation are generated with the modified tutone
from newrelic/tutone#261 to keep the
EntityManagement interface scoped to NotebookEntity only.

Includes unit tests (mock httptest server, 100% coverage on hand-written
code) and an integration test that drives create -> read -> search ->
update -> rename -> delete and verifies platform state after each
mutation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant