github.com/hanks177/podman/v4@v4.1.3-0.20220613032544-16d90015bc83/pkg/domain/entities/system.go (about)

     1  package entities
     2  
     3  import (
     4  	"time"
     5  
     6  	"github.com/hanks177/podman/v4/libpod/define"
     7  	"github.com/hanks177/podman/v4/pkg/domain/entities/reports"
     8  	"github.com/hanks177/podman/v4/pkg/domain/entities/types"
     9  )
    10  
    11  // ServiceOptions provides the input for starting an API and sidecar pprof services
    12  type ServiceOptions struct {
    13  	CorsHeaders string        // Cross-Origin Resource Sharing (CORS) headers
    14  	PProfAddr   string        // Network address to bind pprof profiles service
    15  	Timeout     time.Duration // Duration of inactivity the service should wait before shutting down
    16  	URI         string        // Path to unix domain socket service should listen on
    17  }
    18  
    19  // SystemPruneOptions provides options to prune system.
    20  type SystemPruneOptions struct {
    21  	All     bool
    22  	Volume  bool
    23  	Filters map[string][]string `json:"filters" schema:"filters"`
    24  }
    25  
    26  // SystemPruneReport provides report after system prune is executed.
    27  type SystemPruneReport struct {
    28  	PodPruneReport        []*PodPruneReport
    29  	ContainerPruneReports []*reports.PruneReport
    30  	ImagePruneReports     []*reports.PruneReport
    31  	VolumePruneReports    []*reports.PruneReport
    32  	ReclaimedSpace        uint64
    33  }
    34  
    35  // SystemMigrateOptions describes the options needed for the
    36  // cli to migrate runtimes of containers
    37  type SystemMigrateOptions struct {
    38  	NewRuntime string
    39  }
    40  
    41  // SystemDfOptions describes the options for getting df information
    42  type SystemDfOptions struct {
    43  	Format  string
    44  	Verbose bool
    45  }
    46  
    47  // SystemDfReport describes the response for df information
    48  type SystemDfReport struct {
    49  	Images     []*SystemDfImageReport
    50  	Containers []*SystemDfContainerReport
    51  	Volumes    []*SystemDfVolumeReport
    52  }
    53  
    54  // SystemDfImageReport describes an image for use with df
    55  type SystemDfImageReport struct {
    56  	Repository string
    57  	Tag        string
    58  	ImageID    string
    59  	Created    time.Time
    60  	Size       int64
    61  	SharedSize int64
    62  	UniqueSize int64
    63  	Containers int
    64  }
    65  
    66  // SystemDfContainerReport describes a container for use with df
    67  type SystemDfContainerReport struct {
    68  	ContainerID  string
    69  	Image        string
    70  	Command      []string
    71  	LocalVolumes int
    72  	Size         int64
    73  	RWSize       int64
    74  	Created      time.Time
    75  	Status       string
    76  	Names        string
    77  }
    78  
    79  // SystemDfVolumeReport describes a volume and its size
    80  type SystemDfVolumeReport struct {
    81  	VolumeName      string
    82  	Links           int
    83  	Size            int64
    84  	ReclaimableSize int64
    85  }
    86  
    87  // SystemResetOptions describes the options for resetting your
    88  // container runtime storage, etc
    89  type SystemResetOptions struct {
    90  	Force bool
    91  }
    92  
    93  // SystemVersionReport describes version information about the running Podman service
    94  type SystemVersionReport struct {
    95  	// Always populated
    96  	Client *define.Version `json:",omitempty"`
    97  	// May be populated, when in tunnel mode
    98  	Server *define.Version `json:",omitempty"`
    99  }
   100  
   101  // SystemUnshareOptions describes the options for the unshare command
   102  type SystemUnshareOptions struct {
   103  	RootlessNetNS bool
   104  }
   105  
   106  type ComponentVersion struct {
   107  	types.Version
   108  }
   109  
   110  // ListRegistriesReport is the report when querying for a sorted list of
   111  // registries which may be contacted during certain operations.
   112  type ListRegistriesReport struct {
   113  	Registries []string
   114  }
   115  
   116  // swagger:model AuthConfig
   117  type AuthConfig struct {
   118  	types.AuthConfig
   119  }
   120  
   121  // AuthReport describes the response for authentication check
   122  type AuthReport struct {
   123  	IdentityToken string
   124  	Status        string
   125  }