Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ALMStatus = a.MediaType("application/vnd.status+json", func() { a.Description("The status of the current running instance") a.Attributes(func() { a.Attribute("commit", d.String, "Commit SHA this build is based on") a.Attribute("buildTime", d.String, "The time when built") a.Attribute("startTime", d.String, "The time when started") a.Attribute("error", d.String, "The error if any") a.Required("commit", "buildTime", "startTime") }) a.View("default", func() { a.Attribute("commit") a.Attribute("buildTime") a.Attribute("startTime") a.Attribute("error") }) })
ALMStatus defines the status of the current running ALM instance
var AuthToken = a.MediaType("application/vnd.authtoken+json", func() { a.TypeName("AuthToken") a.Description("JWT Token") a.Attributes(func() { a.Attribute("token", d.String, "JWT Token") a.Required("token") }) a.View("default", func() { a.Attribute("token") }) })
AuthToken represents an authentication JWT Token
var CreateTrackerAlternatePayload = a.Type("CreateTrackerAlternatePayload", func() { a.Attribute("url", d.String, "URL of the tracker", func() { a.Example("https://api.github.com/") a.MinLength(1) }) a.Attribute("type", d.String, "Type of the tracker", func() { a.Example("github") a.Pattern("^[\\p{L}]+$") a.MinLength(1) }) a.Required("url", "type") })
CreateTrackerAlternatePayload defines the structure of tracker payload for create
var CreateTrackerQueryAlternatePayload = a.Type("CreateTrackerQueryAlternatePayload", func() { a.Attribute("query", d.String, "Search query", func() { a.Example("is:open is:issue user:almighty") a.MinLength(1) }) a.Attribute("schedule", d.String, "Schedule for fetch and import", func() { a.Example("0 0/15 * * * *") a.Pattern("^[\\d]+|[\\d]+[\\/][\\d]+|\\*|\\-|\\?\\s{0,6}$") a.MinLength(1) }) a.Attribute("trackerID", d.String, "Tracker ID", func() { a.Example("1") a.MinLength(1) a.Pattern("^[\\p{N}]+$") }) a.Required("query", "schedule", "trackerID") })
CreateTrackerQueryAlternatePayload defines the structure of tracker query payload for create
var CreateWorkItemPayload = a.Type("CreateWorkItemPayload", func() { a.Attribute("type", d.String, "The type of the newly created work item", func() { a.Example("system.userstory") a.MinLength(1) a.Pattern("^[\\p{L}.]+$") }) a.Attribute("fields", a.HashOf(d.String, d.Any), "The field values, must conform to the type", func() { a.Example(map[string]interface{}{"system.creator": "user-ref", "system.state": "new", "system.title": "Example story"}) a.MinLength(1) }) a.Required("type", "fields") })
CreateWorkItemPayload defines the structure of work item payload
var CreateWorkItemTypePayload = a.Type("CreateWorkItemTypePayload", func() { a.Attribute("name", d.String, "Readable name of the type like Task, Issue, Bug, Epic etc.", func() { a.Example("Epic") a.Pattern("^[\\p{L}.]+$") a.MinLength(1) }) a.Attribute("fields", a.HashOf(d.String, fieldDefinition), "Type fields those must be followed by respective Work Items.", func() { a.Example(map[string]interface{}{ "system.administrator": map[string]interface{}{ "Type": map[string]interface{}{ "Kind": "string", }, "Required": true, }, }) a.MinLength(1) }) a.Attribute("extendedTypeName", d.String, "If newly created type extends any existing type", func() { a.Example("(optional field)Parent type name") a.MinLength(1) a.Pattern("^[\\p{L}.]+$") }) a.Required("name", "fields") })
CreateWorkItemTypePayload explains how input payload should look like
var Tracker = a.MediaType("application/vnd.tracker+json", func() { a.TypeName("Tracker") a.Description("Tracker configuration") a.Attribute("id", d.String, "unique id per tracker") a.Attribute("url", d.String, "URL of the tracker") a.Attribute("type", d.String, "Type of the tracker") a.Required("id") a.Required("url") a.Required("type") a.View("default", func() { a.Attribute("id") a.Attribute("url") a.Attribute("type") }) })
Tracker configuration
var TrackerQuery = a.MediaType("application/vnd.trackerquery+json", func() { a.TypeName("TrackerQuery") a.Description("Tracker query with schedule") a.Attribute("id", d.String, "unique id per installation") a.Attribute("query", d.String, "Search query") a.Attribute("schedule", d.String, "Schedule for fetch and import") a.Attribute("trackerID", d.String, "Tracker ID") a.Required("id") a.Required("query") a.Required("schedule") a.Required("trackerID") a.View("default", func() { a.Attribute("id") a.Attribute("query") a.Attribute("schedule") a.Attribute("trackerID") }) })
TrackerQuery represents the search query with schedule
var UpdateTrackerAlternatePayload = a.Type("UpdateTrackerAlternatePayload", func() { a.Attribute("url", d.String, "URL of the tracker", func() { a.Example("https://api.github.com/") a.MinLength(1) }) a.Attribute("type", d.String, "Type of the tracker", func() { a.Example("github") a.MinLength(1) a.Pattern("^[\\p{L}]+$") }) a.Required("url", "type") })
UpdateTrackerAlternatePayload defines the structure of tracker payload for update
var UpdateTrackerQueryAlternatePayload = a.Type("UpdateTrackerQueryAlternatePayload", func() { a.Attribute("query", d.String, "Search query", func() { a.Example("is:open is:issue user:almighty") a.MinLength(1) }) a.Attribute("schedule", d.String, "Schedule for fetch and import", func() { a.Example("0 0/15 * * * *") a.Pattern("^[\\d]+|[\\d]+[\\/][\\d]+|\\*|\\-|\\?\\s{0,6}$") a.MinLength(1) }) a.Attribute("trackerID", d.String, "Tracker ID", func() { a.Example("1") a.MinLength(1) a.Pattern("[\\p{N}]+") }) a.Required("query", "schedule", "trackerID") })
UpdateTrackerQueryAlternatePayload defines the structure of tracker query payload for update
var UpdateWorkItemPayload = a.Type("UpdateWorkItemPayload", func() { a.Attribute("type", d.String, "The type of the newly created work item", func() { a.Example("system.userstory") a.MinLength(1) a.Pattern("^[\\p{L}.]+$") }) a.Attribute("fields", a.HashOf(d.String, d.Any), "The field values, must conform to the type", func() { a.Example(map[string]interface{}{"system.creator": "user-ref", "system.state": "new", "system.title": "Example story"}) a.MinLength(1) }) a.Attribute("version", d.Integer, "Version for optimistic concurrency control", func() { a.Example(0) }) a.Required("type", "fields", "version") })
UpdateWorkItemPayload has been added because the design.WorkItem could not be used since it mandated the presence of the ID in the payload which ideally should be optional. The ID should be passed on to REST URL.
var User = a.MediaType("application/vnd.user+json", func() { a.TypeName("User") a.Description("ALM User") a.Attribute("fullName", d.String, "The users full name") a.Attribute("imageURL", d.String, "The avatar image for the user") a.View("default", func() { a.Attribute("fullName") a.Attribute("imageURL") }) })
User represents a user object (TODO: add better description)
Functions ¶
This section is empty.
Types ¶
This section is empty.