Documentation
¶
Index ¶
- Constants
- func IsNil(i interface{}) bool
- type CreateReleaseCommandV1
- type CreateReleaseResponseV1
- type DeploymentPromotionTarget
- type LifecycleProgression
- type LifecycleProgressionPhase
- type MissingPackageInfo
- type MissingPackages
- type PhaseDeployment
- type PhaseProgress
- type Release
- func GetReleaseInProject(client newclient.Client, spaceID string, projectID string, ...) (*Release, error)
- func GetReleasesInProjectChannel(client newclient.Client, spaceID string, projectID string, channelID string) ([]*Release, error)
- func NewRelease(channelID string, projectID string, version string) *Release
- type ReleaseChanges
- type ReleaseDeploymentTemplate
- type ReleasePackageVersionBuildInformation
- type ReleaseQuery
- type ReleaseService
- func (s *ReleaseService) Add(release *Release) (*Release, error)
- func (s *ReleaseService) Get(releasesQuery ...ReleasesQuery) (*resources.Resources[*Release], error)
- func (s *ReleaseService) GetByID(id string) (*Release, error)
- func (s *ReleaseService) GetReleases(channel *channels.Channel, releaseQuery ...*ReleaseQuery) (*resources.Resources[*Release], error)
- type ReleaseTemplateGitResource
- type ReleaseTemplatePackage
- type ReleaseUsage
- type ReleaseUsageEntry
- type ReleasesQuery
Constants ¶
const ( PhaseProgressPending = PhaseProgress("Pending") PhaseProgressCurrent = PhaseProgress("Current") PhaseProgressComplete = PhaseProgress("Complete") )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CreateReleaseCommandV1 ¶ added in v2.4.0
type CreateReleaseCommandV1 struct {
// Note: the server requires both SpaceID and SpaceIDOrName, and is capable of looking up names from the JSON
// payload.
// It'd be nice to allow SpaceIDOrName, but the current server implementation requires a SpaceID
// (not a name) in the URL route, so we must force the caller to specify an ID only.
SpaceID string `json:"spaceId"`
ProjectIDOrName string `json:"projectName"`
PackageVersion string `json:"packageVersion,omitempty"`
GitCommit string `json:"gitCommit,omitempty"`
GitRef string `json:"gitRef,omitempty"`
ReleaseVersion string `json:"releaseVersion,omitempty"`
ChannelIDOrName string `json:"channelName,omitempty"`
Packages []string `json:"packages,omitempty"`
GitResources []string `json:"gitResources,omitempty"`
ReleaseNotes string `json:"releaseNotes,omitempty"`
IgnoreIfAlreadyExists bool `json:"ignoreIfAlreadyExists"`
IgnoreChannelRules bool `json:"ignoreChannelRules"`
PackagePrerelease string `json:"packagePrerelease,omitempty"`
CustomFields map[string]string `json:"customFields,omitempty"`
}
func NewCreateReleaseCommandV1 ¶ added in v2.4.0
func NewCreateReleaseCommandV1(spaceID string, projectIDOrName string) *CreateReleaseCommandV1
func (*CreateReleaseCommandV1) MarshalJSON ¶ added in v2.4.0
func (c *CreateReleaseCommandV1) MarshalJSON() ([]byte, error)
MarshalJSON adds the redundant 'SpaceIDOrName' parameter which is required by the server
type CreateReleaseResponseV1 ¶
type CreateReleaseResponseV1 struct {
ReleaseID string `json:"ReleaseId"`
ReleaseVersion string `json:"ReleaseVersion"`
}
func CreateReleaseV1 ¶
func CreateReleaseV1(client newclient.Client, command *CreateReleaseCommandV1) (*CreateReleaseResponseV1, error)
type DeploymentPromotionTarget ¶ added in v2.85.0
type LifecycleProgression ¶ added in v2.4.0
type LifecycleProgression struct {
Phases []*LifecycleProgressionPhase `json:"Phases"`
NextDeployments []string `json:"NextDeployments"`
NextDeploymentsMinimumRequired int `json:"NextDeploymentsMinimumRequired"`
resources.Resource
}
LifecycleProgression represents the progression and deployment status for a single release
type LifecycleProgressionPhase ¶ added in v2.4.0
type LifecycleProgressionPhase struct {
ID *string `json:"Id"` // this seems to always be null in the server response
Name string `json:"Name"`
Blocked bool `json:"Blocked"`
Progress PhaseProgress `json:"Progress"`
Deployments []*PhaseDeployment `json:"Deployments"`
AutomaticDeploymentTargets []string `json:"AutomaticDeploymentTargets"`
OptionalDeploymentTargets []string `json:"OptionalDeploymentTargets"`
MinimumEnvironmentsBeforePromotion int `json:"MinimumEnvironmentsBeforePromotion"`
IsOptionalPhase bool `json:"IsOptionalPhase"`
resources.Resource
}
type MissingPackageInfo ¶ added in v2.73.0
type MissingPackageInfo struct {
ID string `json:"Id,omitempty"`
Version string `json:"Version,omitempty"`
}
func GetMissingPackages ¶ added in v2.73.0
func GetMissingPackages(client newclient.Client, release *Release) ([]MissingPackageInfo, error)
GetMissingPackages returns missing built-in feed packages associated with the release
type MissingPackages ¶ added in v2.73.0
type MissingPackages struct {
Packages []MissingPackageInfo `json:"Packages"`
}
type PhaseDeployment ¶ added in v2.4.0
PhaseDeployment represents a deployment as part of a progression phase
type PhaseProgress ¶ added in v2.4.0
type PhaseProgress string
type Release ¶
type Release struct {
Assembled time.Time `json:"Assembled,omitempty"`
BuildInformation []*ReleasePackageVersionBuildInformation `json:"BuildInformation,omitempty"`
ChannelID string `json:"ChannelId,omitempty"`
IgnoreChannelRules bool `json:"IgnoreChannelRules"`
LibraryVariableSetSnapshotIDs []string `json:"LibraryVariableSetSnapshotIds,omitempty"`
ProjectDeploymentProcessSnapshotID string `json:"ProjectDeploymentProcessSnapshotId,omitempty"`
ProjectID string `json:"ProjectId,omitempty"`
ProjectVariableSetSnapshotID string `json:"ProjectVariableSetSnapshotId,omitempty"`
ReleaseNotes string `json:"ReleaseNotes,omitempty"`
SelectedPackages []*packages.SelectedPackage `json:"SelectedPackages,omitempty"`
SelectedGitResources []*gitdependencies.SelectedGitResources `json:"SelectedGitResources,omitempty"`
SpaceID string `json:"SpaceId,omitempty"`
Version string `json:"Version"`
CustomFields map[string]string `json:"CustomFields,omitempty"`
resources.Resource
}
func GetReleaseInProject ¶ added in v2.4.0
func GetReleaseInProject(client newclient.Client, spaceID string, projectID string, releaseVersion string) (*Release, error)
GetReleaseInProject looks up a single release in the given project
type ReleaseChanges ¶
type ReleaseChanges struct {
BuildInformation []*ReleasePackageVersionBuildInformation `json:"BuildInformation"`
Commits []*issuetrackers.CommitDetails `json:"Commits"`
ReleaseNotes string `json:"ReleaseNotes,omitempty"`
Version string `json:"Version,omitempty"`
WorkItems []*core.WorkItemLink `json:"WorkItems"`
}
type ReleaseDeploymentTemplate ¶ added in v2.85.0
type ReleaseDeploymentTemplate struct {
IsDeploymentProcessModified bool `json:"IsDeploymentProcessModified"`
DeploymentNotes string `json:"DeploymentNotes"`
IsVariableSetModified bool `json:"IsVariableSetModified"`
IsLibraryVariableSetModified bool `json:"IsLibraryVariableSetModified"`
PromoteTo []DeploymentPromotionTarget `json:"PromoteTo"`
TenantPromotions []DeploymentPromotionTarget `json:"TenantPromotions"`
resources.Resource
}
func GetReleaseDeploymentTemplate ¶ added in v2.85.0
type ReleasePackageVersionBuildInformation ¶
type ReleasePackageVersionBuildInformation struct {
Branch string `json:"Branch,omitempty"`
BuildEnvironment string `json:"BuildEnvironment,omitempty"`
BuildNumber string `json:"BuildNumber,omitempty"`
BuildURL string `json:"BuildUrl,omitempty"`
Commits []*issuetrackers.CommitDetails `json:"Commits"`
PackageID string `json:"PackageId,omitempty"`
VcsCommitNumber string `json:"VcsCommitNumber,omitempty"`
VcsCommitURL string `json:"VcsCommitUrl,omitempty"`
VcsRoot string `json:"VcsRoot,omitempty"`
VcsType string `json:"VcsType,omitempty"`
Version string `json:"Version,omitempty"`
WorkItems []*core.WorkItemLink `json:"WorkItems"`
}
type ReleaseQuery ¶
type ReleaseService ¶
type ReleaseService struct {
services.CanDeleteService
}
func NewReleaseService ¶
func NewReleaseService(sling *sling.Sling, uriTemplate string) *ReleaseService
func (*ReleaseService) Add ¶
func (s *ReleaseService) Add(release *Release) (*Release, error)
Add creates a new release.
func (*ReleaseService) Get ¶
func (s *ReleaseService) Get(releasesQuery ...ReleasesQuery) (*resources.Resources[*Release], error)
Get returns a collection of releases based on the criteria defined by its input query parameter. If an error occurs, an empty collection is returned along with the associated error.
func (*ReleaseService) GetByID ¶
func (s *ReleaseService) GetByID(id string) (*Release, error)
GetByID returns the release that matches the input ID. If one cannot be found, it returns nil and an error.
func (*ReleaseService) GetReleases ¶
func (s *ReleaseService) GetReleases(channel *channels.Channel, releaseQuery ...*ReleaseQuery) (*resources.Resources[*Release], error)
type ReleaseTemplateGitResource ¶ added in v2.51.1
type ReleaseTemplateGitResource struct {
ActionName string `json:"ActionName,omitempty"`
RepositoryUri string `json:"RepositoryUri,omitempty"`
DefaultBranch string `json:"DefaultBranch,omitempty"`
IsResolvable bool `json:"IsResolvable"`
Name string `json:"Name,omitempty"`
FilePathFilters []string `json:"FilePathFilters,omitempty"`
GitCredentialId string `json:"NuGetPackageId,omitempty"`
GitResourceSelectedLastRelease actions.VersionControlReference `json:"GitResourceSelectedLastRelease,omitempty"`
}
type ReleaseTemplatePackage ¶
type ReleaseTemplatePackage struct {
ActionName string `json:"ActionName,omitempty"`
FeedID string `json:"FeedId,omitempty"`
FeedName string `json:"FeedName,omitempty"`
IsResolvable bool `json:"IsResolvable"`
NuGetFeedID string `json:"NuGetFeedId,omitempty"`
NuGetFeedName string `json:"NuGetFeedName,omitempty"`
NuGetPackageID string `json:"NuGetPackageId,omitempty"`
PackageID string `json:"PackageId,omitempty"`
PackageReferenceName string `json:"PackageReferenceName,omitempty"`
ProjectName string `json:"ProjectName,omitempty"`
StepName string `json:"StepName,omitempty"`
VersionSelectedLastRelease string `json:"VersionSelectedLastRelease,omitempty"`
FixedVersion string `json:"FixedVersion,omitempty"`
}
type ReleaseUsage ¶
type ReleaseUsage struct {
ProjectID string `json:"ProjectId,omitempty"`
ProjectName string `json:"ProjectName,omitempty"`
Releases []*ReleaseUsageEntry `json:"Releases"`
}
type ReleaseUsageEntry ¶
type ReleasesQuery ¶
Source Files
¶
- create_release_v1.go
- is_nil.go
- missing_package_info.go
- progression.go
- release.go
- release_changes.go
- release_deployment_template.go
- release_package_version_build_information.go
- release_query.go
- release_service.go
- release_template_git_resource.go
- release_template_package.go
- release_usage.go
- release_usage_entry.go
- releases_query.go