123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- package registry
- type SearchResult struct {
- StarCount int `json:"star_count"`
- IsOfficial bool `json:"is_official"`
- Name string `json:"name"`
- IsTrusted bool `json:"is_trusted"`
- Description string `json:"description"`
- }
- type SearchResults struct {
- Query string `json:"query"`
- NumResults int `json:"num_results"`
- Results []SearchResult `json:"results"`
- }
- type RepositoryData struct {
- ImgList map[string]*ImgData
- Endpoints []string
- Tokens []string
- }
- type ImgData struct {
- ID string `json:"id"`
- Checksum string `json:"checksum,omitempty"`
- ChecksumPayload string `json:"-"`
- Tag string `json:",omitempty"`
- }
- type RegistryInfo struct {
- Version string `json:"version"`
- Standalone bool `json:"standalone"`
- }
- type FSLayer struct {
- BlobSum string `json:"blobSum"`
- }
- type ManifestHistory struct {
- V1Compatibility string `json:"v1Compatibility"`
- }
- type ManifestData struct {
- Name string `json:"name"`
- Tag string `json:"tag"`
- Architecture string `json:"architecture"`
- FSLayers []*FSLayer `json:"fsLayers"`
- History []*ManifestHistory `json:"history"`
- SchemaVersion int `json:"schemaVersion"`
- }
- type APIVersion int
- func (av APIVersion) String() string {
- return apiVersions[av]
- }
- var DefaultAPIVersion APIVersion = APIVersion1
- var apiVersions = map[APIVersion]string{
- 1: "v1",
- 2: "v2",
- }
- const (
- APIVersion1 = iota + 1
- APIVersion2
- )
- // RepositoryInfo Examples:
- // {
- // "Index" : {
- // "Name" : "docker.io",
- // "Mirrors" : ["https://registry-2.docker.io/v1/", "https://registry-3.docker.io/v1/"],
- // "Secure" : true,
- // "Official" : true,
- // },
- // "RemoteName" : "library/debian",
- // "LocalName" : "debian",
- // "CanonicalName" : "docker.io/debian"
- // "Official" : true,
- // }
- // {
- // "Index" : {
- // "Name" : "127.0.0.1:5000",
- // "Mirrors" : [],
- // "Secure" : false,
- // "Official" : false,
- // },
- // "RemoteName" : "user/repo",
- // "LocalName" : "127.0.0.1:5000/user/repo",
- // "CanonicalName" : "127.0.0.1:5000/user/repo",
- // "Official" : false,
- // }
- type IndexInfo struct {
- Name string
- Mirrors []string
- Secure bool
- Official bool
- }
- type RepositoryInfo struct {
- Index *IndexInfo
- RemoteName string
- LocalName string
- CanonicalName string
- Official bool
- }
|