forked from TrueCloudLab/restic
414 lines
18 KiB
Go
414 lines
18 KiB
Go
|
package servermanagement
|
||
|
|
||
|
// Copyright (c) Microsoft and contributors. All rights reserved.
|
||
|
//
|
||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
// you may not use this file except in compliance with the License.
|
||
|
// You may obtain a copy of the License at
|
||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||
|
//
|
||
|
// Unless required by applicable law or agreed to in writing, software
|
||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
//
|
||
|
// See the License for the specific language governing permissions and
|
||
|
// limitations under the License.
|
||
|
//
|
||
|
// Code generated by Microsoft (R) AutoRest Code Generator 1.0.1.0
|
||
|
// Changes may cause incorrect behavior and will be lost if the code is
|
||
|
// regenerated.
|
||
|
|
||
|
import (
|
||
|
"github.com/Azure/go-autorest/autorest"
|
||
|
"github.com/Azure/go-autorest/autorest/date"
|
||
|
"github.com/Azure/go-autorest/autorest/to"
|
||
|
"net/http"
|
||
|
)
|
||
|
|
||
|
// CredentialDataFormat enumerates the values for credential data format.
|
||
|
type CredentialDataFormat string
|
||
|
|
||
|
const (
|
||
|
// RsaEncrypted specifies the rsa encrypted state for credential data
|
||
|
// format.
|
||
|
RsaEncrypted CredentialDataFormat = "RsaEncrypted"
|
||
|
)
|
||
|
|
||
|
// GatewayExpandOption enumerates the values for gateway expand option.
|
||
|
type GatewayExpandOption string
|
||
|
|
||
|
const (
|
||
|
// Download specifies the download state for gateway expand option.
|
||
|
Download GatewayExpandOption = "download"
|
||
|
// Status specifies the status state for gateway expand option.
|
||
|
Status GatewayExpandOption = "status"
|
||
|
)
|
||
|
|
||
|
// PowerShellExpandOption enumerates the values for power shell expand option.
|
||
|
type PowerShellExpandOption string
|
||
|
|
||
|
const (
|
||
|
// Output specifies the output state for power shell expand option.
|
||
|
Output PowerShellExpandOption = "output"
|
||
|
)
|
||
|
|
||
|
// PromptFieldType enumerates the values for prompt field type.
|
||
|
type PromptFieldType string
|
||
|
|
||
|
const (
|
||
|
// Credential specifies the credential state for prompt field type.
|
||
|
Credential PromptFieldType = "Credential"
|
||
|
// SecureString specifies the secure string state for prompt field type.
|
||
|
SecureString PromptFieldType = "SecureString"
|
||
|
// String specifies the string state for prompt field type.
|
||
|
String PromptFieldType = "String"
|
||
|
)
|
||
|
|
||
|
// RetentionPeriod enumerates the values for retention period.
|
||
|
type RetentionPeriod string
|
||
|
|
||
|
const (
|
||
|
// Persistent specifies the persistent state for retention period.
|
||
|
Persistent RetentionPeriod = "Persistent"
|
||
|
// Session specifies the session state for retention period.
|
||
|
Session RetentionPeriod = "Session"
|
||
|
)
|
||
|
|
||
|
// UpgradeMode enumerates the values for upgrade mode.
|
||
|
type UpgradeMode string
|
||
|
|
||
|
const (
|
||
|
// Automatic specifies the automatic state for upgrade mode.
|
||
|
Automatic UpgradeMode = "Automatic"
|
||
|
// Manual specifies the manual state for upgrade mode.
|
||
|
Manual UpgradeMode = "Manual"
|
||
|
)
|
||
|
|
||
|
// EncryptionJwkResource is the public key of the gateway.
|
||
|
type EncryptionJwkResource struct {
|
||
|
Kty *string `json:"kty,omitempty"`
|
||
|
Alg *string `json:"alg,omitempty"`
|
||
|
E *string `json:"e,omitempty"`
|
||
|
N *string `json:"n,omitempty"`
|
||
|
}
|
||
|
|
||
|
// Error is error message.
|
||
|
type Error struct {
|
||
|
Code *int32 `json:"code,omitempty"`
|
||
|
Message *string `json:"message,omitempty"`
|
||
|
Fields *string `json:"fields,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayParameters is collection of parameters for operations on a gateway
|
||
|
// resource.
|
||
|
type GatewayParameters struct {
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]interface{} `json:"tags,omitempty"`
|
||
|
*GatewayParametersProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayParametersProperties is collection of properties.
|
||
|
type GatewayParametersProperties struct {
|
||
|
UpgradeMode UpgradeMode `json:"upgradeMode,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayProfile is jSON properties that the gateway service uses know how to
|
||
|
// communicate with the resource.
|
||
|
type GatewayProfile struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
DataPlaneServiceBaseAddress *string `json:"dataPlaneServiceBaseAddress,omitempty"`
|
||
|
GatewayID *string `json:"gatewayId,omitempty"`
|
||
|
Environment *string `json:"environment,omitempty"`
|
||
|
UpgradeManifestURL *string `json:"upgradeManifestUrl,omitempty"`
|
||
|
MessagingNamespace *string `json:"messagingNamespace,omitempty"`
|
||
|
MessagingAccount *string `json:"messagingAccount,omitempty"`
|
||
|
MessagingKey *string `json:"messagingKey,omitempty"`
|
||
|
RequestQueue *string `json:"requestQueue,omitempty"`
|
||
|
ResponseTopic *string `json:"responseTopic,omitempty"`
|
||
|
StatusBlobSignature *string `json:"statusBlobSignature,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayResource is data model for an arm gateway resource.
|
||
|
type GatewayResource struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
*GatewayResourceProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayResourceProperties is collection of properties.
|
||
|
type GatewayResourceProperties struct {
|
||
|
Created *date.Time `json:"created,omitempty"`
|
||
|
Updated *date.Time `json:"updated,omitempty"`
|
||
|
UpgradeMode UpgradeMode `json:"upgradeMode,omitempty"`
|
||
|
DesiredVersion *string `json:"desiredVersion,omitempty"`
|
||
|
Instances *[]GatewayStatus `json:"instances,omitempty"`
|
||
|
ActiveMessageCount *int32 `json:"activeMessageCount,omitempty"`
|
||
|
LatestPublishedMsiVersion *string `json:"latestPublishedMsiVersion,omitempty"`
|
||
|
PublishedTimeUtc *date.Time `json:"publishedTimeUtc,omitempty"`
|
||
|
InstallerDownload *string `json:"installerDownload,omitempty"`
|
||
|
MinimumVersion *string `json:"minimumVersion,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayResources is collection of Gateway Resources.
|
||
|
type GatewayResources struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
Value *[]GatewayResource `json:"value,omitempty"`
|
||
|
NextLink *string `json:"nextLink,omitempty"`
|
||
|
}
|
||
|
|
||
|
// GatewayResourcesPreparer prepares a request to retrieve the next set of results. It returns
|
||
|
// nil if no more results exist.
|
||
|
func (client GatewayResources) GatewayResourcesPreparer() (*http.Request, error) {
|
||
|
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
|
||
|
return nil, nil
|
||
|
}
|
||
|
return autorest.Prepare(&http.Request{},
|
||
|
autorest.AsJSON(),
|
||
|
autorest.AsGet(),
|
||
|
autorest.WithBaseURL(to.String(client.NextLink)))
|
||
|
}
|
||
|
|
||
|
// GatewayStatus is expanded gateway status information.
|
||
|
type GatewayStatus struct {
|
||
|
AvailableMemoryMByte *float64 `json:"availableMemoryMByte,omitempty"`
|
||
|
GatewayCPUUtilizationPercent *float64 `json:"gatewayCpuUtilizationPercent,omitempty"`
|
||
|
TotalCPUUtilizationPercent *float64 `json:"totalCpuUtilizationPercent,omitempty"`
|
||
|
GatewayVersion *string `json:"gatewayVersion,omitempty"`
|
||
|
FriendlyOsName *string `json:"friendlyOsName,omitempty"`
|
||
|
InstalledDate *date.Time `json:"installedDate,omitempty"`
|
||
|
LogicalProcessorCount *int32 `json:"logicalProcessorCount,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
GatewayID *string `json:"gatewayId,omitempty"`
|
||
|
GatewayWorkingSetMByte *float64 `json:"gatewayWorkingSetMByte,omitempty"`
|
||
|
StatusUpdated *date.Time `json:"statusUpdated,omitempty"`
|
||
|
GroupPolicyError *string `json:"groupPolicyError,omitempty"`
|
||
|
AllowGatewayGroupPolicyStatus *bool `json:"allowGatewayGroupPolicyStatus,omitempty"`
|
||
|
RequireMfaGroupPolicyStatus *bool `json:"requireMfaGroupPolicyStatus,omitempty"`
|
||
|
EncryptionCertificateThumbprint *string `json:"encryptionCertificateThumbprint,omitempty"`
|
||
|
SecondaryEncryptionCertificateThumbprint *string `json:"secondaryEncryptionCertificateThumbprint,omitempty"`
|
||
|
EncryptionJwk *EncryptionJwkResource `json:"encryptionJwk,omitempty"`
|
||
|
SecondaryEncryptionJwk *EncryptionJwkResource `json:"secondaryEncryptionJwk,omitempty"`
|
||
|
ActiveMessageCount *int32 `json:"activeMessageCount,omitempty"`
|
||
|
LatestPublishedMsiVersion *string `json:"latestPublishedMsiVersion,omitempty"`
|
||
|
PublishedTimeUtc *date.Time `json:"publishedTimeUtc,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeParameters is parameter collection for operations on arm node resource.
|
||
|
type NodeParameters struct {
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]interface{} `json:"tags,omitempty"`
|
||
|
*NodeParametersProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeParametersProperties is collection of properties.
|
||
|
type NodeParametersProperties struct {
|
||
|
GatewayID *string `json:"gatewayId,omitempty"`
|
||
|
ConnectionName *string `json:"connectionName,omitempty"`
|
||
|
UserName *string `json:"userName,omitempty"`
|
||
|
Password *string `json:"password,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeResource is a Node Resource.
|
||
|
type NodeResource struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
*NodeResourceProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeResourceProperties is collection of properties.
|
||
|
type NodeResourceProperties struct {
|
||
|
GatewayID *string `json:"gatewayId,omitempty"`
|
||
|
ConnectionName *string `json:"connectionName,omitempty"`
|
||
|
Created *date.Time `json:"created,omitempty"`
|
||
|
Updated *date.Time `json:"updated,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeResources is a collection of node resource objects.
|
||
|
type NodeResources struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
Value *[]NodeResource `json:"value,omitempty"`
|
||
|
NextLink *string `json:"nextLink,omitempty"`
|
||
|
}
|
||
|
|
||
|
// NodeResourcesPreparer prepares a request to retrieve the next set of results. It returns
|
||
|
// nil if no more results exist.
|
||
|
func (client NodeResources) NodeResourcesPreparer() (*http.Request, error) {
|
||
|
if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 {
|
||
|
return nil, nil
|
||
|
}
|
||
|
return autorest.Prepare(&http.Request{},
|
||
|
autorest.AsJSON(),
|
||
|
autorest.AsGet(),
|
||
|
autorest.WithBaseURL(to.String(client.NextLink)))
|
||
|
}
|
||
|
|
||
|
// PowerShellCommandParameters is the parameters to a PowerShell script
|
||
|
// execution command.
|
||
|
type PowerShellCommandParameters struct {
|
||
|
*PowerShellCommandParametersProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellCommandParametersProperties is collection of properties.
|
||
|
type PowerShellCommandParametersProperties struct {
|
||
|
Command *string `json:"command,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellCommandResult is results from invoking a PowerShell command.
|
||
|
type PowerShellCommandResult struct {
|
||
|
MessageType *int32 `json:"messageType,omitempty"`
|
||
|
ForegroundColor *string `json:"foregroundColor,omitempty"`
|
||
|
BackgroundColor *string `json:"backgroundColor,omitempty"`
|
||
|
Value *string `json:"value,omitempty"`
|
||
|
Prompt *string `json:"prompt,omitempty"`
|
||
|
ExitCode *int32 `json:"exitCode,omitempty"`
|
||
|
ID *int32 `json:"id,omitempty"`
|
||
|
Caption *string `json:"caption,omitempty"`
|
||
|
Message *string `json:"message,omitempty"`
|
||
|
Descriptions *[]PromptFieldDescription `json:"descriptions,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellCommandResults is a collection of results from a PowerShell
|
||
|
// command.
|
||
|
type PowerShellCommandResults struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
Results *[]PowerShellCommandResult `json:"results,omitempty"`
|
||
|
Pssession *string `json:"pssession,omitempty"`
|
||
|
Command *string `json:"command,omitempty"`
|
||
|
Completed *bool `json:"completed,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellCommandStatus is result status from invoking a PowerShell command.
|
||
|
type PowerShellCommandStatus struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
*PowerShellCommandResults `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellSessionResource is a PowerShell session resource (practically
|
||
|
// equivalent to a runspace instance).
|
||
|
type PowerShellSessionResource struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
*PowerShellSessionResourceProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellSessionResourceProperties is collection of properties.
|
||
|
type PowerShellSessionResourceProperties struct {
|
||
|
SessionID *string `json:"sessionId,omitempty"`
|
||
|
State *string `json:"state,omitempty"`
|
||
|
RunspaceAvailability *string `json:"runspaceAvailability,omitempty"`
|
||
|
DisconnectedOn *date.Time `json:"disconnectedOn,omitempty"`
|
||
|
ExpiresOn *date.Time `json:"expiresOn,omitempty"`
|
||
|
Version *VersionServermanagement `json:"version,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellSessionResources is a collection of PowerShell session resources
|
||
|
type PowerShellSessionResources struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
Value *[]PowerShellSessionResource `json:"value,omitempty"`
|
||
|
NextLink *string `json:"nextLink,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellTabCompletionParameters is collection of parameters for PowerShell
|
||
|
// tab completion.
|
||
|
type PowerShellTabCompletionParameters struct {
|
||
|
Command *string `json:"command,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PowerShellTabCompletionResults is an array of strings representing the
|
||
|
// different values that can be selected through.
|
||
|
type PowerShellTabCompletionResults struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
Results *[]string `json:"results,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PromptFieldDescription is field description for the implementation of
|
||
|
// PSHostUserInterface.Prompt
|
||
|
type PromptFieldDescription struct {
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Label *string `json:"label,omitempty"`
|
||
|
HelpMessage *string `json:"helpMessage,omitempty"`
|
||
|
PromptFieldTypeIsList *bool `json:"promptFieldTypeIsList,omitempty"`
|
||
|
PromptFieldType PromptFieldType `json:"promptFieldType,omitempty"`
|
||
|
}
|
||
|
|
||
|
// PromptMessageResponse is the response to a prompt message.
|
||
|
type PromptMessageResponse struct {
|
||
|
Response *[]string `json:"response,omitempty"`
|
||
|
}
|
||
|
|
||
|
// Resource is resource Manager Resource Information.
|
||
|
type Resource struct {
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
}
|
||
|
|
||
|
// SessionParameters is parameter collection for creation and other operations
|
||
|
// on sessions.
|
||
|
type SessionParameters struct {
|
||
|
*SessionParametersProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// SessionParametersProperties is collection of properties
|
||
|
type SessionParametersProperties struct {
|
||
|
UserName *string `json:"userName,omitempty"`
|
||
|
Password *string `json:"password,omitempty"`
|
||
|
RetentionPeriod RetentionPeriod `json:"retentionPeriod,omitempty"`
|
||
|
CredentialDataFormat CredentialDataFormat `json:"credentialDataFormat,omitempty"`
|
||
|
EncryptionCertificateThumbprint *string `json:"EncryptionCertificateThumbprint,omitempty"`
|
||
|
}
|
||
|
|
||
|
// SessionResource is the session object.
|
||
|
type SessionResource struct {
|
||
|
autorest.Response `json:"-"`
|
||
|
ID *string `json:"id,omitempty"`
|
||
|
Type *string `json:"type,omitempty"`
|
||
|
Name *string `json:"name,omitempty"`
|
||
|
Location *string `json:"location,omitempty"`
|
||
|
Tags *map[string]*string `json:"tags,omitempty"`
|
||
|
Etag *string `json:"etag,omitempty"`
|
||
|
*SessionResourceProperties `json:"properties,omitempty"`
|
||
|
}
|
||
|
|
||
|
// SessionResourceProperties is collection of properties.
|
||
|
type SessionResourceProperties struct {
|
||
|
UserName *string `json:"userName,omitempty"`
|
||
|
Created *date.Time `json:"created,omitempty"`
|
||
|
Updated *date.Time `json:"updated,omitempty"`
|
||
|
}
|
||
|
|
||
|
// VersionServermanagement is a multipart-numeric version number.
|
||
|
type VersionServermanagement struct {
|
||
|
Major *int32 `json:"major,omitempty"`
|
||
|
Minor *int32 `json:"minor,omitempty"`
|
||
|
Build *int32 `json:"build,omitempty"`
|
||
|
Revision *int32 `json:"revision,omitempty"`
|
||
|
MajorRevision *int32 `json:"majorRevision,omitempty"`
|
||
|
MinorRevision *int32 `json:"minorRevision,omitempty"`
|
||
|
}
|