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. *
+groupName=iuf.hpe.com
* * 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. *
+groupName=iuf.hpe.com
* * 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. *
+groupName=iuf.hpe.com
Index ¶
- type IufActivitiesSpec
- type IufActivitiesStatus
- type IufActivitiesSyncRequest
- type IufActivitiesSyncResponse
- type IufActivity
- type IufActivityCurrentState
- type IufProduct
- type IufSession
- type IufSessionCurrentState
- type IufSessionSpec
- type IufSessionStage
- type IufSessionStageState
- type IufSessionStatus
- type IufSyncRequest
- type IufSyncResponse
- type SharedInput
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type IufActivitiesSpec ¶
type IufActivitiesSpec struct { IsBlocked bool `json:"is_blocked"` IsCompleted bool `json:"is_completed"` CurrentComment string `json:"current_comment"` } // @name IufActivity.Spec
An IUF session represents the intent of an Admin to initiate an install-upgrade workflow. It contains both input data, as well as any intermediary data that is needed to generate the final Argo workflow.
type IufActivitiesStatus ¶
type IufActivitiesStatus struct { Sessions []IufSession `json:"sessions" validate:"optional"` Products []IufProduct `json:"products" validate:"optional"` }
type IufActivitiesSyncRequest ¶
type IufActivitiesSyncRequest struct {
Parent IufActivity `json:"parent"`
}
type IufActivitiesSyncResponse ¶
type IufActivitiesSyncResponse struct { Status IufActivitiesStatus `json:"status,omitempty"` ResyncAfterSeconds int `json:"resyncAfterSeconds,omitempty"` }
type IufActivity ¶
type IufActivity struct { metav1.TypeMeta `json:",inline" swaggerignore:"true"` metav1.ObjectMeta `json:"metadata" swaggerignore:"true"` Spec IufActivitiesSpec `json:"spec"` Status IufActivitiesStatus `json:"status,omitempty" swaggerignore:"true"` } // @name IufActivity
IufActivity +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:resource:path=iufactivities,scope=Namespaced +kubebuilder:storageversion
type IufActivityCurrentState ¶
type IufProduct ¶
type IufProduct 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"` } // @name Iuf.Product
type IufSession ¶
type IufSession struct { metav1.TypeMeta `json:",inline" swaggerignore:"true"` metav1.ObjectMeta `json:"metadata" swaggerignore:"true"` Spec IufSessionSpec `json:"spec"` Status IufSessionStatus `json:"status,omitempty" swaggerignore:"true"` }
IufSession +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:subresource:status +kubebuilder:resource:path=iufsessions,scope=Namespaced +kubebuilder:storageversion
type IufSessionCurrentState ¶
type IufSessionCurrentState struct { Type IufSessionStageState `json:"type" validate:"required"` Comment string `json:"comment" validate:"optional"` } // @name IufSession.CurrentState
type IufSessionSpec ¶
type IufSessionSpec struct { // The stages that need to be executed. // This is either explicitly specified by the Admin, or it is computed from the workflow type. // An Stage is a group of Operations. Stages represent the overall workflow at a high-level, and executing a stage means executing a bunch of Operations in a predefined manner. An Admin can specify the stages that must be executed for an install-upgrade workflow. And Product Developers can extend each stage with custom hook scripts that they would like to run before and after the stage's execution. The high-level stages allow their configuration would revealing too many details to the consumers of IUF. // if not specified, we apply all stages Stages []string `json:"stages"` Products []IufProduct `json:"products" validate:"required"` } // @name IufSession.Spec
An IUF session represents the intent of an Admin to initiate an install-upgrade workflow. It contains both input data, as well as any intermediary data that is needed to generate the final Argo workflow.
type IufSessionStage ¶
type IufSessionStage struct { Name string `json:"products" validate:"required"` State IufSessionStageState `json:"state" validate:"required"` WorkflowId string `json:"workflou_id" validate:"required"` WorkflowOuput map[string]string `json:"workflou_output" validate:"optional"` } // @name IufSession.Stage
type IufSessionStageState ¶
type IufSessionStageState string
+kubebuilder:validation:Enum=not_started;in_progress;error;complete
const ( IufSessionStageNotStarted IufSessionStageState = "not_started" IufSessionStageInProgress IufSessionStageState = "in_progres" IufSessionStageError IufSessionStageState = "error" IufSessionStageComplete IufSessionStageState = "complete" )
Node types
type IufSessionStatus ¶
type IufSessionStatus struct { CurrentState IufSessionCurrentState `json:"current_state"` Stages []IufSessionStage `json:"products" validate:"optional"` }
type IufSyncRequest ¶
type IufSyncRequest struct {
Parent IufSession `json:"parent"`
}
type IufSyncResponse ¶
type IufSyncResponse struct { Status IufSessionStatus `json:"status,omitempty"` ResyncAfterSeconds int `json:"resyncAfterSeconds,omitempty"` }
type SharedInput ¶
type SharedInput struct { string `json:"media_dir" validate:"required"` // json string }MediaDir