iuf

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2022 License: MIT Imports: 6 Imported by: 0

Documentation

Overview

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

* * MIT License * * (C) Copyright 2022 Hewlett Packard Enterprise Development LP * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. *

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Validate added in v0.3.0

func Validate(file_contents []byte) error

func ValidateFile added in v0.3.2

func ValidateFile(file_path string) error

Types

type Activity

type Activity struct {
	Name             string                 `json:"name"`                                                                                      // Name of activity
	InputParameters  InputParameters        `json:"input_parameters" binding:"required"`                                                       // Input parameters by admin
	OperationOutputs map[string]interface{} `json:"operation_outputs" binding:"required"`                                                      // Operation outputs from argo
	Products         []Product              `json:"products" binding:"required"`                                                               // List of products included in an activity
	ActivityState    ActivityState          `json:"activity_state" binding:"required" enums:"paused,in_progress,debug,blocked,wait_for_admin"` // State of activity

} // @name Activity

Activity

type ActivityState added in v0.3.1

type ActivityState string
const (
	ActivityStateInProgress   ActivityState = "in_progress"
	ActivityStatePaused       ActivityState = "paused"
	ActivityStateDebug        ActivityState = "debug"
	ActivityStateBlocked      ActivityState = "blocked"
	ActivityStateWaitForAdmin ActivityState = "wait_for_admin"
)

type CreateActivityRequest added in v0.3.1

type CreateActivityRequest struct {
	Name            string          `json:"name" binding:"required"` // Name of activity
	InputParameters InputParameters `json:"input_parameters"`        // Input parameters by admin
	ActivityState   ActivityState   `json:"activity_state" swaggerignore:"true"`

} // @name Activity.CreateActivityRequest

type History added in v0.3.1

type History struct {
	ActivityState ActivityState `json:"activity_state" binding:"required" enums:"paused,in_progress,debug,blocked,wait_for_admin"` // State of activity
	SessionName   string        `json:"session_name"`                                                                              // Name of the session
	StartTime     int32         `json:"start_time"`                                                                                // Epoch timestamp
	Comment       string        `json:"comment"`                                                                                   // Comment
	Name          string        `json:"name"`                                                                                      // Comment

} // @name History

History

type HistoryActionRequest added in v0.3.1

type HistoryActionRequest struct {
	StartTime int32  `json:"start_time" validate:"optional"` // Epoch timestamp
	Comment   string `json:"comment" validate:"optional"`    // Comment

} // @name History.HistoryActionRequest

type HistoryRunActionRequest added in v0.3.4

type HistoryRunActionRequest struct {
	InputParameters InputParameters `json:"input_parameters" binding:"required"`
	Comment         string          `json:"comment" validate:"optional"` // Comment

} // @name History.HistoryRunActionRequest

type InputParameters added in v0.3.1

type InputParameters struct {
	MediaDir                 string   `json:"media_dir"`                  // Location of media
	SiteParameters           string   `json:"site_parameters"`            // The inline contents of the site_parameters.yaml file.
	LimitNodes               []string `json:"limit_nodes"`                // Each item is the xname of a node
	BootprepConfigManaged    []string `json:"bootprep_config_managed"`    // Each item is a path of the bootprep files
	BootprepConfigManagement []string `json:"bootprep_config_management"` // Each item is a path of the bootprep files
	Stages                   []string `json:"stages"`                     // Stages to execute
	Force                    bool     `json:"force"`                      // Force re-execution of stage operations

} // @name InputParameters

type Operations added in v0.4.0

type Operations struct {
	Name      string `yaml:"name"`       // Name of the opeartion
	LocalPath string `yaml:"local-path"` // Argo operation file path
}

type PatchActivityRequest added in v0.3.1

type PatchActivityRequest struct {
	InputParameters InputParameters `json:"input_parameters" binding:"required"`

} // @name Activity.PatchActivityRequest

type Product

type Product struct {
	// The name of the product
	Name string `json:"name" validate:"required"`
	// The version of the product.
	Version string `json:"version" validate:"required"`
	// The original location of the extracted tar in on the physical storage.
	OriginalLocation string `json:"original_location"  validate:"required"`
	// The flag indicates md5 of a product tarball file has been validated
	Validated bool `json:"validated"  validate:"required"`

} // @name Product

type ReplaceHistoryCommentRequest added in v0.3.1

type ReplaceHistoryCommentRequest struct {
	Comment string `json:"comment"` // Comment

} // @name History.ReplaceHistoryCommentRequest

type Session added in v0.3.1

type Session struct {
	InputParameters InputParameters   `json:"input_parameters"`
	CurrentState    SessionState      `json:"current_state" enums:"paused,in_progress,debug,completed"`
	CurrentStage    string            `json:"stage"`
	Workflows       []SessionWorkflow `json:"workflows"`
	Products        []Product         `json:"products" validate:"required"`
	Name            string            `json:"name"`
	ActivityRef     string            `json:"activityRef" swaggerignore:"true"`

} // @name Session

IufSession

type SessionState added in v0.3.1

type SessionState string
const (
	SessionStateInProgress SessionState = "in_progress"
	SessionStatePaused     SessionState = "paused"
	SessionStateDebug      SessionState = "debug"
	SessionStateCompleted  SessionState = "completed"
)

type SessionWorkflow added in v0.3.1

type SessionWorkflow struct {
	Id  string `json:"id"`  // id of argo workflow
	Url string `json:"url"` // url to the argo workflow

} // @name Session.Workflow

type Stage added in v0.4.0

type Stage struct {
	Name             string                 `yaml:"name"`       // Name of the stage
	Type             string                 `yaml:"type"`       // Type of the stage
	Operations       []Operations           `yaml:"operations"` // operations
	StaticParameters map[string]interface{} `yaml:"static-parameters"`

} // @name Stage

Stage

type Stages added in v0.4.0

type Stages struct {
	Version string  `yaml:"version"`
	Stages  []Stage `yaml:"stages"`
}

type SyncRequest added in v0.4.0

type SyncRequest struct {
	Object core_v1.ConfigMap `json:"object"`
}

type SyncResponse added in v0.4.0

type SyncResponse struct {
	ResyncAfterSeconds int `json:"resyncAfterSeconds,omitempty"`
}

Jump to

Keyboard shortcuts

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