Documentation
¶
Index ¶
- Constants
- Variables
- func AppWrapper(t Test, namespace *corev1.Namespace, name string) func(g gomega.Gomega) *mcadv1beta1.AppWrapper
- func AppWrapperState(aw *mcadv1beta1.AppWrapper) mcadv1beta1.AppWrapperState
- func ConditionStatus[T conditionType](conditionType T) func(any) corev1.ConditionStatus
- func GetCodeFlareSDKVersion() string
- func GetIngress(t Test, namespace, name string) *networkingv1.Ingress
- func GetJob(t Test, namespace, name string) *batchv1.Job
- func GetPodLogs(t Test, pod *corev1.Pod, options corev1.PodLogOptions) []byte
- func GetPods(t Test, namespace string, options metav1.ListOptions) []corev1.Pod
- func GetPyTorchImage() string
- func GetRayCluster(t Test, namespace, name string) *rayv1alpha1.RayCluster
- func GetRayImage() string
- func GetRayJob(t Test, namespace, name string) *rayv1alpha1.RayJob
- func GetRayJobAPIDetailsStatus(jobDetails *RayJobDetailsResponse) string
- func GetRayJobId(t Test, namespace, name string) string
- func GetRayVersion() string
- func GetRoute(t Test, namespace, name string) *routev1.Route
- func Ingress(t Test, namespace, name string) func(g gomega.Gomega) *networkingv1.Ingress
- func IsOpenShift(test Test) bool
- func Job(t Test, namespace, name string) func(g gomega.Gomega) *batchv1.Job
- func LoadBalancerIngresses(ingress *networkingv1.Ingress) []networkingv1.IngressLoadBalancerIngress
- func Ptr[T any](v T) *T
- func Raw(t Test, obj runtime.Object) runtime.RawExtension
- func RayCluster(t Test, namespace, name string) func(g gomega.Gomega) *rayv1alpha1.RayCluster
- func RayClusterState(cluster *rayv1alpha1.RayCluster) rayv1alpha1.ClusterState
- func RayJob(t Test, namespace, name string) func(g gomega.Gomega) *rayv1alpha1.RayJob
- func RayJobAPIDetails(t Test, rayClient RayClusterClient, jobID string) func(g gomega.Gomega) *RayJobDetailsResponse
- func RayJobStatus(job *rayv1alpha1.RayJob) rayv1alpha1.JobStatus
- func Route(t Test, namespace, name string) func(g gomega.Gomega) *routev1.Route
- func WriteJobLogs(t Test, namespace, name string)
- func WriteRayJobAPILogs(t Test, rayClient RayClusterClient, jobID string)
- func WriteRayJobLogs(t Test, rayClient RayClusterClient, namespace, name string)
- func WriteToOutputDir(t Test, fileName string, fileType OutputType, data []byte)
- type Client
- type Option
- type OutputType
- type RayClusterClient
- type RayJobDetailsResponse
- type RayJobLogsResponse
- type RayJobResponse
- type RayJobSetup
- type T
- type Test
Constants ¶
View Source
const ( CodeFlareTestSdkVersion = "CODEFLARE_TEST_SDK_VERSION" CodeFlareTestRayVersion = "CODEFLARE_TEST_RAY_VERSION" CodeFlareTestRayImage = "CODEFLARE_TEST_RAY_IMAGE" CodeFlareTestPyTorchImage = "CODEFLARE_TEST_PYTORCH_IMAGE" CodeFlareTestOutputDir = "CODEFLARE_TEST_OUTPUT_DIR" )
View Source
const ( CodeFlareSDKVersion = "0.6.1" RayVersion = "2.5.0" RayImage = "rayproject/ray:2.5.0" )
View Source
const RayJobDefaultClusterSelectorKey = "ray.io/cluster"
Variables ¶
View Source
var ( TestTimeoutShort = 1 * time.Minute TestTimeoutMedium = 2 * time.Minute TestTimeoutLong = 5 * time.Minute ApplyOptions = metav1.ApplyOptions{FieldManager: "codeflare-test", Force: true} )
Functions ¶
func AppWrapper ¶
func AppWrapper(t Test, namespace *corev1.Namespace, name string) func(g gomega.Gomega) *mcadv1beta1.AppWrapper
func AppWrapperState ¶
func AppWrapperState(aw *mcadv1beta1.AppWrapper) mcadv1beta1.AppWrapperState
func ConditionStatus ¶
func ConditionStatus[T conditionType](conditionType T) func(any) corev1.ConditionStatus
func GetCodeFlareSDKVersion ¶
func GetCodeFlareSDKVersion() string
func GetIngress ¶ added in v0.2.0
func GetIngress(t Test, namespace, name string) *networkingv1.Ingress
func GetPodLogs ¶
func GetPyTorchImage ¶
func GetPyTorchImage() string
func GetRayCluster ¶ added in v0.1.0
func GetRayCluster(t Test, namespace, name string) *rayv1alpha1.RayCluster
func GetRayImage ¶
func GetRayImage() string
func GetRayJobAPIDetailsStatus ¶ added in v0.1.0
func GetRayJobAPIDetailsStatus(jobDetails *RayJobDetailsResponse) string
func GetRayJobId ¶ added in v0.2.0
func GetRayVersion ¶
func GetRayVersion() string
func IsOpenShift ¶
func LoadBalancerIngresses ¶ added in v0.2.0
func LoadBalancerIngresses(ingress *networkingv1.Ingress) []networkingv1.IngressLoadBalancerIngress
func RayCluster ¶ added in v0.1.0
func RayCluster(t Test, namespace, name string) func(g gomega.Gomega) *rayv1alpha1.RayCluster
func RayClusterState ¶ added in v0.1.0
func RayClusterState(cluster *rayv1alpha1.RayCluster) rayv1alpha1.ClusterState
func RayJobAPIDetails ¶ added in v0.1.0
func RayJobAPIDetails(t Test, rayClient RayClusterClient, jobID string) func(g gomega.Gomega) *RayJobDetailsResponse
func RayJobStatus ¶
func RayJobStatus(job *rayv1alpha1.RayJob) rayv1alpha1.JobStatus
func WriteJobLogs ¶
func WriteRayJobAPILogs ¶ added in v0.1.0
func WriteRayJobAPILogs(t Test, rayClient RayClusterClient, jobID string)
func WriteRayJobLogs ¶
func WriteRayJobLogs(t Test, rayClient RayClusterClient, namespace, name string)
func WriteToOutputDir ¶
func WriteToOutputDir(t Test, fileName string, fileType OutputType, data []byte)
Types ¶
type Client ¶
type Client interface { Core() kubernetes.Interface Route() routev1.Interface CodeFlare() codeflareclient.Interface MCAD() mcadclient.Interface Ray() rayclient.Interface }
type RayClusterClient ¶ added in v0.1.0
type RayClusterClient interface { CreateJob(job *RayJobSetup) (*RayJobResponse, error) GetJobDetails(jobID string) (*RayJobDetailsResponse, error) GetJobLogs(jobID string) (string, error) }
func NewRayClusterClient ¶ added in v0.1.0
func NewRayClusterClient(dashboardEndpoint url.URL) RayClusterClient
type RayJobDetailsResponse ¶ added in v0.1.0
type RayJobDetailsResponse struct { JobID string `json:"job_id"` SubmissionID string `json:"submission_id"` Status string `json:"status"` }
func GetRayJobAPIDetails ¶ added in v0.1.0
func GetRayJobAPIDetails(t Test, rayClient RayClusterClient, jobID string) *RayJobDetailsResponse
type RayJobLogsResponse ¶ added in v0.1.0
type RayJobLogsResponse struct {
Logs string `json:"logs"`
}
type RayJobResponse ¶ added in v0.1.0
type RayJobSetup ¶ added in v0.1.0
type T ¶
func (*T) NewTestNamespace ¶
Click to show internal directories.
Click to hide internal directories.