abaputils

package
v1.70.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 11, 2020 License: Apache-2.0 Imports: 16 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertTime added in v1.65.0

func ConvertTime(logTimeStamp string) time.Time

ConvertTime formats an ABAP timestamp string from format /Date(1585576807000+0000)/ into a UNIX timestamp and returns it

func GetHTTPResponse added in v1.65.0

func GetHTTPResponse(requestType string, connectionDetails ConnectionDetailsHTTP, body []byte, client piperhttp.Sender) (*http.Response, error)

GetHTTPResponse wraps the SendRequest function of piperhttp

func HandleHTTPError added in v1.65.0

func HandleHTTPError(resp *http.Response, err error, message string, connectionDetails ConnectionDetailsHTTP) error

HandleHTTPError handles ABAP error messages which can occur when using OData services

func PollEntity added in v1.65.0

func PollEntity(repositoryName string, connectionDetails ConnectionDetailsHTTP, client piperhttp.Sender, pollIntervall time.Duration) (string, error)

PollEntity periodically polls the pull/import entity to get the status. Check if the import is still running

func PrintLogs added in v1.65.0

func PrintLogs(entity PullEntity)

PrintLogs sorts and formats the received transport and execution log of an import

Types

type AUtilsMock added in v1.64.0

type AUtilsMock struct {
	ReturnedConnectionDetailsHTTP ConnectionDetailsHTTP
	ReturnedError                 error
}

AUtilsMock mock

func (*AUtilsMock) Cleanup added in v1.64.0

func (autils *AUtilsMock) Cleanup()

Cleanup to reset AUtilsMock

func (*AUtilsMock) GetAbapCommunicationArrangementInfo added in v1.64.0

func (autils *AUtilsMock) GetAbapCommunicationArrangementInfo(options AbapEnvironmentOptions, oDataURL string) (ConnectionDetailsHTTP, error)

GetAbapCommunicationArrangementInfo mock

func (*AUtilsMock) GetPollIntervall added in v1.67.0

func (autils *AUtilsMock) GetPollIntervall() time.Duration

GetPollIntervall mock

type AbapBinding

type AbapBinding struct {
	ID      string `json:"id"`
	Type    string `json:"type"`
	Version string `json:"version"`
	Env     string `json:"env"`
}

AbapBinding contains information about service binding in Cloud Foundry

type AbapConnection

type AbapConnection struct {
	Username                         string `json:"username"`
	Password                         string `json:"password"`
	CommunicationScenarioID          string `json:"communication_scenario_id"`
	CommunicationArrangementID       string `json:"communication_arrangement_id"`
	CommunicationSystemID            string `json:"communication_system_id"`
	CommunicationInboundUserID       string `json:"communication_inbound_user_id"`
	CommunicationInboundUserAuthMode string `json:"communication_inbound_user_auth_mode"`
}

AbapConnection contains information about the ABAP connection for the ABAP endpoint

type AbapEnvironmentCheckoutBranchOptions added in v1.65.0

type AbapEnvironmentCheckoutBranchOptions struct {
	AbapEnvOptions AbapEnvironmentOptions
	RepositoryName string `json:"repositoryName,omitempty"`
}

AbapEnvironmentCheckoutBranchOptions struct for the CheckoutBranch piper step

type AbapEnvironmentOptions

type AbapEnvironmentOptions struct {
	Username          string `json:"username,omitempty"`
	Password          string `json:"password,omitempty"`
	Host              string `json:"host,omitempty"`
	CfAPIEndpoint     string `json:"cfApiEndpoint,omitempty"`
	CfOrg             string `json:"cfOrg,omitempty"`
	CfSpace           string `json:"cfSpace,omitempty"`
	CfServiceInstance string `json:"cfServiceInstance,omitempty"`
	CfServiceKeyName  string `json:"cfServiceKeyName,omitempty"`
}

AbapEnvironmentOptions contains cloud foundry fields and the host parameter for connections to ABAP Environment instances

type AbapEnvironmentPullGitRepoOptions

type AbapEnvironmentPullGitRepoOptions struct {
	AbapEnvOptions  AbapEnvironmentOptions
	RepositoryNames []string `json:"repositoryNames,omitempty"`
}

AbapEnvironmentPullGitRepoOptions struct for the PullGitRepo piper step

type AbapEnvironmentRunATCCheckOptions

type AbapEnvironmentRunATCCheckOptions struct {
	AbapEnvOptions AbapEnvironmentOptions
	AtcConfig      string `json:"atcConfig,omitempty"`
}

AbapEnvironmentRunATCCheckOptions struct for the RunATCCheck piper step

type AbapError

type AbapError struct {
	Code    string           `json:"code"`
	Message AbapErrorMessage `json:"message"`
}

AbapError contains the error code and the error message for ABAP errors

type AbapErrorMessage

type AbapErrorMessage struct {
	Lang  string `json:"lang"`
	Value string `json:"value"`
}

AbapErrorMessage contains the lanuage and value fields for ABAP errors

type AbapLogs

type AbapLogs struct {
	Results []LogResults `json:"results"`
}

AbapLogs struct for ABAP logs

type AbapMetadata

type AbapMetadata struct {
	URI string `json:"uri"`
}

AbapMetadata contains the URI of metadata files

type AbapServiceKey

type AbapServiceKey struct {
	SapCloudService    string         `json:"sap.cloud.service"`
	URL                string         `json:"url"`
	SystemID           string         `json:"systemid"`
	Abap               AbapConnection `json:"abap"`
	Binding            AbapBinding    `json:"binding"`
	PreserveHostHeader bool           `json:"preserve_host_header"`
}

AbapServiceKey contains information about an ABAP service key

func ReadServiceKeyAbapEnvironment

func ReadServiceKeyAbapEnvironment(options AbapEnvironmentOptions, c command.ExecRunner) (AbapServiceKey, error)

ReadServiceKeyAbapEnvironment from Cloud Foundry and returns it. Depending on user/developer requirements if he wants to perform further Cloud Foundry actions

type AbapUtils added in v1.64.0

type AbapUtils struct {
	Exec      command.ExecRunner
	Intervall time.Duration
}

AbapUtils Struct

func (*AbapUtils) GetAbapCommunicationArrangementInfo added in v1.64.0

func (abaputils *AbapUtils) GetAbapCommunicationArrangementInfo(options AbapEnvironmentOptions, oDataURL string) (ConnectionDetailsHTTP, error)

GetAbapCommunicationArrangementInfo function fetches the communcation arrangement information in SAP CP ABAP Environment

func (*AbapUtils) GetPollIntervall added in v1.67.0

func (abaputils *AbapUtils) GetPollIntervall() time.Duration

GetPollIntervall returns the specified intervall from AbapUtils or a default value of 10 seconds

type BranchEntity

type BranchEntity struct {
	Metadata      AbapMetadata `json:"__metadata"`
	ScName        string       `json:"sc_name"`
	Namespace     string       `json:"namepsace"`
	BranchName    string       `json:"branch_name"`
	ParentBranch  string       `json:"derived_from"`
	CreatedBy     string       `json:"created_by"`
	CreatedOn     string       `json:"created_on"`
	IsActive      bool         `json:"is_active"`
	CommitID      string       `json:"commit_id"`
	CommitMessage string       `json:"commit_message"`
	LastCommitBy  string       `json:"last_commit_by"`
	LastCommitOn  string       `json:"last_commit_on"`
}

BranchEntity struct for the Branch entity A4C_A2G_GHA_SC_BRANCH

type ClientMock added in v1.65.0

type ClientMock struct {
	Token      string
	Body       string
	BodyList   []string
	StatusCode int
	Error      error
}

ClientMock contains information about the client mock

func (*ClientMock) SendRequest added in v1.65.0

func (c *ClientMock) SendRequest(method, url string, bdy io.Reader, hdr http.Header, cookies []*http.Cookie) (*http.Response, error)

SendRequest sets a HTTP response for a client mock

func (*ClientMock) SetOptions added in v1.65.0

func (c *ClientMock) SetOptions(opts piperhttp.ClientOptions)

SetOptions sets clientOptions for a client mock

type Communication added in v1.64.0

type Communication interface {
	GetAbapCommunicationArrangementInfo(options AbapEnvironmentOptions, oDataURL string) (ConnectionDetailsHTTP, error)
	GetPollIntervall() time.Duration
}

Communication for defining function used for communication

type ConnectionDetailsHTTP

type ConnectionDetailsHTTP struct {
	User       string `json:"user"`
	Password   string `json:"password"`
	URL        string `json:"url"`
	XCsrfToken string `json:"xcsrftoken"`
}

ConnectionDetailsHTTP contains fields for HTTP connections including the XCSRF token

type LogResults

type LogResults struct {
	Index       string `json:"index_no"`
	Type        string `json:"type"`
	Description string `json:"descr"`
	Timestamp   string `json:"timestamp"`
}

LogResults struct for Execution and Transport Log entities A4C_A2G_GHA_SC_LOG_EXE and A4C_A2G_GHA_SC_LOG_TP

type PullEntity

type PullEntity struct {
	Metadata          AbapMetadata `json:"__metadata"`
	UUID              string       `json:"uuid"`
	Namespace         string       `json:"namepsace"`
	ScName            string       `json:"sc_name"`
	ImportType        string       `json:"import_type"`
	BranchName        string       `json:"branch_name"`
	StartedByUser     string       `json:"user_name"`
	Status            string       `json:"status"`
	StatusDescription string       `json:"status_descr"`
	CommitID          string       `json:"commit_id"`
	StartTime         string       `json:"start_time"`
	ChangeTime        string       `json:"change_time"`
	ToExecutionLog    AbapLogs     `json:"to_Execution_log"`
	ToTransportLog    AbapLogs     `json:"to_Transport_log"`
}

PullEntity struct for the Pull/Import entity A4C_A2G_GHA_SC_IMP

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL