Skip to content
Merged
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
3 changes: 3 additions & 0 deletions .changes/unreleased/Feature-20250528-073538.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
kind: Feature
body: Add maturity report Overall Level to ListServices
time: 2025-05-28T07:35:38.221218-07:00
6 changes: 3 additions & 3 deletions document_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import (
func TestServiceApiDocSettingsUpdate(t *testing.T) {
// Arrange
testRequest := autopilot.NewTestRequest(
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,maturityReport{overallLevel{alias,description,id,index,name}},name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`{"docPath":"/src/swagger.json", "docSource":"PULL", "service": {"alias":"service_alias" }}`,
`{"data": {"serviceApiDocSettingsUpdate": {"service": {{ template "service_1" }}, "errors": [] }}}`,
)
Expand All @@ -30,7 +30,7 @@ func TestServiceApiDocSettingsUpdate(t *testing.T) {
func TestServiceApiDocSettingsUpdateDocSourceNull(t *testing.T) {
// Arrange
testRequest := autopilot.NewTestRequest(
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,maturityReport{overallLevel{alias,description,id,index,name}},name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`{"docPath":"/src/swagger.json", "docSource": null, "service": {"alias":"service_alias" }}`,
`{"data": { "serviceApiDocSettingsUpdate": { "service": {{ template "service_1" }}, "errors": [] }}}`,
)
Expand All @@ -48,7 +48,7 @@ func TestServiceApiDocSettingsUpdateDocSourceNull(t *testing.T) {
func TestServiceApiDocSettingsUpdateDocPathNull(t *testing.T) {
// Arrange
testRequest := autopilot.NewTestRequest(
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`mutation ServiceApiDocSettingsUpdate($docPath:String$docSource:ApiDocumentSourceEnum$service:IdentifierInput!){serviceApiDocSettingsUpdate(service: $service, apiDocumentPath: $docPath, preferredApiDocumentSource: $docSource){service{apiDocumentPath,description,framework,htmlUrl,id,aliases,language,lifecycle{alias,description,id,index,name},locked,managedAliases,maturityReport{overallLevel{alias,description,id,index,name}},name,note,owner{alias,id},parent{id,aliases},preferredApiDocument{id,htmlUrl,source{... on ApiDocIntegration{id,name,type},... on ServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},timestamps{createdAt,updatedAt}},preferredApiDocumentSource,product,repos{edges{node{id,defaultAlias},serviceRepositories{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}}},{{ template "pagination_request" }}},defaultServiceRepository{baseDirectory,displayName,id,repository{id,defaultAlias},service{id,aliases}},tags{nodes{id,key,value},{{ template "pagination_request" }}},tier{alias,description,id,index,name},timestamps{createdAt,updatedAt},tools{nodes{category,categoryAlias,displayName,environment,id,service{id,aliases},url},{{ template "pagination_request" }}}},errors{message,path}}}`,
`{"docPath":null, "docSource":"PULL", "service": {"alias":"service_alias" }}`,
`{"data": { "serviceApiDocSettingsUpdate": { "service": {{ template "service_1" }}, "errors": [] }}}`,
)
Expand Down
4 changes: 4 additions & 0 deletions maturity.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ type CategoryBreakdown struct {
Level Level
}

type MaturityReportOnlyOverallLevel struct {
OverallLevel Level
}

type MaturityReport struct {
CategoryBreakdown []CategoryBreakdown
OverallLevel Level
Expand Down
35 changes: 18 additions & 17 deletions service.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,23 +19,24 @@ type Service struct {
Framework string `json:"framework,omitempty"`
HtmlURL string `json:"htmlUrl"`
ServiceId
Language string `json:"language,omitempty"`
Lifecycle Lifecycle `json:"lifecycle,omitempty"`
Locked bool `json:"locked" graphql:"locked"`
ManagedAliases []string `json:"managedAliases,omitempty"`
Name string `json:"name,omitempty"`
Note string `json:"note,omitempty"`
Owner TeamId `json:"owner,omitempty"`
Parent *SystemId `json:"parent,omitempty" graphql:"parent"`
PreferredApiDocument *ServiceDocument `json:"preferredApiDocument,omitempty"`
PreferredApiDocumentSource *ApiDocumentSourceEnum `json:"preferredApiDocumentSource,omitempty"`
Product string `json:"product,omitempty"`
Repositories *ServiceRepositoryConnection `json:"repos,omitempty" graphql:"repos"`
Repository *ServiceRepository `graphql:"defaultServiceRepository" json:"defaultServiceRepository"`
Tags *TagConnection `json:"tags,omitempty"`
Tier Tier `json:"tier,omitempty"`
Timestamps Timestamps `json:"timestamps"`
Tools *ToolConnection `json:"tools,omitempty"`
Language string `json:"language,omitempty"`
Lifecycle Lifecycle `json:"lifecycle,omitempty"`
Locked bool `json:"locked" graphql:"locked"`
ManagedAliases []string `json:"managedAliases,omitempty"`
MaturityReport MaturityReportOnlyOverallLevel `json:"maturityReport" graphql:"maturityReport"`
Name string `json:"name,omitempty"`
Note string `json:"note,omitempty"`
Owner TeamId `json:"owner,omitempty"`
Parent *SystemId `json:"parent,omitempty" graphql:"parent"`
PreferredApiDocument *ServiceDocument `json:"preferredApiDocument,omitempty"`
PreferredApiDocumentSource *ApiDocumentSourceEnum `json:"preferredApiDocumentSource,omitempty"`
Product string `json:"product,omitempty"`
Repositories *ServiceRepositoryConnection `json:"repos,omitempty" graphql:"repos"`
Repository *ServiceRepository `graphql:"defaultServiceRepository" json:"defaultServiceRepository"`
Tags *TagConnection `json:"tags,omitempty"`
Tier Tier `json:"tier,omitempty"`
Timestamps Timestamps `json:"timestamps"`
Tools *ToolConnection `json:"tools,omitempty"`

Dependencies *ServiceDependenciesConnection `graphql:"-"`
Dependents *ServiceDependentsConnection `graphql:"-"`
Expand Down
Loading
Loading