types

package
v0.1.6 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2025 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CLICommandResult

type CLICommandResult struct {
	ExitCode int    `json:"exit_code"`
	Command  string `json:"command"`
	Stdout   string `json:"stdout"`
	Stderr   string `json:"stderr"`
}

type LabFile added in v0.1.5

type LabFile struct {
	Path         string    `json:"path"`
	URL          string    `json:"url"`
	Size         int64     `json:"size"`
	LastModified time.Time `json:"lastModified"`
	ExpiresAt    time.Time `json:"expires_at"`
}

LabFile represents a file in a lab

type LabFileURL added in v0.1.5

type LabFileURL struct {
	URL       string    `json:"url"`
	FilePath  string    `json:"file_path"`
	S3Key     string    `json:"s3_key"`
	ExpiresAt time.Time `json:"expires_at"`
}

LabFileURL represents the response from the lab file URL API

type LabFiles added in v0.1.5

type LabFiles struct {
	Files struct {
		Public    []LabFile `json:"public"`
		Bootstrap []LabFile `json:"bootstrap"`
		Other     []LabFile `json:"other"`
	} `json:"files"`
}

LabFiles represents the response from the lab files API

type LabInfo added in v0.1.5

type LabInfo struct {
	UserLessonID string `json:"user_lesson_id"`
	LessonID     string `json:"lesson_id"`
	Title        string `json:"title"`
	Course       struct {
		ID    string `json:"id"`
		Title string `json:"title"`
	} `json:"course"`
	User struct {
		ID    string `json:"id"`
		Email string `json:"email"`
	} `json:"user"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
	S3Paths   struct {
		Base      string `json:"base"`
		Public    string `json:"public"`
		Bootstrap string `json:"bootstrap"`
		Readme    string `json:"readme"`
	} `json:"s3_paths"`
}

LabInfo represents the lab information

type LabPublicFiles added in v0.1.5

type LabPublicFiles struct {
	Files []LabFile `json:"files"`
}

LabPublicFiles represents the response from the lab public files API

type Lesson

type Lesson struct {
	ID          string    `json:"id"`
	CliCommands []string  `json:"cli_commands"`
	Tasks       []Task    `json:"tasks"`
	CreatedAt   time.Time `json:"created_at"`
	UpdatedAt   time.Time `json:"updated_at"`
}

type SubmitLessonRequest

type SubmitLessonRequest struct {
	Type              SubmitLessonRequestType `json:"type"`
	CliCommandResults []CLICommandResult      `json:"cli_command_results"`
}

type SubmitLessonRequestType

type SubmitLessonRequestType string
const (
	SubmitLessonRequestTypeCommandResults SubmitLessonRequestType = "COMMAND_RESULTS"
)

type Task

type Task struct {
	ID        string    `json:"id"`
	Title     string    `json:"title"`
	Status    string    `json:"status"`
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
}

Jump to

Keyboard shortcuts

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