提交 f3fd7793 编写于 作者: O openeuler-ci-bot 提交者: Gitee

!46 support import rootfs to be image

Merge pull request !46 from wangfengtu/support_import
......@@ -425,6 +425,20 @@ func (s *grpcImageService) LoadImage(ctx context.Context, req *pb.LoadImageReque
return &pb.LoadImageResponose{Outmsg: outmsg}, err
}
// Import rootfs to be image
func (s *grpcImageService) Import(ctx context.Context, req *pb.ImportRequest) (*pb.ImportResponose, error) {
id, err := importImage(s.gopts, req.File, req.Tag)
if err != nil {
return &pb.ImportResponose{
Id: id,
Errmsg: err.Error(),
Cc: 1,
}, err
}
return &pb.ImportResponose{Id: id}, err
}
func copyImageFsUsage(fsUsage []*FilesystemUsage) (pbFsUsage []*pb.FilesystemUsage) {
for _, usage := range fsUsage {
element := &pb.FilesystemUsage{
......
// Copyright (c) Huawei Technologies Co., Ltd. 2020. All rights reserved.
// iSulad-img licensed under the Mulan PSL v2.
// You can use this software according to the terms and conditions of the Mulan PSL v2.
// You may obtain a copy of Mulan PSL v2 at:
// http://license.coscl.org.cn/MulanPSL2
// THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
// PURPOSE.
// See the Mulan PSL v2 for more details.
// Description: iSulad image kit
// Author: wangfengtu
// Create: 2020-05-25
package main
import (
"context"
"fmt"
"os"
"github.com/containers/image/copy"
"github.com/containers/image/storage"
"github.com/containers/image/transports/alltransports"
"github.com/containers/image/types"
)
func importImage(gopts *globalOptions, input string, destTag string) (string, error) {
if input == "" {
return "", fmt.Errorf("Missing input tarball name")
}
imageService, err := getImageService(gopts)
if err != nil {
return "", fmt.Errorf("get image service failed: %v", err)
}
policyContext, err := getPolicyContext(gopts)
if err != nil {
return "", fmt.Errorf("Error loading trust policy: %v", err)
}
defer policyContext.Destroy()
store, err := getStorageStore(gopts)
if err != nil {
return "", err
}
// Make sure file exist, so we can make sure the following formated input always valid
_, err = os.Stat(input)
if err != nil {
return "", err
}
// Format: tarball:/path/rootfs.tar
formatedInput := "tarball:" + input
srcRef, err := alltransports.ParseImageName(formatedInput)
if err != nil {
return "", fmt.Errorf("Invalid input name %s: %v", formatedInput, err)
}
destRef, err := storage.Transport.ParseStoreReference(store, destTag)
if err != nil {
return "", fmt.Errorf("Invalid tag %s: %v", destTag, err)
}
_, err = copy.Image(context.Background(), policyContext, destRef, srcRef, &copy.Options{
ReportWriter: os.Stdout,
})
if err != nil {
return "", fmt.Errorf("Import rootfs %v failed: %v", input, err)
}
status, err := imageService.GetOneImage(&types.SystemContext{}, destTag)
if err != nil {
return "", err
}
fmt.Println(status.ID)
return status.ID, err
}
%global _version 2.0.0
%global _release 20200422.083956.git12ad23f0
%global _release 20200527.141725.git98f65913
Name: iSulad-img
Version: %{_version}
Release: %{_release}
......
......@@ -43,7 +43,7 @@ func (x Protocol) String() string {
return proto.EnumName(Protocol_name, int32(x))
}
func (Protocol) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{0}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{0}
}
type MountPropagation int32
......@@ -73,7 +73,7 @@ func (x MountPropagation) String() string {
return proto.EnumName(MountPropagation_name, int32(x))
}
func (MountPropagation) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{1}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{1}
}
type HealthCheckRequest struct {
......@@ -86,7 +86,7 @@ func (m *HealthCheckRequest) Reset() { *m = HealthCheckRequest{} }
func (m *HealthCheckRequest) String() string { return proto.CompactTextString(m) }
func (*HealthCheckRequest) ProtoMessage() {}
func (*HealthCheckRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{0}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{0}
}
func (m *HealthCheckRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HealthCheckRequest.Unmarshal(m, b)
......@@ -118,7 +118,7 @@ func (m *HealthCheckResponse) Reset() { *m = HealthCheckResponse{} }
func (m *HealthCheckResponse) String() string { return proto.CompactTextString(m) }
func (*HealthCheckResponse) ProtoMessage() {}
func (*HealthCheckResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{1}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{1}
}
func (m *HealthCheckResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HealthCheckResponse.Unmarshal(m, b)
......@@ -165,7 +165,7 @@ func (m *LoginRequest) Reset() { *m = LoginRequest{} }
func (m *LoginRequest) String() string { return proto.CompactTextString(m) }
func (*LoginRequest) ProtoMessage() {}
func (*LoginRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{2}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{2}
}
func (m *LoginRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LoginRequest.Unmarshal(m, b)
......@@ -218,7 +218,7 @@ func (m *LoginResponse) Reset() { *m = LoginResponse{} }
func (m *LoginResponse) String() string { return proto.CompactTextString(m) }
func (*LoginResponse) ProtoMessage() {}
func (*LoginResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{3}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{3}
}
func (m *LoginResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LoginResponse.Unmarshal(m, b)
......@@ -263,7 +263,7 @@ func (m *LogoutRequest) Reset() { *m = LogoutRequest{} }
func (m *LogoutRequest) String() string { return proto.CompactTextString(m) }
func (*LogoutRequest) ProtoMessage() {}
func (*LogoutRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{4}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{4}
}
func (m *LogoutRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LogoutRequest.Unmarshal(m, b)
......@@ -302,7 +302,7 @@ func (m *LogoutResponse) Reset() { *m = LogoutResponse{} }
func (m *LogoutResponse) String() string { return proto.CompactTextString(m) }
func (*LogoutResponse) ProtoMessage() {}
func (*LogoutResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{5}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{5}
}
func (m *LogoutResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LogoutResponse.Unmarshal(m, b)
......@@ -351,7 +351,7 @@ func (m *ContainerExportRequest) Reset() { *m = ContainerExportRequest{}
func (m *ContainerExportRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerExportRequest) ProtoMessage() {}
func (*ContainerExportRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{6}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{6}
}
func (m *ContainerExportRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerExportRequest.Unmarshal(m, b)
......@@ -418,7 +418,7 @@ func (m *ContainerExportResponse) Reset() { *m = ContainerExportResponse
func (m *ContainerExportResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerExportResponse) ProtoMessage() {}
func (*ContainerExportResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{7}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{7}
}
func (m *ContainerExportResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerExportResponse.Unmarshal(m, b)
......@@ -464,7 +464,7 @@ func (m *LoadImageRequest) Reset() { *m = LoadImageRequest{} }
func (m *LoadImageRequest) String() string { return proto.CompactTextString(m) }
func (*LoadImageRequest) ProtoMessage() {}
func (*LoadImageRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{8}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{8}
}
func (m *LoadImageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LoadImageRequest.Unmarshal(m, b)
......@@ -511,7 +511,7 @@ func (m *LoadImageResponose) Reset() { *m = LoadImageResponose{} }
func (m *LoadImageResponose) String() string { return proto.CompactTextString(m) }
func (*LoadImageResponose) ProtoMessage() {}
func (*LoadImageResponose) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{9}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{9}
}
func (m *LoadImageResponose) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LoadImageResponose.Unmarshal(m, b)
......@@ -552,6 +552,106 @@ func (m *LoadImageResponose) GetCc() uint32 {
return 0
}
type ImportRequest struct {
File string `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"`
Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ImportRequest) Reset() { *m = ImportRequest{} }
func (m *ImportRequest) String() string { return proto.CompactTextString(m) }
func (*ImportRequest) ProtoMessage() {}
func (*ImportRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_231213ed9612ec4a, []int{10}
}
func (m *ImportRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImportRequest.Unmarshal(m, b)
}
func (m *ImportRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ImportRequest.Marshal(b, m, deterministic)
}
func (dst *ImportRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ImportRequest.Merge(dst, src)
}
func (m *ImportRequest) XXX_Size() int {
return xxx_messageInfo_ImportRequest.Size(m)
}
func (m *ImportRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ImportRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ImportRequest proto.InternalMessageInfo
func (m *ImportRequest) GetFile() string {
if m != nil {
return m.File
}
return ""
}
func (m *ImportRequest) GetTag() string {
if m != nil {
return m.Tag
}
return ""
}
type ImportResponose struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Errmsg string `protobuf:"bytes,2,opt,name=errmsg,proto3" json:"errmsg,omitempty"`
Cc uint32 `protobuf:"varint,3,opt,name=cc,proto3" json:"cc,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ImportResponose) Reset() { *m = ImportResponose{} }
func (m *ImportResponose) String() string { return proto.CompactTextString(m) }
func (*ImportResponose) ProtoMessage() {}
func (*ImportResponose) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_231213ed9612ec4a, []int{11}
}
func (m *ImportResponose) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImportResponose.Unmarshal(m, b)
}
func (m *ImportResponose) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ImportResponose.Marshal(b, m, deterministic)
}
func (dst *ImportResponose) XXX_Merge(src proto.Message) {
xxx_messageInfo_ImportResponose.Merge(dst, src)
}
func (m *ImportResponose) XXX_Size() int {
return xxx_messageInfo_ImportResponose.Size(m)
}
func (m *ImportResponose) XXX_DiscardUnknown() {
xxx_messageInfo_ImportResponose.DiscardUnknown(m)
}
var xxx_messageInfo_ImportResponose proto.InternalMessageInfo
func (m *ImportResponose) GetId() string {
if m != nil {
return m.Id
}
return ""
}
func (m *ImportResponose) GetErrmsg() string {
if m != nil {
return m.Errmsg
}
return ""
}
func (m *ImportResponose) GetCc() uint32 {
if m != nil {
return m.Cc
}
return 0
}
type GraphdriverStatusRequest struct {
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
......@@ -562,7 +662,7 @@ func (m *GraphdriverStatusRequest) Reset() { *m = GraphdriverStatusReque
func (m *GraphdriverStatusRequest) String() string { return proto.CompactTextString(m) }
func (*GraphdriverStatusRequest) ProtoMessage() {}
func (*GraphdriverStatusRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{10}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{12}
}
func (m *GraphdriverStatusRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GraphdriverStatusRequest.Unmarshal(m, b)
......@@ -595,7 +695,7 @@ func (m *GraphdriverStatusResponse) Reset() { *m = GraphdriverStatusResp
func (m *GraphdriverStatusResponse) String() string { return proto.CompactTextString(m) }
func (*GraphdriverStatusResponse) ProtoMessage() {}
func (*GraphdriverStatusResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{11}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{13}
}
func (m *GraphdriverStatusResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GraphdriverStatusResponse.Unmarshal(m, b)
......@@ -647,7 +747,7 @@ func (m *GraphdriverMetadataRequest) Reset() { *m = GraphdriverMetadataR
func (m *GraphdriverMetadataRequest) String() string { return proto.CompactTextString(m) }
func (*GraphdriverMetadataRequest) ProtoMessage() {}
func (*GraphdriverMetadataRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{12}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{14}
}
func (m *GraphdriverMetadataRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GraphdriverMetadataRequest.Unmarshal(m, b)
......@@ -688,7 +788,7 @@ func (m *GraphdriverMetadataResponse) Reset() { *m = GraphdriverMetadata
func (m *GraphdriverMetadataResponse) String() string { return proto.CompactTextString(m) }
func (*GraphdriverMetadataResponse) ProtoMessage() {}
func (*GraphdriverMetadataResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{13}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{15}
}
func (m *GraphdriverMetadataResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GraphdriverMetadataResponse.Unmarshal(m, b)
......@@ -747,7 +847,7 @@ func (m *ContainerFsUsageRequest) Reset() { *m = ContainerFsUsageRequest
func (m *ContainerFsUsageRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerFsUsageRequest) ProtoMessage() {}
func (*ContainerFsUsageRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{14}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{16}
}
func (m *ContainerFsUsageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerFsUsageRequest.Unmarshal(m, b)
......@@ -787,7 +887,7 @@ func (m *ContainerFsUsageResponse) Reset() { *m = ContainerFsUsageRespon
func (m *ContainerFsUsageResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerFsUsageResponse) ProtoMessage() {}
func (*ContainerFsUsageResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{15}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{17}
}
func (m *ContainerFsUsageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerFsUsageResponse.Unmarshal(m, b)
......@@ -840,7 +940,7 @@ func (m *ContainerUmountRequest) Reset() { *m = ContainerUmountRequest{}
func (m *ContainerUmountRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerUmountRequest) ProtoMessage() {}
func (*ContainerUmountRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{16}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{18}
}
func (m *ContainerUmountRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerUmountRequest.Unmarshal(m, b)
......@@ -886,7 +986,7 @@ func (m *ContainerUmountResponse) Reset() { *m = ContainerUmountResponse
func (m *ContainerUmountResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerUmountResponse) ProtoMessage() {}
func (*ContainerUmountResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{17}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{19}
}
func (m *ContainerUmountResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerUmountResponse.Unmarshal(m, b)
......@@ -931,7 +1031,7 @@ func (m *ContainerMountRequest) Reset() { *m = ContainerMountRequest{} }
func (m *ContainerMountRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerMountRequest) ProtoMessage() {}
func (*ContainerMountRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{18}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{20}
}
func (m *ContainerMountRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerMountRequest.Unmarshal(m, b)
......@@ -970,7 +1070,7 @@ func (m *ContainerMountResponse) Reset() { *m = ContainerMountResponse{}
func (m *ContainerMountResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerMountResponse) ProtoMessage() {}
func (*ContainerMountResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{19}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{21}
}
func (m *ContainerMountResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerMountResponse.Unmarshal(m, b)
......@@ -1015,7 +1115,7 @@ func (m *ContainerRemoveRequest) Reset() { *m = ContainerRemoveRequest{}
func (m *ContainerRemoveRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerRemoveRequest) ProtoMessage() {}
func (*ContainerRemoveRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{20}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{22}
}
func (m *ContainerRemoveRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerRemoveRequest.Unmarshal(m, b)
......@@ -1054,7 +1154,7 @@ func (m *ContainerRemoveResponse) Reset() { *m = ContainerRemoveResponse
func (m *ContainerRemoveResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerRemoveResponse) ProtoMessage() {}
func (*ContainerRemoveResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{21}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{23}
}
func (m *ContainerRemoveResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerRemoveResponse.Unmarshal(m, b)
......@@ -1102,7 +1202,7 @@ func (m *ContainerPrepareRequest) Reset() { *m = ContainerPrepareRequest
func (m *ContainerPrepareRequest) String() string { return proto.CompactTextString(m) }
func (*ContainerPrepareRequest) ProtoMessage() {}
func (*ContainerPrepareRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{22}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{24}
}
func (m *ContainerPrepareRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerPrepareRequest.Unmarshal(m, b)
......@@ -1164,7 +1264,7 @@ func (m *ContainerPrepareResponse) Reset() { *m = ContainerPrepareRespon
func (m *ContainerPrepareResponse) String() string { return proto.CompactTextString(m) }
func (*ContainerPrepareResponse) ProtoMessage() {}
func (*ContainerPrepareResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{23}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{25}
}
func (m *ContainerPrepareResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ContainerPrepareResponse.Unmarshal(m, b)
......@@ -1222,7 +1322,7 @@ func (m *ListContainersRequest) Reset() { *m = ListContainersRequest{} }
func (m *ListContainersRequest) String() string { return proto.CompactTextString(m) }
func (*ListContainersRequest) ProtoMessage() {}
func (*ListContainersRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{24}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{26}
}
func (m *ListContainersRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListContainersRequest.Unmarshal(m, b)
......@@ -1255,7 +1355,7 @@ func (m *ListContainersResponse) Reset() { *m = ListContainersResponse{}
func (m *ListContainersResponse) String() string { return proto.CompactTextString(m) }
func (*ListContainersResponse) ProtoMessage() {}
func (*ListContainersResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{25}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{27}
}
func (m *ListContainersResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListContainersResponse.Unmarshal(m, b)
......@@ -1314,7 +1414,7 @@ func (m *DNSConfig) Reset() { *m = DNSConfig{} }
func (m *DNSConfig) String() string { return proto.CompactTextString(m) }
func (*DNSConfig) ProtoMessage() {}
func (*DNSConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{26}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{28}
}
func (m *DNSConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DNSConfig.Unmarshal(m, b)
......@@ -1374,7 +1474,7 @@ func (m *PortMapping) Reset() { *m = PortMapping{} }
func (m *PortMapping) String() string { return proto.CompactTextString(m) }
func (*PortMapping) ProtoMessage() {}
func (*PortMapping) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{27}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{29}
}
func (m *PortMapping) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PortMapping.Unmarshal(m, b)
......@@ -1443,7 +1543,7 @@ func (m *Mount) Reset() { *m = Mount{} }
func (m *Mount) String() string { return proto.CompactTextString(m) }
func (*Mount) ProtoMessage() {}
func (*Mount) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{28}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{30}
}
func (m *Mount) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Mount.Unmarshal(m, b)
......@@ -1515,7 +1615,7 @@ func (m *NamespaceOption) Reset() { *m = NamespaceOption{} }
func (m *NamespaceOption) String() string { return proto.CompactTextString(m) }
func (*NamespaceOption) ProtoMessage() {}
func (*NamespaceOption) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{29}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{31}
}
func (m *NamespaceOption) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NamespaceOption.Unmarshal(m, b)
......@@ -1569,7 +1669,7 @@ func (m *Int64Value) Reset() { *m = Int64Value{} }
func (m *Int64Value) String() string { return proto.CompactTextString(m) }
func (*Int64Value) ProtoMessage() {}
func (*Int64Value) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{30}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{32}
}
func (m *Int64Value) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Int64Value.Unmarshal(m, b)
......@@ -1611,7 +1711,7 @@ func (m *SELinuxOption) Reset() { *m = SELinuxOption{} }
func (m *SELinuxOption) String() string { return proto.CompactTextString(m) }
func (*SELinuxOption) ProtoMessage() {}
func (*SELinuxOption) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{31}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{33}
}
func (m *SELinuxOption) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SELinuxOption.Unmarshal(m, b)
......@@ -1699,7 +1799,7 @@ func (m *LinuxSandboxSecurityContext) Reset() { *m = LinuxSandboxSecurit
func (m *LinuxSandboxSecurityContext) String() string { return proto.CompactTextString(m) }
func (*LinuxSandboxSecurityContext) ProtoMessage() {}
func (*LinuxSandboxSecurityContext) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{32}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{34}
}
func (m *LinuxSandboxSecurityContext) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LinuxSandboxSecurityContext.Unmarshal(m, b)
......@@ -1788,7 +1888,7 @@ func (m *LinuxPodSandboxConfig) Reset() { *m = LinuxPodSandboxConfig{} }
func (m *LinuxPodSandboxConfig) String() string { return proto.CompactTextString(m) }
func (*LinuxPodSandboxConfig) ProtoMessage() {}
func (*LinuxPodSandboxConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{33}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{35}
}
func (m *LinuxPodSandboxConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LinuxPodSandboxConfig.Unmarshal(m, b)
......@@ -1851,7 +1951,7 @@ func (m *PodSandboxMetadata) Reset() { *m = PodSandboxMetadata{} }
func (m *PodSandboxMetadata) String() string { return proto.CompactTextString(m) }
func (*PodSandboxMetadata) ProtoMessage() {}
func (*PodSandboxMetadata) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{34}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{36}
}
func (m *PodSandboxMetadata) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PodSandboxMetadata.Unmarshal(m, b)
......@@ -1959,7 +2059,7 @@ func (m *PodSandboxConfig) Reset() { *m = PodSandboxConfig{} }
func (m *PodSandboxConfig) String() string { return proto.CompactTextString(m) }
func (*PodSandboxConfig) ProtoMessage() {}
func (*PodSandboxConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{35}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{37}
}
func (m *PodSandboxConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PodSandboxConfig.Unmarshal(m, b)
......@@ -2049,7 +2149,7 @@ func (m *ImageSpec) Reset() { *m = ImageSpec{} }
func (m *ImageSpec) String() string { return proto.CompactTextString(m) }
func (*ImageSpec) ProtoMessage() {}
func (*ImageSpec) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{36}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{38}
}
func (m *ImageSpec) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageSpec.Unmarshal(m, b)
......@@ -2088,7 +2188,7 @@ func (m *ImageFilter) Reset() { *m = ImageFilter{} }
func (m *ImageFilter) String() string { return proto.CompactTextString(m) }
func (*ImageFilter) ProtoMessage() {}
func (*ImageFilter) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{37}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{39}
}
func (m *ImageFilter) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageFilter.Unmarshal(m, b)
......@@ -2128,7 +2228,7 @@ func (m *ListImagesRequest) Reset() { *m = ListImagesRequest{} }
func (m *ListImagesRequest) String() string { return proto.CompactTextString(m) }
func (*ListImagesRequest) ProtoMessage() {}
func (*ListImagesRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{38}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{40}
}
func (m *ListImagesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListImagesRequest.Unmarshal(m, b)
......@@ -2178,7 +2278,7 @@ func (m *HealthCheck) Reset() { *m = HealthCheck{} }
func (m *HealthCheck) String() string { return proto.CompactTextString(m) }
func (*HealthCheck) ProtoMessage() {}
func (*HealthCheck) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{39}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{41}
}
func (m *HealthCheck) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_HealthCheck.Unmarshal(m, b)
......@@ -2274,7 +2374,7 @@ func (m *Image) Reset() { *m = Image{} }
func (m *Image) String() string { return proto.CompactTextString(m) }
func (*Image) ProtoMessage() {}
func (*Image) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{40}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{42}
}
func (m *Image) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Image.Unmarshal(m, b)
......@@ -2378,7 +2478,7 @@ func (m *ListImagesResponse) Reset() { *m = ListImagesResponse{} }
func (m *ListImagesResponse) String() string { return proto.CompactTextString(m) }
func (*ListImagesResponse) ProtoMessage() {}
func (*ListImagesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{41}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{43}
}
func (m *ListImagesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListImagesResponse.Unmarshal(m, b)
......@@ -2433,7 +2533,7 @@ func (m *ImageStatusRequest) Reset() { *m = ImageStatusRequest{} }
func (m *ImageStatusRequest) String() string { return proto.CompactTextString(m) }
func (*ImageStatusRequest) ProtoMessage() {}
func (*ImageStatusRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{42}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{44}
}
func (m *ImageStatusRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageStatusRequest.Unmarshal(m, b)
......@@ -2486,7 +2586,7 @@ func (m *ImageStatusResponse) Reset() { *m = ImageStatusResponse{} }
func (m *ImageStatusResponse) String() string { return proto.CompactTextString(m) }
func (*ImageStatusResponse) ProtoMessage() {}
func (*ImageStatusResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{43}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{45}
}
func (m *ImageStatusResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageStatusResponse.Unmarshal(m, b)
......@@ -2545,7 +2645,7 @@ func (m *ImageInfoRequest) Reset() { *m = ImageInfoRequest{} }
func (m *ImageInfoRequest) String() string { return proto.CompactTextString(m) }
func (*ImageInfoRequest) ProtoMessage() {}
func (*ImageInfoRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{44}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{46}
}
func (m *ImageInfoRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageInfoRequest.Unmarshal(m, b)
......@@ -2585,7 +2685,7 @@ func (m *ImageInfoResponse) Reset() { *m = ImageInfoResponse{} }
func (m *ImageInfoResponse) String() string { return proto.CompactTextString(m) }
func (*ImageInfoResponse) ProtoMessage() {}
func (*ImageInfoResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{45}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{47}
}
func (m *ImageInfoResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageInfoResponse.Unmarshal(m, b)
......@@ -2646,7 +2746,7 @@ func (m *AuthConfig) Reset() { *m = AuthConfig{} }
func (m *AuthConfig) String() string { return proto.CompactTextString(m) }
func (*AuthConfig) ProtoMessage() {}
func (*AuthConfig) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{46}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{48}
}
func (m *AuthConfig) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AuthConfig.Unmarshal(m, b)
......@@ -2724,7 +2824,7 @@ func (m *PullImageRequest) Reset() { *m = PullImageRequest{} }
func (m *PullImageRequest) String() string { return proto.CompactTextString(m) }
func (*PullImageRequest) ProtoMessage() {}
func (*PullImageRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{47}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{49}
}
func (m *PullImageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PullImageRequest.Unmarshal(m, b)
......@@ -2780,7 +2880,7 @@ func (m *PullImageResponse) Reset() { *m = PullImageResponse{} }
func (m *PullImageResponse) String() string { return proto.CompactTextString(m) }
func (*PullImageResponse) ProtoMessage() {}
func (*PullImageResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{48}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{50}
}
func (m *PullImageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PullImageResponse.Unmarshal(m, b)
......@@ -2834,7 +2934,7 @@ func (m *RemoveImageRequest) Reset() { *m = RemoveImageRequest{} }
func (m *RemoveImageRequest) String() string { return proto.CompactTextString(m) }
func (*RemoveImageRequest) ProtoMessage() {}
func (*RemoveImageRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{49}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{51}
}
func (m *RemoveImageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveImageRequest.Unmarshal(m, b)
......@@ -2880,7 +2980,7 @@ func (m *RemoveImageResponse) Reset() { *m = RemoveImageResponse{} }
func (m *RemoveImageResponse) String() string { return proto.CompactTextString(m) }
func (*RemoveImageResponse) ProtoMessage() {}
func (*RemoveImageResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{50}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{52}
}
func (m *RemoveImageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RemoveImageResponse.Unmarshal(m, b)
......@@ -2924,7 +3024,7 @@ func (m *ImageFsInfoRequest) Reset() { *m = ImageFsInfoRequest{} }
func (m *ImageFsInfoRequest) String() string { return proto.CompactTextString(m) }
func (*ImageFsInfoRequest) ProtoMessage() {}
func (*ImageFsInfoRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{51}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{53}
}
func (m *ImageFsInfoRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageFsInfoRequest.Unmarshal(m, b)
......@@ -2957,7 +3057,7 @@ func (m *UInt64Value) Reset() { *m = UInt64Value{} }
func (m *UInt64Value) String() string { return proto.CompactTextString(m) }
func (*UInt64Value) ProtoMessage() {}
func (*UInt64Value) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{52}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{54}
}
func (m *UInt64Value) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UInt64Value.Unmarshal(m, b)
......@@ -2997,7 +3097,7 @@ func (m *StorageIdentifier) Reset() { *m = StorageIdentifier{} }
func (m *StorageIdentifier) String() string { return proto.CompactTextString(m) }
func (*StorageIdentifier) ProtoMessage() {}
func (*StorageIdentifier) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{53}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{55}
}
func (m *StorageIdentifier) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_StorageIdentifier.Unmarshal(m, b)
......@@ -3047,7 +3147,7 @@ func (m *FilesystemUsage) Reset() { *m = FilesystemUsage{} }
func (m *FilesystemUsage) String() string { return proto.CompactTextString(m) }
func (*FilesystemUsage) ProtoMessage() {}
func (*FilesystemUsage) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{54}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{56}
}
func (m *FilesystemUsage) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FilesystemUsage.Unmarshal(m, b)
......@@ -3109,7 +3209,7 @@ func (m *ImageFsInfoResponse) Reset() { *m = ImageFsInfoResponse{} }
func (m *ImageFsInfoResponse) String() string { return proto.CompactTextString(m) }
func (*ImageFsInfoResponse) ProtoMessage() {}
func (*ImageFsInfoResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{55}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{57}
}
func (m *ImageFsInfoResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ImageFsInfoResponse.Unmarshal(m, b)
......@@ -3162,7 +3262,7 @@ func (m *TagImageRequest) Reset() { *m = TagImageRequest{} }
func (m *TagImageRequest) String() string { return proto.CompactTextString(m) }
func (*TagImageRequest) ProtoMessage() {}
func (*TagImageRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{56}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{58}
}
func (m *TagImageRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TagImageRequest.Unmarshal(m, b)
......@@ -3208,7 +3308,7 @@ func (m *TagImageResponse) Reset() { *m = TagImageResponse{} }
func (m *TagImageResponse) String() string { return proto.CompactTextString(m) }
func (*TagImageResponse) ProtoMessage() {}
func (*TagImageResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_isula_image_d11549ceb17c7287, []int{57}
return fileDescriptor_isula_image_231213ed9612ec4a, []int{59}
}
func (m *TagImageResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TagImageResponse.Unmarshal(m, b)
......@@ -3253,6 +3353,8 @@ func init() {
proto.RegisterType((*ContainerExportResponse)(nil), "isula.ContainerExportResponse")
proto.RegisterType((*LoadImageRequest)(nil), "isula.LoadImageRequest")
proto.RegisterType((*LoadImageResponose)(nil), "isula.LoadImageResponose")
proto.RegisterType((*ImportRequest)(nil), "isula.ImportRequest")
proto.RegisterType((*ImportResponose)(nil), "isula.ImportResponose")
proto.RegisterType((*GraphdriverStatusRequest)(nil), "isula.GraphdriverStatusRequest")
proto.RegisterType((*GraphdriverStatusResponse)(nil), "isula.GraphdriverStatusResponse")
proto.RegisterType((*GraphdriverMetadataRequest)(nil), "isula.GraphdriverMetadataRequest")
......@@ -3341,6 +3443,8 @@ type ImageServiceClient interface {
ImageFsInfo(ctx context.Context, in *ImageFsInfoRequest, opts ...grpc.CallOption) (*ImageFsInfoResponse, error)
// Load image from file
LoadImage(ctx context.Context, in *LoadImageRequest, opts ...grpc.CallOption) (*LoadImageResponose, error)
// Import rootfs to be image
Import(ctx context.Context, in *ImportRequest, opts ...grpc.CallOption) (*ImportResponose, error)
// isulad image services
// get all Container rootfs
ListContainers(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error)
......@@ -3441,6 +3545,15 @@ func (c *imageServiceClient) LoadImage(ctx context.Context, in *LoadImageRequest
return out, nil
}
func (c *imageServiceClient) Import(ctx context.Context, in *ImportRequest, opts ...grpc.CallOption) (*ImportResponose, error) {
out := new(ImportResponose)
err := c.cc.Invoke(ctx, "/isula.ImageService/Import", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *imageServiceClient) ListContainers(ctx context.Context, in *ListContainersRequest, opts ...grpc.CallOption) (*ListContainersResponse, error) {
out := new(ListContainersResponse)
err := c.cc.Invoke(ctx, "/isula.ImageService/ListContainers", in, out, opts...)
......@@ -3578,6 +3691,8 @@ type ImageServiceServer interface {
ImageFsInfo(context.Context, *ImageFsInfoRequest) (*ImageFsInfoResponse, error)
// Load image from file
LoadImage(context.Context, *LoadImageRequest) (*LoadImageResponose, error)
// Import rootfs to be image
Import(context.Context, *ImportRequest) (*ImportResponose, error)
// isulad image services
// get all Container rootfs
ListContainers(context.Context, *ListContainersRequest) (*ListContainersResponse, error)
......@@ -3737,6 +3852,24 @@ func _ImageService_LoadImage_Handler(srv interface{}, ctx context.Context, dec f
return interceptor(ctx, in, info, handler)
}
func _ImageService_Import_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ImportRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ImageServiceServer).Import(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/isula.ImageService/Import",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ImageServiceServer).Import(ctx, req.(*ImportRequest))
}
return interceptor(ctx, in, info, handler)
}
func _ImageService_ListContainers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListContainersRequest)
if err := dec(in); err != nil {
......@@ -4003,6 +4136,10 @@ var _ImageService_serviceDesc = grpc.ServiceDesc{
MethodName: "LoadImage",
Handler: _ImageService_LoadImage_Handler,
},
{
MethodName: "Import",
Handler: _ImageService_Import_Handler,
},
{
MethodName: "ListContainers",
Handler: _ImageService_ListContainers_Handler,
......@@ -4061,180 +4198,182 @@ var _ImageService_serviceDesc = grpc.ServiceDesc{
}
func init() {
proto.RegisterFile("isula/isula_image.proto", fileDescriptor_isula_image_d11549ceb17c7287)
}
var fileDescriptor_isula_image_d11549ceb17c7287 = []byte{
// 2725 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x19, 0xcb, 0x72, 0x1b, 0xc7,
0x91, 0x00, 0x08, 0x12, 0x68, 0xf0, 0x01, 0x0e, 0x69, 0x11, 0x84, 0x24, 0x5b, 0x5a, 0xd9, 0x91,
0xa2, 0x24, 0xb4, 0x4d, 0xdb, 0x91, 0x6c, 0x97, 0x5c, 0xa6, 0xa9, 0x87, 0x99, 0xe2, 0x03, 0xb5,
0x24, 0x5d, 0xae, 0x72, 0x95, 0xb7, 0x56, 0xbb, 0x03, 0x70, 0x23, 0x60, 0x67, 0x33, 0x33, 0x4b,
0x8b, 0x39, 0xa5, 0x5c, 0x95, 0x5b, 0xee, 0x39, 0xe7, 0x9e, 0x2f, 0xc8, 0x29, 0xf7, 0x54, 0x52,
0x39, 0xe4, 0x13, 0x72, 0xce, 0x37, 0xa4, 0xe6, 0x89, 0x59, 0x3c, 0x44, 0xc2, 0x97, 0xad, 0xed,
0x9e, 0xee, 0x9e, 0x9e, 0x7e, 0x4d, 0xcf, 0x0c, 0x6c, 0x26, 0x2c, 0xef, 0x87, 0xef, 0xcb, 0x6f,
0x90, 0x0c, 0xc2, 0x1e, 0xde, 0xce, 0x28, 0xe1, 0x04, 0x55, 0x25, 0xca, 0xdb, 0x00, 0xf4, 0x35,
0x0e, 0xfb, 0xfc, 0x7c, 0xef, 0x1c, 0x47, 0xaf, 0x7c, 0xfc, 0xbb, 0x1c, 0x33, 0xee, 0x3d, 0x81,
0xf5, 0x02, 0x96, 0x65, 0x24, 0x65, 0x18, 0xdd, 0x80, 0x05, 0x4c, 0xe9, 0x80, 0xf5, 0x5a, 0xa5,
0x3b, 0xa5, 0x07, 0x75, 0x5f, 0x43, 0x68, 0x05, 0xca, 0x51, 0xd4, 0x2a, 0xdf, 0x29, 0x3d, 0x58,
0xf6, 0xcb, 0x51, 0xe4, 0x7d, 0x0f, 0x4b, 0x07, 0xa4, 0x97, 0xa4, 0x5a, 0x9c, 0xe0, 0x63, 0x98,
0x5e, 0x60, 0x6a, 0xf8, 0x14, 0x84, 0xda, 0x50, 0xcb, 0x19, 0xa6, 0x69, 0x38, 0xc0, 0x92, 0xbb,
0xee, 0x5b, 0x58, 0x8c, 0x65, 0x21, 0x63, 0x3f, 0x10, 0x1a, 0xb7, 0x2a, 0x6a, 0xcc, 0xc0, 0xde,
0x23, 0x58, 0xd6, 0xf2, 0x67, 0x54, 0xec, 0xbe, 0x64, 0x24, 0x39, 0xbf, 0x42, 0x33, 0xef, 0x31,
0xac, 0x18, 0xc2, 0x19, 0xa7, 0xf8, 0x63, 0x09, 0x6e, 0xec, 0x91, 0x94, 0x87, 0x49, 0x8a, 0xe9,
0xb3, 0xd7, 0x19, 0xa1, 0x76, 0xb2, 0x4d, 0x58, 0x14, 0x4b, 0x0b, 0x92, 0xd8, 0xc8, 0x10, 0xe0,
0x7e, 0x2c, 0x64, 0x93, 0x9c, 0x67, 0x39, 0xd7, 0x56, 0xd0, 0x10, 0x6a, 0x42, 0x25, 0x4f, 0xd4,
0xf2, 0x97, 0x7d, 0xf1, 0x2b, 0x30, 0xbd, 0x24, 0x6e, 0xcd, 0x2b, 0x4c, 0x2f, 0x51, 0xbc, 0xdd,
0x2e, 0xc3, 0xbc, 0x55, 0x95, 0x48, 0x0d, 0x79, 0xbb, 0xb0, 0x39, 0xa6, 0xc6, 0x8c, 0x4b, 0x79,
0x0c, 0xcd, 0x03, 0x12, 0xc6, 0xfb, 0x22, 0x6a, 0xcc, 0x1a, 0x10, 0xcc, 0x77, 0x93, 0x3e, 0xd6,
0x9c, 0xf2, 0x5f, 0x28, 0xc5, 0xc3, 0x9e, 0xd6, 0x5d, 0xfc, 0x7a, 0xa7, 0x80, 0x1c, 0x4e, 0x31,
0x2d, 0x51, 0xf3, 0x92, 0x9c, 0x3b, 0xf3, 0x2a, 0xc8, 0xd1, 0xa7, 0x3c, 0x41, 0x9f, 0x8a, 0xd5,
0xa7, 0x0d, 0xad, 0x17, 0x34, 0xcc, 0xce, 0x63, 0x9a, 0x5c, 0x60, 0x7a, 0xc2, 0x43, 0x9e, 0x33,
0x13, 0xb1, 0xdf, 0xc1, 0xd6, 0x84, 0xb1, 0xe1, 0x82, 0x99, 0xc4, 0x58, 0x2f, 0x4b, 0xe8, 0xda,
0x13, 0x7f, 0x02, 0x6d, 0x47, 0xf8, 0x21, 0xe6, 0x61, 0x1c, 0xf2, 0xf0, 0x2a, 0xb7, 0x7a, 0xff,
0x2d, 0xc1, 0xcd, 0x89, 0x7c, 0x5a, 0xad, 0x03, 0xa8, 0x0d, 0x34, 0xae, 0x55, 0xba, 0x53, 0x79,
0xd0, 0xd8, 0xf9, 0x60, 0x5b, 0x66, 0xe5, 0xf6, 0x1b, 0xb8, 0xb6, 0x0d, 0xe2, 0x59, 0xca, 0xe9,
0xa5, 0x6f, 0x25, 0x08, 0xcf, 0x38, 0x89, 0x24, 0xff, 0x9d, 0x05, 0x56, 0x26, 0x2c, 0x70, 0xde,
0x2c, 0xb0, 0xfd, 0x39, 0x2c, 0x17, 0xc4, 0x0a, 0x97, 0xbe, 0xc2, 0x97, 0x7a, 0x3d, 0xe2, 0x17,
0x6d, 0x40, 0xf5, 0x22, 0xec, 0xe7, 0x46, 0xbe, 0x02, 0x3e, 0x2b, 0x3f, 0x2e, 0x79, 0x3b, 0x4e,
0xa4, 0x3d, 0x67, 0x67, 0xcc, 0x89, 0x96, 0xa9, 0xa6, 0xf9, 0x16, 0x5a, 0xe3, 0x3c, 0xda, 0x2c,
0x1b, 0x50, 0xcd, 0x05, 0x42, 0xb3, 0x28, 0xe0, 0xda, 0xbe, 0x7a, 0xe1, 0xa4, 0xdf, 0xd9, 0x80,
0xe4, 0xe9, 0xd5, 0xe9, 0xb7, 0x01, 0xd5, 0x2e, 0xa1, 0x91, 0x5a, 0x5a, 0xcd, 0x57, 0x40, 0x21,
0x81, 0x8c, 0xa0, 0x19, 0x13, 0xe8, 0x03, 0x78, 0xcb, 0x8a, 0x38, 0xbc, 0x8e, 0x2a, 0xde, 0x97,
0x8e, 0xf6, 0x87, 0x3f, 0x69, 0xce, 0x0f, 0x1d, 0x09, 0x3e, 0x1e, 0x90, 0x8b, 0xab, 0x9d, 0xe1,
0xae, 0xd4, 0xb0, 0xcc, 0x38, 0xeb, 0x85, 0x23, 0xa2, 0x43, 0x71, 0x16, 0x52, 0x3b, 0xed, 0x06,
0x54, 0xe5, 0xbe, 0x63, 0xdc, 0x29, 0x01, 0x21, 0x20, 0x89, 0xb5, 0x2b, 0xcb, 0x49, 0x6c, 0xa3,
0xb7, 0xe2, 0x44, 0xef, 0x5d, 0x58, 0x62, 0x9c, 0xd0, 0xb0, 0x87, 0x03, 0x92, 0x71, 0xd6, 0x9a,
0xbf, 0x53, 0x79, 0x50, 0xf7, 0x1b, 0x1a, 0x77, 0x9c, 0x71, 0xe6, 0xfd, 0x58, 0x72, 0x02, 0xc9,
0x4e, 0xac, 0x95, 0x7f, 0x07, 0x1a, 0xd2, 0x6f, 0x41, 0x46, 0x92, 0x94, 0xeb, 0xf9, 0x41, 0xa2,
0x3a, 0x02, 0x83, 0x6e, 0x03, 0x48, 0x6d, 0x82, 0x88, 0xa4, 0x5d, 0xad, 0x4c, 0x5d, 0x62, 0xf6,
0x48, 0xda, 0xbd, 0x6e, 0xf6, 0x78, 0x9b, 0xf0, 0xd6, 0x41, 0xc2, 0xb8, 0xd5, 0xc3, 0x16, 0xa5,
0x7f, 0x95, 0xe0, 0xc6, 0xe8, 0x88, 0xd6, 0xed, 0x10, 0x20, 0xb2, 0x58, 0x9d, 0xfd, 0xbf, 0xd2,
0xd9, 0x3f, 0x99, 0x65, 0x7b, 0x88, 0x52, 0xa9, 0xef, 0x08, 0xb8, 0x6e, 0x76, 0xb4, 0x9f, 0xc0,
0xea, 0x88, 0x98, 0xab, 0x52, 0xbd, 0xe6, 0xa6, 0xfa, 0x77, 0x50, 0x7f, 0x7a, 0x74, 0x22, 0x8c,
0x93, 0xf4, 0x50, 0x0b, 0x16, 0xd5, 0x6e, 0xa9, 0xf4, 0xaf, 0xfb, 0x06, 0x14, 0x7b, 0x37, 0xc3,
0x21, 0x8d, 0xce, 0x31, 0x6b, 0x95, 0xe5, 0x90, 0x85, 0x05, 0x17, 0xc9, 0x78, 0x42, 0x52, 0xd6,
0xaa, 0x28, 0x2e, 0x0d, 0x7a, 0x7f, 0x2e, 0x41, 0xa3, 0x43, 0x28, 0x3f, 0x0c, 0xb3, 0x2c, 0x49,
0x7b, 0xe8, 0x17, 0x50, 0x93, 0xad, 0x4a, 0x44, 0xfa, 0x52, 0xbb, 0x95, 0x9d, 0x55, 0x6d, 0xa0,
0x8e, 0x46, 0xfb, 0x96, 0x00, 0xbd, 0x07, 0x2b, 0xd6, 0x1c, 0x81, 0xd8, 0xed, 0xa4, 0xf2, 0x55,
0x7f, 0xd9, 0x62, 0x85, 0x68, 0x74, 0x13, 0xea, 0xe7, 0x84, 0x71, 0x45, 0x51, 0x91, 0x14, 0x35,
0x81, 0x90, 0x83, 0x9b, 0xb0, 0x28, 0x07, 0x93, 0x4c, 0x3a, 0xb7, 0xee, 0x2f, 0x08, 0x70, 0x3f,
0xf3, 0xfe, 0x51, 0x82, 0xaa, 0xcc, 0xc6, 0x91, 0x69, 0x42, 0x7e, 0xae, 0xed, 0xe6, 0x4c, 0x13,
0xf2, 0xf3, 0xe1, 0x34, 0x82, 0x42, 0x77, 0x36, 0x72, 0x1a, 0x31, 0xd8, 0x86, 0x1a, 0xc5, 0x61,
0x4c, 0xd2, 0xfe, 0xa5, 0x54, 0xa1, 0xe6, 0x5b, 0x18, 0xdd, 0x87, 0x55, 0x86, 0xfb, 0x49, 0x9a,
0xbf, 0x0e, 0x28, 0xee, 0x87, 0x2f, 0x71, 0x5f, 0xaa, 0x52, 0xf3, 0x57, 0x34, 0xda, 0x57, 0x58,
0xf4, 0x29, 0x34, 0x32, 0x4a, 0xb2, 0xb0, 0x17, 0x0a, 0xe3, 0xc9, 0xbd, 0x7f, 0x65, 0x67, 0x53,
0xdb, 0x47, 0xea, 0xda, 0x19, 0x0e, 0xfb, 0x2e, 0xad, 0xf7, 0x5b, 0x58, 0x3d, 0x0a, 0x07, 0x98,
0x65, 0x61, 0x24, 0x92, 0x28, 0x21, 0xa9, 0xc8, 0x34, 0xa9, 0x6f, 0x8a, 0xf9, 0x0f, 0x84, 0xbe,
0x92, 0x8b, 0xaa, 0xf9, 0x0d, 0x81, 0x3b, 0x52, 0x28, 0xb4, 0x05, 0x35, 0xb5, 0x24, 0x9d, 0xb6,
0x35, 0x5f, 0x1a, 0xab, 0x93, 0xc4, 0x76, 0x28, 0xc9, 0x22, 0xbd, 0xa0, 0x45, 0x65, 0xb8, 0xc8,
0xf3, 0x00, 0xf6, 0x53, 0xfe, 0xeb, 0x8f, 0xbf, 0x11, 0x21, 0x34, 0x0c, 0x2c, 0x21, 0xbf, 0xa2,
0x03, 0xcb, 0x0b, 0x61, 0xf9, 0xe4, 0xd9, 0x81, 0x58, 0x9c, 0xd6, 0x06, 0xc1, 0xbc, 0x68, 0x03,
0x4d, 0x8f, 0x21, 0xfe, 0x05, 0x8e, 0x92, 0xbe, 0xdd, 0xdd, 0xc4, 0xbf, 0xc0, 0xf1, 0xcb, 0xcc,
0xd6, 0x0c, 0xf1, 0x2f, 0xa6, 0xe8, 0xe3, 0x0b, 0x6d, 0xb6, 0xba, 0xaf, 0x00, 0xef, 0x0f, 0x15,
0xb8, 0x29, 0x67, 0x38, 0x09, 0xd3, 0xf8, 0x25, 0x79, 0x7d, 0x82, 0xa3, 0x9c, 0x26, 0xfc, 0x52,
0xe4, 0x02, 0x7e, 0xcd, 0xd1, 0x1e, 0xac, 0xa5, 0xc6, 0x24, 0x81, 0x09, 0x4f, 0x31, 0x7d, 0x63,
0xe7, 0x86, 0xb6, 0xe9, 0x88, 0xc9, 0xfc, 0x66, 0x5a, 0x44, 0x30, 0xf4, 0x64, 0xe8, 0x3b, 0x23,
0xa2, 0x2c, 0x45, 0x6c, 0x68, 0x11, 0x85, 0x55, 0x5a, 0x8f, 0x1a, 0xf6, 0x0f, 0xa1, 0x41, 0xf3,
0x34, 0x08, 0x59, 0x20, 0x17, 0x5f, 0x91, 0xac, 0x6b, 0x9a, 0x75, 0x68, 0x44, 0xbf, 0x4e, 0xf3,
0x74, 0x97, 0x9d, 0x09, 0xa3, 0xdc, 0x87, 0x55, 0x13, 0x39, 0x01, 0x25, 0x84, 0x77, 0x99, 0x89,
0x16, 0x83, 0xf6, 0x25, 0x16, 0xbd, 0x0f, 0xeb, 0x2c, 0xcf, 0xb2, 0x3e, 0x1e, 0xe0, 0x94, 0x87,
0xfd, 0xa0, 0x47, 0x49, 0x9e, 0xb1, 0x56, 0xf5, 0x4e, 0xe5, 0x41, 0xc5, 0x47, 0xee, 0xd0, 0x0b,
0x39, 0x82, 0xde, 0x06, 0xc8, 0x68, 0x72, 0x91, 0xf4, 0x71, 0x0f, 0xc7, 0xad, 0x05, 0x29, 0xd4,
0xc1, 0xa0, 0x0f, 0x60, 0x83, 0xe1, 0x28, 0x22, 0x83, 0x2c, 0xc8, 0x28, 0x11, 0x5d, 0xa0, 0x8a,
0xf5, 0x45, 0x69, 0x75, 0xa4, 0xc7, 0x3a, 0x6a, 0x48, 0x44, 0xbd, 0xf7, 0xa7, 0xb2, 0xa8, 0x92,
0x69, 0xfe, 0xba, 0x43, 0x62, 0xed, 0x05, 0x5d, 0x47, 0xee, 0xc1, 0x72, 0x24, 0x15, 0x0a, 0x44,
0xf5, 0xb6, 0x85, 0x7a, 0x49, 0x21, 0x3b, 0x12, 0x87, 0x0e, 0xa1, 0xc9, 0xb4, 0xd3, 0x44, 0xb5,
0x16, 0x5e, 0xd3, 0xd6, 0xf5, 0x6c, 0xd5, 0x9c, 0xea, 0x5f, 0x7f, 0x95, 0x8d, 0x39, 0x7c, 0x91,
0x5d, 0xb2, 0x88, 0xf7, 0x55, 0x15, 0x6a, 0xec, 0xfc, 0xdc, 0x95, 0x32, 0xaa, 0xe2, 0xf6, 0x89,
0xa2, 0x55, 0x75, 0xd7, 0x70, 0xb6, 0x3f, 0x83, 0x25, 0x77, 0x60, 0xa6, 0xa6, 0x89, 0x02, 0x1a,
0xce, 0x72, 0x38, 0xda, 0xc3, 0x95, 0x9c, 0x5d, 0x50, 0x1f, 0x02, 0x74, 0x77, 0x2d, 0x0e, 0x01,
0xb7, 0xa0, 0x6e, 0x83, 0x4f, 0x07, 0xff, 0x10, 0x21, 0x0a, 0x6c, 0xc8, 0x39, 0x1e, 0x64, 0x5c,
0x6f, 0x51, 0x06, 0xf4, 0xfe, 0x3a, 0x0f, 0xcd, 0x31, 0xeb, 0x7f, 0x52, 0x68, 0x42, 0x85, 0x41,
0xb7, 0x4c, 0x95, 0x1d, 0xd3, 0xcf, 0xe9, 0x36, 0xdb, 0x2a, 0xe7, 0xdd, 0xa3, 0x9b, 0x81, 0x85,
0x43, 0xfb, 0xa4, 0x17, 0xc4, 0x09, 0xc5, 0x11, 0x27, 0xf4, 0x52, 0xeb, 0xb8, 0xd4, 0x27, 0xbd,
0xa7, 0x06, 0x87, 0xde, 0x07, 0x88, 0x53, 0x26, 0x77, 0xde, 0xa4, 0x27, 0x35, 0x6d, 0xec, 0x34,
0xf5, 0xcc, 0x76, 0x8f, 0xf1, 0xeb, 0x71, 0xca, 0xb4, 0xa2, 0x8f, 0x60, 0x59, 0x54, 0xed, 0x60,
0xa0, 0xb6, 0x07, 0x15, 0xbd, 0x8d, 0x1d, 0x64, 0xb5, 0xb5, 0x3b, 0x87, 0xbf, 0x94, 0x0d, 0x01,
0x86, 0x3e, 0x87, 0x05, 0x59, 0x33, 0x59, 0x6b, 0x41, 0x72, 0xdc, 0x1b, 0x5b, 0x9f, 0xf6, 0xf2,
0x81, 0xa4, 0x52, 0x4e, 0xd6, 0x2c, 0xe8, 0x37, 0xd0, 0x08, 0xd3, 0x94, 0xf0, 0x50, 0x25, 0xf4,
0xa2, 0x94, 0xf0, 0x60, 0x9a, 0x84, 0xdd, 0x21, 0xa9, 0x12, 0xe3, 0x32, 0xa3, 0x1d, 0xa8, 0xca,
0x8c, 0x6f, 0xd5, 0xe4, 0x6a, 0x6f, 0xbd, 0x29, 0xe4, 0x7c, 0x45, 0xda, 0xfe, 0x14, 0x1a, 0x8e,
0x5a, 0xb3, 0x84, 0x58, 0xfb, 0x0b, 0x68, 0x8e, 0xea, 0x33, 0x53, 0x88, 0xde, 0x85, 0xba, 0x3c,
0xc0, 0x9d, 0x64, 0x38, 0x9a, 0xdc, 0xc5, 0x79, 0x9f, 0x40, 0x43, 0x92, 0x3c, 0x4f, 0xfa, 0x1c,
0x53, 0xf4, 0x33, 0x97, 0x68, 0xe8, 0x4e, 0x2b, 0xc5, 0xb0, 0x9d, 0xc1, 0x9a, 0xe8, 0x71, 0x24,
0xde, 0x34, 0x4b, 0xe8, 0x21, 0x2c, 0x74, 0xa5, 0x18, 0xcd, 0x8d, 0x5c, 0x6e, 0x35, 0x81, 0xaf,
0x29, 0x84, 0x36, 0xd1, 0x39, 0x8e, 0x5e, 0x99, 0x0e, 0x45, 0x02, 0xde, 0xdf, 0x4b, 0xd0, 0x70,
0xae, 0x2d, 0xe4, 0xfe, 0x80, 0x19, 0xd7, 0xdd, 0x89, 0xfc, 0x17, 0x71, 0x9b, 0xa4, 0x1c, 0xd3,
0x8b, 0xb0, 0x2f, 0x99, 0x2b, 0xbe, 0x85, 0x45, 0xe6, 0xf0, 0x64, 0x80, 0x49, 0xae, 0x5a, 0x83,
0x8a, 0x6f, 0x40, 0xd5, 0x89, 0x86, 0x94, 0x07, 0x19, 0xa6, 0x09, 0x51, 0xe7, 0xef, 0x8a, 0xe8,
0x44, 0x43, 0xca, 0x3b, 0x12, 0x25, 0x98, 0x29, 0xe6, 0x34, 0xc1, 0x4c, 0x6e, 0xc6, 0x55, 0xdf,
0x80, 0xe8, 0x21, 0xac, 0xe1, 0xd7, 0x09, 0x0f, 0x48, 0x1a, 0xe4, 0xe9, 0xb9, 0xd4, 0xef, 0x52,
0x97, 0xd4, 0x55, 0x31, 0x70, 0x9c, 0x9e, 0x19, 0xb4, 0xf7, 0xb7, 0x32, 0x54, 0xf7, 0x9d, 0x06,
0xb9, 0x64, 0x1b, 0xe4, 0x9b, 0x50, 0xa7, 0x38, 0x23, 0x01, 0x0f, 0x7b, 0xb6, 0xa9, 0x12, 0x88,
0xd3, 0xb0, 0xc7, 0x84, 0x7e, 0x72, 0x30, 0x4e, 0x7a, 0x98, 0x71, 0xd3, 0x59, 0x35, 0x04, 0xee,
0xa9, 0x42, 0x09, 0x63, 0xb0, 0xe4, 0xf7, 0x58, 0xaa, 0x3e, 0xef, 0xcb, 0x7f, 0x74, 0x4f, 0x95,
0x96, 0xea, 0xb4, 0xad, 0x46, 0x56, 0x1b, 0xf7, 0x92, 0x66, 0x61, 0xe4, 0x92, 0xa6, 0x05, 0x8b,
0x11, 0xc5, 0x21, 0xc7, 0xb1, 0xae, 0xfc, 0x06, 0x14, 0x0d, 0x69, 0x9f, 0x84, 0x31, 0x8e, 0x65,
0xb0, 0xd7, 0x7d, 0x0d, 0xa1, 0x77, 0x61, 0x9e, 0x65, 0x38, 0x6a, 0xd5, 0xa7, 0x44, 0x88, 0x1c,
0x45, 0x1f, 0x43, 0x43, 0x59, 0x44, 0x79, 0x19, 0x0a, 0x01, 0xe1, 0xde, 0x4c, 0xb9, 0x64, 0xde,
0x4b, 0x40, 0x6e, 0x58, 0xe9, 0x4e, 0xfb, 0x5d, 0x58, 0x90, 0x51, 0x67, 0xba, 0xec, 0x25, 0x77,
0x4e, 0x5f, 0x8f, 0x5d, 0xfb, 0x78, 0xf9, 0x0d, 0x20, 0xa5, 0xac, 0x7b, 0xfb, 0x70, 0xdd, 0xc0,
0x17, 0xf6, 0xba, 0xc0, 0xf4, 0x25, 0x61, 0xa6, 0xb7, 0x36, 0xa0, 0xf7, 0x9f, 0x12, 0xac, 0x17,
0x04, 0x6b, 0xed, 0xbd, 0xa2, 0xe4, 0xa2, 0xf2, 0x5a, 0xea, 0x63, 0x98, 0x4f, 0xd2, 0x2e, 0x91,
0x51, 0xd1, 0xd8, 0x79, 0xb7, 0x30, 0x79, 0x41, 0xda, 0xf6, 0x7e, 0xda, 0x25, 0xaa, 0x30, 0x49,
0x8e, 0x6b, 0xdf, 0x0f, 0x3c, 0x82, 0xba, 0x65, 0x9d, 0xa9, 0x86, 0x7c, 0x06, 0x4d, 0xa9, 0x87,
0xe0, 0x9e, 0xd1, 0x58, 0xde, 0x31, 0xac, 0x39, 0xbc, 0xda, 0x1e, 0x48, 0xc7, 0x8f, 0xde, 0x21,
0x65, 0xb4, 0x5c, 0xd7, 0x77, 0xff, 0x2c, 0x01, 0xec, 0xe6, 0xfc, 0x5c, 0x6f, 0x28, 0x6e, 0x60,
0x97, 0xde, 0x70, 0xfb, 0x58, 0x2e, 0xde, 0x3e, 0x0a, 0x15, 0xc2, 0x9c, 0x9f, 0x9b, 0xb6, 0x53,
0xfc, 0x8b, 0x73, 0x81, 0x3a, 0xfc, 0x04, 0x61, 0x1c, 0x53, 0xcc, 0x98, 0xee, 0x3f, 0x97, 0x15,
0x76, 0x57, 0x21, 0x05, 0x59, 0x12, 0xe3, 0x94, 0x8b, 0x2e, 0x86, 0x93, 0x57, 0x58, 0x35, 0xee,
0x75, 0x7f, 0xd9, 0x60, 0x4f, 0x05, 0x52, 0x90, 0x51, 0xdc, 0x4b, 0x18, 0xa7, 0x86, 0x4c, 0x25,
0xde, 0xb2, 0xc1, 0x4a, 0x32, 0xef, 0x2f, 0x25, 0x68, 0x76, 0xf2, 0x7e, 0xbf, 0x70, 0x41, 0x77,
0xdd, 0x50, 0x7c, 0x4f, 0xaf, 0xa2, 0x5c, 0x48, 0xfe, 0xa1, 0x79, 0xf4, 0xc2, 0xbe, 0x80, 0x15,
0xa6, 0xf6, 0x25, 0xb3, 0x55, 0xab, 0xc6, 0x74, 0x73, 0xca, 0x16, 0xe8, 0x2f, 0x33, 0x17, 0xf4,
0xbe, 0x85, 0x35, 0x47, 0x45, 0xed, 0xc4, 0x9b, 0xa0, 0x4e, 0xd9, 0x01, 0xc5, 0x5d, 0x63, 0xfa,
0x44, 0x51, 0x74, 0xaf, 0xed, 0x4d, 0x1f, 0x90, 0xba, 0xac, 0xf8, 0x49, 0xcb, 0x9f, 0x7c, 0xe7,
0xf3, 0x04, 0xd6, 0x0b, 0x32, 0x67, 0xbc, 0x05, 0xd9, 0xd0, 0xc5, 0xe1, 0x39, 0x73, 0xe2, 0xdd,
0xbb, 0x07, 0x8d, 0xb3, 0x69, 0x87, 0xa0, 0x79, 0x73, 0x08, 0xba, 0x0f, 0x6b, 0x27, 0xea, 0x5e,
0x63, 0x5f, 0x86, 0x42, 0x37, 0x51, 0x87, 0x9e, 0x3c, 0xb7, 0xbb, 0x80, 0xfc, 0xf7, 0xfe, 0x5d,
0x82, 0xd5, 0xe7, 0x49, 0x1f, 0xb3, 0x4b, 0xc6, 0xf1, 0x40, 0xde, 0x9c, 0x89, 0x86, 0x50, 0xec,
0x54, 0x8c, 0x87, 0x83, 0x4c, 0x9f, 0xad, 0x86, 0x08, 0xf4, 0x08, 0xc0, 0x5c, 0xa3, 0xe8, 0x3e,
0xb2, 0xb1, 0xd3, 0x32, 0x47, 0x92, 0xd1, 0x39, 0xfd, 0x3a, 0x33, 0x28, 0xf4, 0x21, 0x40, 0xce,
0x70, 0x1c, 0xbc, 0xbc, 0xe4, 0x98, 0x69, 0xbf, 0x9b, 0x22, 0x7c, 0xe6, 0x9e, 0x48, 0x04, 0xd5,
0x57, 0x82, 0x08, 0x7d, 0x04, 0x8d, 0x24, 0x25, 0x31, 0x96, 0x87, 0x98, 0x58, 0xb7, 0x75, 0x93,
0x78, 0x40, 0x91, 0x9d, 0x31, 0x1c, 0x7b, 0x3f, 0x9a, 0xda, 0x67, 0xec, 0xa6, 0xcd, 0xbe, 0x07,
0x6b, 0x2a, 0x4c, 0xba, 0x76, 0xbd, 0xa6, 0x88, 0x9b, 0x53, 0xd9, 0x88, 0x25, 0xfc, 0x66, 0xa2,
0xbb, 0x05, 0x43, 0x7f, 0xed, 0x70, 0x7a, 0x05, 0xab, 0xa7, 0x61, 0xaf, 0x10, 0x4b, 0x0f, 0x61,
0x91, 0xd1, 0xe8, 0xc8, 0xd4, 0x87, 0x49, 0xd1, 0x64, 0x08, 0xd0, 0x2f, 0xa1, 0x16, 0x63, 0xc6,
0x8f, 0x4c, 0x3f, 0x3c, 0x89, 0xd8, 0x52, 0x88, 0xb2, 0x38, 0x9c, 0x6c, 0xb6, 0x20, 0x7b, 0x78,
0x0b, 0x6a, 0xe6, 0xfe, 0x03, 0x2d, 0x42, 0xe5, 0x74, 0xaf, 0xd3, 0x9c, 0x13, 0x3f, 0x67, 0x4f,
0x3b, 0xcd, 0xd2, 0xc3, 0x01, 0x34, 0x47, 0x4f, 0xff, 0x68, 0x13, 0xd6, 0x3b, 0xfe, 0x71, 0x67,
0xf7, 0xc5, 0xee, 0xe9, 0xfe, 0xf1, 0x51, 0xd0, 0xf1, 0xf7, 0xbf, 0xd9, 0x3d, 0x7d, 0xd6, 0x9c,
0x43, 0x77, 0xe1, 0xb6, 0x3b, 0xf0, 0xf5, 0xf1, 0xc9, 0x69, 0x70, 0x7a, 0x1c, 0xec, 0x1d, 0x1f,
0x9d, 0xee, 0xee, 0x1f, 0x3d, 0xf3, 0x9b, 0x25, 0x74, 0x1b, 0xb6, 0x5c, 0x92, 0xaf, 0xf6, 0x9f,
0xee, 0xfb, 0xcf, 0xf6, 0xc4, 0xff, 0xee, 0x41, 0xb3, 0xbc, 0xf3, 0xbf, 0x06, 0x2c, 0xa9, 0x05,
0x62, 0x7a, 0x91, 0x44, 0xc2, 0x67, 0x30, 0xdc, 0x83, 0x51, 0xcb, 0xb9, 0xd1, 0x2a, 0x74, 0x7b,
0xed, 0xad, 0x09, 0x23, 0xca, 0x10, 0xde, 0x1c, 0x7a, 0xae, 0xdb, 0x4a, 0xb5, 0x7b, 0xa1, 0xad,
0x49, 0x3b, 0x9a, 0x12, 0xd3, 0x9e, 0xbe, 0xd9, 0x79, 0x73, 0xe8, 0x4b, 0xdd, 0xc1, 0x8a, 0xa8,
0x42, 0x9b, 0x2e, 0xa9, 0x93, 0x9f, 0xed, 0xd6, 0xf8, 0x80, 0x2b, 0xc1, 0x96, 0x2f, 0x2b, 0x61,
0xb4, 0xe6, 0x5a, 0x09, 0x63, 0x95, 0x4e, 0xad, 0xc5, 0x29, 0x29, 0x76, 0x2d, 0xe3, 0xa5, 0xcb,
0xae, 0x65, 0x42, 0x05, 0x72, 0x6c, 0xa2, 0x72, 0xa4, 0x68, 0x93, 0x42, 0xbd, 0x29, 0xda, 0xa4,
0x98, 0x52, 0xde, 0x1c, 0xda, 0x85, 0xba, 0x7d, 0x9a, 0xb1, 0x2b, 0x1a, 0x7d, 0xe6, 0x19, 0xba,
0x67, 0xec, 0x15, 0xc7, 0x9b, 0x43, 0xc7, 0xb0, 0x52, 0xbc, 0xa2, 0x44, 0xb7, 0xa6, 0xdc, 0x5c,
0x2a, 0x61, 0xb7, 0xdf, 0x78, 0xaf, 0xe9, 0xcd, 0xa1, 0x33, 0x68, 0x8e, 0x5e, 0xe2, 0xa2, 0xb7,
0x35, 0xd3, 0x94, 0x6b, 0xe5, 0xf6, 0x3b, 0x53, 0xc7, 0xad, 0x58, 0xdf, 0xb9, 0xec, 0x54, 0x46,
0x45, 0xb7, 0x47, 0xb9, 0x0a, 0x57, 0xe4, 0xed, 0xb7, 0xa7, 0x0d, 0x5b, 0x99, 0xc7, 0xb0, 0x52,
0xbc, 0xa0, 0xb7, 0x6b, 0x9f, 0x78, 0xd3, 0xdf, 0xbe, 0x3d, 0x65, 0x74, 0xa2, 0x92, 0xea, 0x99,
0x61, 0x5c, 0xc9, 0xc2, 0x3b, 0xc6, 0xb8, 0x92, 0xc5, 0xd7, 0x89, 0x11, 0x99, 0xea, 0xed, 0x6f,
0x5c, 0x66, 0xe1, 0x69, 0x72, 0x5c, 0x66, 0xf1, 0xc9, 0x70, 0xc4, 0x47, 0xfa, 0xc5, 0x66, 0xdc,
0x47, 0xc5, 0xe7, 0x9f, 0x71, 0x1f, 0x8d, 0x3c, 0xf5, 0x78, 0x73, 0xe8, 0x5b, 0x58, 0x1b, 0x7b,
0xb7, 0x43, 0xef, 0x8c, 0x3f, 0x83, 0x15, 0xd3, 0xfe, 0xce, 0x74, 0x02, 0x2b, 0xf9, 0x7b, 0x58,
0x9f, 0xf0, 0x8c, 0x86, 0xee, 0xbe, 0xe9, 0x89, 0x4d, 0x49, 0xf7, 0xae, 0x7e, 0x85, 0xf3, 0xe6,
0xd0, 0xc7, 0x50, 0x95, 0x8f, 0xd0, 0x68, 0xdd, 0xe6, 0xca, 0xf0, 0xc9, 0xbb, 0xbd, 0x51, 0x44,
0x5a, 0xae, 0x47, 0xb0, 0xa0, 0x1e, 0x96, 0x91, 0x43, 0x31, 0x7c, 0x90, 0x6e, 0xbf, 0x35, 0x82,
0x75, 0xf3, 0xdf, 0x3d, 0xdb, 0x6e, 0x4d, 0x38, 0x0c, 0x8d, 0xe4, 0xff, 0x84, 0x17, 0x7c, 0x6f,
0x0e, 0x3d, 0x81, 0x9a, 0xd9, 0x7a, 0x90, 0xd9, 0x45, 0x47, 0x36, 0xbe, 0xf6, 0xe6, 0x18, 0xde,
0xb0, 0xbf, 0x5c, 0x90, 0x37, 0xee, 0x1f, 0xfd, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xe1, 0xa3, 0x16,
0x75, 0x58, 0x20, 0x00, 0x00,
proto.RegisterFile("isula/isula_image.proto", fileDescriptor_isula_image_231213ed9612ec4a)
}
var fileDescriptor_isula_image_231213ed9612ec4a = []byte{
// 2765 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x1a, 0x4d, 0x6f, 0x1b, 0xc7,
0x55, 0x24, 0x45, 0x89, 0x7c, 0x14, 0x25, 0x6a, 0xa4, 0x58, 0x14, 0x6d, 0x27, 0xf6, 0x3a, 0xa9,
0x5d, 0xb7, 0x55, 0x12, 0x26, 0xa9, 0x9d, 0x04, 0x0e, 0xa2, 0xc8, 0x1f, 0x61, 0xa1, 0x0f, 0x62,
0x25, 0x05, 0x01, 0x02, 0x64, 0xb1, 0xde, 0x1d, 0x52, 0x5b, 0x93, 0x3b, 0xdb, 0x99, 0x59, 0xc5,
0xea, 0xa9, 0x08, 0xd0, 0x5b, 0xef, 0x3d, 0xf7, 0xd6, 0x43, 0x7f, 0x41, 0x4f, 0xbd, 0x17, 0x2d,
0x7a, 0xe8, 0x4f, 0xe8, 0x0f, 0x29, 0xe6, 0x6b, 0x39, 0xcb, 0x0f, 0x8b, 0xcc, 0x85, 0xd8, 0xf7,
0xe6, 0xbd, 0x37, 0xef, 0x6b, 0xde, 0xbc, 0x99, 0x21, 0xec, 0x44, 0x2c, 0x1d, 0xf8, 0xef, 0xcb,
0x5f, 0x2f, 0x1a, 0xfa, 0x7d, 0xbc, 0x97, 0x50, 0xc2, 0x09, 0x2a, 0x4b, 0x94, 0xb3, 0x0d, 0xe8,
0x6b, 0xec, 0x0f, 0xf8, 0xc5, 0xc1, 0x05, 0x0e, 0x5e, 0xb9, 0xf8, 0x77, 0x29, 0x66, 0xdc, 0x79,
0x02, 0x5b, 0x39, 0x2c, 0x4b, 0x48, 0xcc, 0x30, 0xba, 0x01, 0x2b, 0x98, 0xd2, 0x21, 0xeb, 0x37,
0x0b, 0x77, 0x0a, 0x0f, 0xaa, 0xae, 0x86, 0xd0, 0x3a, 0x14, 0x83, 0xa0, 0x59, 0xbc, 0x53, 0x78,
0x50, 0x77, 0x8b, 0x41, 0xe0, 0x7c, 0x0f, 0x6b, 0x87, 0xa4, 0x1f, 0xc5, 0x5a, 0x9c, 0xe0, 0x63,
0x98, 0x5e, 0x62, 0x6a, 0xf8, 0x14, 0x84, 0x5a, 0x50, 0x49, 0x19, 0xa6, 0xb1, 0x3f, 0xc4, 0x92,
0xbb, 0xea, 0x66, 0xb0, 0x18, 0x4b, 0x7c, 0xc6, 0x7e, 0x20, 0x34, 0x6c, 0x96, 0xd4, 0x98, 0x81,
0x9d, 0x47, 0x50, 0xd7, 0xf2, 0x17, 0x54, 0xec, 0xbe, 0x64, 0x24, 0x29, 0xbf, 0x46, 0x33, 0xe7,
0x31, 0xac, 0x1b, 0xc2, 0x05, 0xa7, 0xf8, 0x63, 0x01, 0x6e, 0x1c, 0x90, 0x98, 0xfb, 0x51, 0x8c,
0xe9, 0xb3, 0xd7, 0x09, 0xa1, 0xd9, 0x64, 0x3b, 0xb0, 0x2a, 0x4c, 0xf3, 0xa2, 0xd0, 0xc8, 0x10,
0x60, 0x27, 0x14, 0xb2, 0x49, 0xca, 0x93, 0x94, 0x6b, 0x2f, 0x68, 0x08, 0x35, 0xa0, 0x94, 0x46,
0xca, 0xfc, 0xba, 0x2b, 0x3e, 0x05, 0xa6, 0x1f, 0x85, 0xcd, 0x65, 0x85, 0xe9, 0x47, 0x8a, 0xb7,
0xd7, 0x63, 0x98, 0x37, 0xcb, 0x12, 0xa9, 0x21, 0x67, 0x1f, 0x76, 0x26, 0xd4, 0x58, 0xd0, 0x94,
0xc7, 0xd0, 0x38, 0x24, 0x7e, 0xd8, 0x11, 0x59, 0x63, 0x6c, 0x40, 0xb0, 0xdc, 0x8b, 0x06, 0x58,
0x73, 0xca, 0x6f, 0xa1, 0x14, 0xf7, 0xfb, 0x5a, 0x77, 0xf1, 0xe9, 0x9c, 0x01, 0xb2, 0x38, 0xc5,
0xb4, 0x44, 0xcd, 0x4b, 0x52, 0x6e, 0xcd, 0xab, 0x20, 0x4b, 0x9f, 0xe2, 0x14, 0x7d, 0x4a, 0x99,
0x3e, 0x9f, 0x40, 0xbd, 0x33, 0xb4, 0x1d, 0x3a, 0x9f, 0x32, 0x1d, 0xd8, 0x30, 0x6c, 0x46, 0x93,
0x75, 0x28, 0x66, 0x41, 0x28, 0x2a, 0x27, 0xce, 0xa5, 0x41, 0x0b, 0x9a, 0x2f, 0xa8, 0x9f, 0x5c,
0x84, 0x34, 0xba, 0xc4, 0xf4, 0x94, 0xfb, 0x3c, 0x65, 0x66, 0xcd, 0x7c, 0x07, 0xbb, 0x53, 0xc6,
0x46, 0x2e, 0x67, 0x12, 0x93, 0xe5, 0x99, 0x84, 0x16, 0x30, 0xbd, 0x65, 0x09, 0x3f, 0xc2, 0xdc,
0x0f, 0x7d, 0xee, 0x5f, 0x97, 0x58, 0xce, 0xff, 0x0a, 0x70, 0x73, 0x2a, 0x9f, 0x56, 0xeb, 0x10,
0x2a, 0x43, 0x8d, 0x6b, 0x16, 0xee, 0x94, 0x1e, 0xd4, 0xda, 0x1f, 0xec, 0xc9, 0xba, 0xb0, 0xf7,
0x06, 0xae, 0x3d, 0x83, 0x78, 0x16, 0x73, 0x7a, 0xe5, 0x66, 0x12, 0x44, 0x38, 0xac, 0xa5, 0x2c,
0xbf, 0x2d, 0x03, 0x4b, 0x53, 0x0c, 0x5c, 0x36, 0x06, 0xb6, 0x3e, 0x87, 0x7a, 0x4e, 0xac, 0x88,
0xe3, 0x2b, 0x7c, 0xa5, 0xed, 0x11, 0x9f, 0x68, 0x1b, 0xca, 0x97, 0xfe, 0x20, 0x35, 0xf2, 0x15,
0xf0, 0x59, 0xf1, 0x71, 0xc1, 0x69, 0x5b, 0xb9, 0xfe, 0x9c, 0x9d, 0x33, 0x2b, 0x5f, 0x67, 0xba,
0xe6, 0x5b, 0x68, 0x4e, 0xf2, 0x68, 0xb7, 0x6c, 0x43, 0x39, 0x15, 0x08, 0xcd, 0xa2, 0x80, 0xb9,
0x63, 0xf5, 0xc2, 0x2a, 0x00, 0xe7, 0x43, 0x92, 0xc6, 0xd7, 0x17, 0x80, 0x6d, 0x28, 0xf7, 0x08,
0x0d, 0x94, 0x69, 0x15, 0x57, 0x01, 0xb9, 0x25, 0x6c, 0x04, 0x2d, 0xb8, 0x84, 0x3f, 0x80, 0xb7,
0x32, 0x11, 0x47, 0xf3, 0xa8, 0xe2, 0x7c, 0x69, 0x69, 0x7f, 0xf4, 0x93, 0xe6, 0xfc, 0xd0, 0x92,
0xe0, 0xe2, 0x21, 0xb9, 0xbc, 0x3e, 0x18, 0xb6, 0xa5, 0x86, 0x65, 0xc1, 0x59, 0x2f, 0x2d, 0x11,
0x5d, 0x8a, 0x13, 0x9f, 0x66, 0xd3, 0x6e, 0x43, 0x59, 0xee, 0x7c, 0x26, 0x9c, 0x12, 0xd0, 0x35,
0xa0, 0x98, 0xd5, 0x00, 0x93, 0xbd, 0x25, 0x2b, 0x7b, 0xef, 0xc2, 0x1a, 0xe3, 0x84, 0xfa, 0x7d,
0xec, 0x91, 0x84, 0xb3, 0xe6, 0xf2, 0x9d, 0xd2, 0x83, 0xaa, 0x5b, 0xd3, 0xb8, 0x93, 0x84, 0x33,
0xe7, 0xc7, 0x82, 0x95, 0x48, 0xd9, 0xc4, 0x5a, 0xf9, 0x77, 0xa0, 0x26, 0xe3, 0xe6, 0x25, 0x24,
0x8a, 0xb9, 0x9e, 0x1f, 0x24, 0xaa, 0x2b, 0x30, 0xe8, 0x36, 0x80, 0xd4, 0xc6, 0x0b, 0x48, 0xdc,
0xd3, 0xca, 0x54, 0x25, 0xe6, 0x80, 0xc4, 0xbd, 0x79, 0x57, 0x8f, 0xb3, 0x03, 0x6f, 0x1d, 0x46,
0x8c, 0x67, 0x7a, 0x64, 0x45, 0xe9, 0xdf, 0x05, 0xb8, 0x31, 0x3e, 0xa2, 0x75, 0x3b, 0x02, 0x08,
0x32, 0xac, 0x5e, 0xfd, 0xbf, 0xd2, 0xab, 0x7f, 0x3a, 0xcb, 0xde, 0x08, 0xa5, 0x96, 0xbe, 0x25,
0x60, 0xde, 0xd5, 0xd1, 0x7a, 0x02, 0x1b, 0x63, 0x62, 0xae, 0x5b, 0xea, 0x15, 0x7b, 0xa9, 0x7f,
0x07, 0xd5, 0xa7, 0xc7, 0xa7, 0xc2, 0x39, 0x51, 0x1f, 0x35, 0x61, 0x55, 0xed, 0xd7, 0x4a, 0xff,
0xaa, 0x6b, 0x40, 0xd1, 0x3d, 0x30, 0xec, 0xd3, 0xe0, 0x02, 0xb3, 0x66, 0x51, 0x0e, 0x65, 0xb0,
0xe0, 0x22, 0x09, 0x8f, 0x48, 0xcc, 0x9a, 0x25, 0xc5, 0xa5, 0x41, 0xe7, 0xcf, 0x05, 0xa8, 0x75,
0x09, 0xe5, 0x47, 0x7e, 0x92, 0x44, 0x71, 0x1f, 0xfd, 0x02, 0x2a, 0xb2, 0x59, 0x0a, 0xc8, 0x40,
0x6a, 0xb7, 0xde, 0xde, 0xd0, 0x0e, 0xea, 0x6a, 0xb4, 0x9b, 0x11, 0xa0, 0xf7, 0x60, 0x3d, 0x73,
0x87, 0x27, 0xb6, 0x1b, 0xa9, 0x7c, 0xd9, 0xad, 0x67, 0x58, 0x21, 0x1a, 0xdd, 0x84, 0xea, 0x05,
0x61, 0x5c, 0x51, 0x94, 0x24, 0x45, 0x45, 0x20, 0xe4, 0xe0, 0x0e, 0xac, 0xca, 0xc1, 0x28, 0x91,
0xc1, 0xad, 0xba, 0x2b, 0x02, 0xec, 0x24, 0xce, 0x3f, 0x0b, 0x50, 0x96, 0xab, 0x71, 0x6c, 0x1a,
0x9f, 0x5f, 0x68, 0xbf, 0x59, 0xd3, 0xf8, 0xfc, 0x62, 0x34, 0x8d, 0xa0, 0xd0, 0xbd, 0x95, 0x9c,
0x46, 0x0c, 0xb6, 0xa0, 0x42, 0xb1, 0x1f, 0x92, 0x78, 0x70, 0x25, 0x55, 0xa8, 0xb8, 0x19, 0x8c,
0xee, 0xc3, 0x06, 0xc3, 0x83, 0x28, 0x4e, 0x5f, 0x7b, 0x14, 0x0f, 0xfc, 0x97, 0x78, 0x20, 0x55,
0xa9, 0xb8, 0xeb, 0x1a, 0xed, 0x2a, 0x2c, 0xfa, 0x14, 0x6a, 0x09, 0x25, 0x89, 0xdf, 0xf7, 0x85,
0xf3, 0x64, 0xf7, 0xb1, 0xde, 0xde, 0xd1, 0xfe, 0x91, 0xba, 0x76, 0x47, 0xc3, 0xae, 0x4d, 0xeb,
0xfc, 0x16, 0x36, 0x8e, 0xfd, 0x21, 0x66, 0x89, 0x1f, 0x88, 0x45, 0x14, 0x91, 0x58, 0xac, 0x34,
0xa9, 0x6f, 0x8c, 0xf9, 0x0f, 0x84, 0xbe, 0x92, 0x46, 0x55, 0xdc, 0x9a, 0xc0, 0x1d, 0x2b, 0x14,
0xda, 0x85, 0x8a, 0x32, 0x49, 0x2f, 0xdb, 0x8a, 0x2b, 0x9d, 0xd5, 0x8d, 0xc2, 0x6c, 0x28, 0x4a,
0x02, 0x6d, 0xd0, 0xaa, 0x72, 0x5c, 0xe0, 0x38, 0x00, 0x9d, 0x98, 0xff, 0xfa, 0xe3, 0x6f, 0x44,
0x0a, 0x8d, 0x12, 0x4b, 0xc8, 0x2f, 0xe9, 0xc4, 0x72, 0x7c, 0xa8, 0x9f, 0x3e, 0x3b, 0x14, 0xc6,
0x69, 0x6d, 0x10, 0x2c, 0x8b, 0x46, 0xd4, 0x34, 0x16, 0xe2, 0x5b, 0xe0, 0x28, 0x19, 0x64, 0xbb,
0x9b, 0xf8, 0x16, 0x38, 0x7e, 0x95, 0x64, 0x35, 0x43, 0x7c, 0x8b, 0x29, 0x06, 0xf8, 0x52, 0xbb,
0xad, 0xea, 0x2a, 0xc0, 0xf9, 0x43, 0x09, 0x6e, 0xca, 0x19, 0x4e, 0xfd, 0x38, 0x7c, 0x49, 0x5e,
0x9f, 0xe2, 0x20, 0xa5, 0x11, 0xbf, 0x12, 0x6b, 0x01, 0xbf, 0xe6, 0xe8, 0x00, 0x36, 0x63, 0xe3,
0x12, 0xcf, 0xa4, 0xa7, 0x98, 0xbe, 0xd6, 0xbe, 0xa1, 0x7d, 0x3a, 0xe6, 0x32, 0xb7, 0x11, 0xe7,
0x11, 0x0c, 0x3d, 0x19, 0xc5, 0xce, 0x88, 0x28, 0x4a, 0x11, 0xdb, 0x5a, 0x44, 0xce, 0xca, 0x2c,
0xa2, 0x86, 0xfd, 0x43, 0xa8, 0xd1, 0x34, 0xf6, 0x7c, 0xe6, 0x49, 0xe3, 0x4b, 0x92, 0x75, 0x53,
0xb3, 0x8e, 0x9c, 0xe8, 0x56, 0x69, 0x1a, 0xef, 0xb3, 0x73, 0xe1, 0x94, 0xfb, 0xb0, 0x61, 0x32,
0xc7, 0xa3, 0x84, 0xf0, 0x1e, 0x33, 0xd9, 0x62, 0xd0, 0xae, 0xc4, 0xa2, 0xf7, 0x61, 0x8b, 0xa5,
0x49, 0x32, 0xc0, 0x43, 0x1c, 0x73, 0x7f, 0xe0, 0xf5, 0x29, 0x49, 0x13, 0xd6, 0x2c, 0xdf, 0x29,
0x3d, 0x28, 0xb9, 0xc8, 0x1e, 0x7a, 0x21, 0x47, 0xd0, 0xdb, 0x00, 0x09, 0x8d, 0x2e, 0xa3, 0x01,
0xee, 0xe3, 0xb0, 0xb9, 0x22, 0x85, 0x5a, 0x18, 0xf4, 0x01, 0x6c, 0x33, 0x1c, 0x04, 0x64, 0x98,
0x78, 0x09, 0x25, 0xa2, 0xf5, 0x53, 0xb9, 0xbe, 0x2a, 0xbd, 0x8e, 0xf4, 0x58, 0x57, 0x0d, 0x89,
0xac, 0x77, 0xfe, 0x54, 0x14, 0x55, 0x32, 0x4e, 0x5f, 0x77, 0x49, 0xa8, 0xa3, 0xa0, 0xeb, 0xc8,
0x3d, 0xa8, 0x07, 0x52, 0x21, 0x4f, 0x54, 0xef, 0xac, 0x50, 0xaf, 0x29, 0x64, 0x57, 0xe2, 0xd0,
0x11, 0x34, 0x98, 0x0e, 0x9a, 0xa8, 0xd6, 0x22, 0x6a, 0xda, 0xbb, 0x4e, 0x56, 0x35, 0x67, 0xc6,
0xd7, 0xdd, 0x60, 0x13, 0x01, 0x5f, 0x65, 0x57, 0x2c, 0xe0, 0x03, 0x55, 0x85, 0x6a, 0xed, 0x9f,
0xdb, 0x52, 0xc6, 0x55, 0xdc, 0x3b, 0x55, 0xb4, 0xaa, 0xee, 0x1a, 0xce, 0xd6, 0x67, 0xb0, 0x66,
0x0f, 0x2c, 0xd4, 0x34, 0x51, 0x40, 0xa3, 0x59, 0x8e, 0xc6, 0x7b, 0xb8, 0x82, 0xb5, 0x0b, 0xea,
0x63, 0x88, 0x6e, 0xa9, 0xc5, 0x31, 0xe4, 0x16, 0x54, 0xb3, 0xe4, 0xd3, 0xc9, 0x3f, 0x42, 0x88,
0x02, 0xeb, 0x73, 0x8e, 0x87, 0x09, 0xd7, 0x5b, 0x94, 0x01, 0x9d, 0xbf, 0x2d, 0x43, 0x63, 0xc2,
0xfb, 0x9f, 0xe4, 0x9a, 0x50, 0xe1, 0xd0, 0x5d, 0x53, 0x65, 0x27, 0xf4, 0xb3, 0xba, 0xcd, 0x96,
0x5a, 0xf3, 0xf6, 0xe1, 0xd1, 0xc0, 0x22, 0xa0, 0x03, 0xd2, 0xf7, 0xc2, 0x88, 0xe2, 0x80, 0x13,
0x7a, 0xa5, 0x75, 0x5c, 0x1b, 0x90, 0xfe, 0x53, 0x83, 0x43, 0xef, 0x03, 0x84, 0x31, 0x93, 0x3b,
0x6f, 0xd4, 0x97, 0x9a, 0xd6, 0xda, 0x0d, 0x3d, 0x73, 0xb6, 0xc7, 0xb8, 0xd5, 0x30, 0x66, 0x5a,
0xd1, 0x47, 0x50, 0x17, 0x55, 0xdb, 0x1b, 0xaa, 0xed, 0x41, 0x65, 0x6f, 0xad, 0x8d, 0x32, 0x6d,
0xb3, 0x9d, 0xc3, 0x5d, 0x4b, 0x46, 0x00, 0x43, 0x9f, 0xc3, 0x8a, 0xac, 0x99, 0xac, 0xb9, 0x22,
0x39, 0xee, 0x4d, 0xd8, 0xa7, 0xa3, 0x7c, 0x28, 0xa9, 0x54, 0x90, 0x35, 0x0b, 0xfa, 0x0d, 0xd4,
0xfc, 0x38, 0x26, 0xdc, 0x57, 0x0b, 0x7a, 0x55, 0x4a, 0x78, 0x30, 0x4b, 0xc2, 0xfe, 0x88, 0x54,
0x89, 0xb1, 0x99, 0x51, 0x1b, 0xca, 0x72, 0xc5, 0x37, 0x2b, 0xd2, 0xda, 0x5b, 0x6f, 0x4a, 0x39,
0x57, 0x91, 0xb6, 0x3e, 0x85, 0x9a, 0xa5, 0xd6, 0x22, 0x29, 0xd6, 0xfa, 0x02, 0x1a, 0xe3, 0xfa,
0x2c, 0x94, 0xa2, 0x77, 0xa1, 0x2a, 0x8f, 0x90, 0xa7, 0x09, 0x0e, 0xa6, 0x77, 0x71, 0xce, 0x27,
0x50, 0x93, 0x24, 0xcf, 0xa3, 0x01, 0xc7, 0x14, 0xfd, 0xcc, 0x26, 0x1a, 0x85, 0x33, 0x93, 0x62,
0xd8, 0xce, 0x61, 0x53, 0xf4, 0x38, 0x12, 0x6f, 0x9a, 0x25, 0xf4, 0x10, 0x56, 0x7a, 0x52, 0x8c,
0xe6, 0x46, 0x36, 0xb7, 0x9a, 0xc0, 0xd5, 0x14, 0x42, 0x9b, 0xe0, 0x02, 0x07, 0xaf, 0x4c, 0x87,
0x22, 0x01, 0xe7, 0x1f, 0x05, 0xa8, 0x59, 0x17, 0x27, 0x72, 0x7f, 0xc0, 0x8c, 0xeb, 0xee, 0x44,
0x7e, 0x8b, 0xbc, 0x8d, 0x62, 0x8e, 0xe9, 0xa5, 0x3f, 0x90, 0xcc, 0x25, 0x37, 0x83, 0xc5, 0xca,
0xe1, 0xd1, 0x10, 0x93, 0x54, 0xb5, 0x06, 0x25, 0xd7, 0x80, 0xaa, 0x13, 0xf5, 0x29, 0xf7, 0x12,
0x4c, 0x23, 0xa2, 0x6e, 0x00, 0x4a, 0xa2, 0x13, 0xf5, 0x29, 0xef, 0x4a, 0x94, 0x60, 0xa6, 0x98,
0xd3, 0x08, 0x33, 0xb9, 0x19, 0x97, 0x5d, 0x03, 0xa2, 0x87, 0xb0, 0x89, 0x5f, 0x47, 0xdc, 0x23,
0xb1, 0x97, 0xc6, 0x17, 0x52, 0xbf, 0x2b, 0x5d, 0x52, 0x37, 0xc4, 0xc0, 0x49, 0x7c, 0x6e, 0xd0,
0xce, 0xdf, 0x8b, 0x50, 0xee, 0x58, 0x0d, 0xf2, 0xe8, 0x90, 0x7c, 0x13, 0xaa, 0x14, 0x27, 0xc4,
0xe3, 0x7e, 0x3f, 0x6b, 0xaa, 0x04, 0xe2, 0xcc, 0xef, 0x33, 0xa1, 0x9f, 0x1c, 0x0c, 0xa3, 0x3e,
0x66, 0xdc, 0x74, 0x56, 0x35, 0x81, 0x7b, 0xaa, 0x50, 0xc2, 0x19, 0x2c, 0xfa, 0x3d, 0x96, 0xaa,
0x2f, 0xbb, 0xf2, 0x1b, 0xdd, 0x53, 0xa5, 0xa5, 0x3c, 0x6b, 0xab, 0x91, 0xd5, 0xc6, 0xbe, 0x26,
0x5a, 0x19, 0xbb, 0x26, 0x6a, 0xc2, 0x6a, 0x40, 0xb1, 0xcf, 0x71, 0xa8, 0x2b, 0xbf, 0x01, 0x45,
0x43, 0x3a, 0x20, 0x7e, 0x88, 0x43, 0x99, 0xec, 0x55, 0x57, 0x43, 0xe8, 0x5d, 0x58, 0x66, 0x09,
0x0e, 0x9a, 0xd5, 0x19, 0x19, 0x22, 0x47, 0xd1, 0xc7, 0x50, 0x53, 0x1e, 0x51, 0x51, 0x86, 0x5c,
0x42, 0xd8, 0x77, 0x63, 0x36, 0x99, 0xf3, 0x12, 0x90, 0x9d, 0x56, 0xba, 0xd3, 0x7e, 0x17, 0x56,
0x64, 0xd6, 0x99, 0x2e, 0x7b, 0xcd, 0x9e, 0xd3, 0xd5, 0x63, 0x73, 0x1f, 0x2f, 0xbf, 0x01, 0xa4,
0x94, 0xb5, 0x6f, 0x1f, 0xe6, 0x4d, 0x7c, 0xe1, 0xaf, 0x4b, 0x4c, 0x5f, 0x12, 0x66, 0x7a, 0x6b,
0x03, 0x3a, 0xff, 0x2d, 0xc0, 0x56, 0x4e, 0xb0, 0xd6, 0xde, 0xc9, 0x4b, 0xce, 0x2b, 0xaf, 0xa5,
0x3e, 0x86, 0xe5, 0x28, 0xee, 0x11, 0x99, 0x15, 0xb5, 0xf6, 0xbb, 0xb9, 0xc9, 0x73, 0xd2, 0xf6,
0x3a, 0x71, 0x8f, 0xa8, 0xc2, 0x24, 0x39, 0xe6, 0xbe, 0x1f, 0x78, 0x04, 0xd5, 0x8c, 0x75, 0xa1,
0x1a, 0xf2, 0x19, 0x34, 0xa4, 0x1e, 0x82, 0x7b, 0x41, 0x67, 0x39, 0x27, 0xb0, 0x69, 0xf1, 0x6a,
0x7f, 0x20, 0x9d, 0x3f, 0x7a, 0x87, 0x94, 0xd9, 0x32, 0x6f, 0xec, 0xfe, 0x55, 0x00, 0xd8, 0x4f,
0xf9, 0x85, 0xde, 0x50, 0xec, 0xc4, 0x2e, 0xbc, 0xe1, 0xfe, 0xb3, 0x98, 0xbf, 0xff, 0x14, 0x2a,
0xf8, 0x29, 0xbf, 0x30, 0x6d, 0xa7, 0xf8, 0x16, 0xe7, 0x02, 0x75, 0xf8, 0xf1, 0xfc, 0x30, 0xa4,
0x98, 0x31, 0xdd, 0x7f, 0xd6, 0x15, 0x76, 0x5f, 0x21, 0x05, 0x59, 0x14, 0xe2, 0x98, 0x8b, 0x2e,
0x86, 0x93, 0x57, 0x58, 0x35, 0xee, 0x55, 0xb7, 0x6e, 0xb0, 0x67, 0x02, 0x29, 0xc8, 0x28, 0xee,
0x47, 0x8c, 0x53, 0x43, 0xa6, 0x16, 0x5e, 0xdd, 0x60, 0x25, 0x99, 0xf3, 0x97, 0x02, 0x34, 0xba,
0xe9, 0x60, 0x90, 0xbb, 0x22, 0x9c, 0x37, 0x15, 0xdf, 0xd3, 0x56, 0x14, 0x73, 0x8b, 0x7f, 0xe4,
0x1e, 0x6d, 0xd8, 0x17, 0xb0, 0xce, 0xd4, 0xbe, 0x64, 0xb6, 0x6a, 0xd5, 0x98, 0xee, 0xcc, 0xd8,
0x02, 0xdd, 0x3a, 0xb3, 0x41, 0xe7, 0x5b, 0xd8, 0xb4, 0x54, 0xd4, 0x41, 0xbc, 0x09, 0xea, 0x94,
0xed, 0x51, 0xdc, 0x33, 0xae, 0x8f, 0x14, 0x45, 0x6f, 0xee, 0x68, 0xba, 0x80, 0xd4, 0x65, 0xc5,
0x4f, 0x32, 0x7f, 0xfa, 0x9d, 0xcf, 0x13, 0xd8, 0xca, 0xc9, 0x5c, 0xf0, 0x16, 0x64, 0x5b, 0x17,
0x87, 0xe7, 0xcc, 0xca, 0x77, 0xe7, 0x1e, 0xd4, 0xce, 0x67, 0x1d, 0x82, 0x96, 0xcd, 0x21, 0xe8,
0x3e, 0x6c, 0x9e, 0xaa, 0x7b, 0x8d, 0x8e, 0x4c, 0x85, 0x5e, 0xa4, 0x0e, 0x3d, 0x69, 0x9a, 0xed,
0x02, 0xf2, 0xdb, 0xf9, 0x4f, 0x01, 0x36, 0x9e, 0x47, 0x03, 0xcc, 0xae, 0x18, 0xc7, 0x43, 0x79,
0x73, 0x26, 0x1a, 0x42, 0xb1, 0x53, 0x31, 0xee, 0x0f, 0x13, 0x7d, 0xb6, 0x1a, 0x21, 0xd0, 0x23,
0x00, 0x73, 0x8d, 0xa2, 0xfb, 0xc8, 0x5a, 0xbb, 0x69, 0x8e, 0x24, 0xe3, 0x73, 0xba, 0x55, 0x66,
0x50, 0xe8, 0x43, 0x80, 0x94, 0xe1, 0xd0, 0x7b, 0x79, 0xc5, 0x31, 0xd3, 0x71, 0x37, 0x45, 0xf8,
0xdc, 0x3e, 0x91, 0x08, 0xaa, 0xaf, 0x04, 0x11, 0xfa, 0x08, 0x6a, 0x51, 0x4c, 0x42, 0x2c, 0x0f,
0x31, 0xa1, 0x6e, 0xeb, 0xa6, 0xf1, 0x80, 0x22, 0x3b, 0x67, 0x38, 0x74, 0x7e, 0x34, 0xb5, 0xcf,
0xf8, 0x4d, 0xbb, 0xfd, 0x00, 0x36, 0x55, 0x9a, 0xf4, 0x32, 0x7b, 0x4d, 0x11, 0x37, 0xa7, 0xb2,
0x31, 0x4f, 0xb8, 0x8d, 0x48, 0x77, 0x0b, 0x86, 0x7e, 0xee, 0x74, 0x7a, 0x05, 0x1b, 0x67, 0x7e,
0x3f, 0x97, 0x4b, 0x0f, 0x61, 0x95, 0xd1, 0xe0, 0xd8, 0xd4, 0x87, 0x69, 0xd9, 0x64, 0x08, 0xd0,
0x2f, 0xa1, 0x12, 0x62, 0xc6, 0x8f, 0x4d, 0x3f, 0x3c, 0x8d, 0x38, 0xa3, 0x10, 0x65, 0x71, 0x34,
0xd9, 0x62, 0x49, 0xf6, 0xf0, 0x16, 0x54, 0xcc, 0xfd, 0x07, 0x5a, 0x85, 0xd2, 0xd9, 0x41, 0xb7,
0xb1, 0x24, 0x3e, 0xce, 0x9f, 0x76, 0x1b, 0x85, 0x87, 0x43, 0x68, 0x8c, 0x9f, 0xfe, 0xd1, 0x0e,
0x6c, 0x75, 0xdd, 0x93, 0xee, 0xfe, 0x8b, 0xfd, 0xb3, 0xce, 0xc9, 0xb1, 0xd7, 0x75, 0x3b, 0xdf,
0xec, 0x9f, 0x3d, 0x6b, 0x2c, 0xa1, 0xbb, 0x70, 0xdb, 0x1e, 0xf8, 0xfa, 0xe4, 0xf4, 0xcc, 0x3b,
0x3b, 0xf1, 0x0e, 0x4e, 0x8e, 0xcf, 0xf6, 0x3b, 0xc7, 0xcf, 0xdc, 0x46, 0x01, 0xdd, 0x86, 0x5d,
0x9b, 0xe4, 0xab, 0xce, 0xd3, 0x8e, 0xfb, 0xec, 0x40, 0x7c, 0xef, 0x1f, 0x36, 0x8a, 0xed, 0xbf,
0xae, 0xc1, 0x9a, 0x32, 0x10, 0xd3, 0xcb, 0x28, 0x10, 0x31, 0x83, 0xd1, 0x1e, 0x8c, 0x9a, 0xd6,
0x8d, 0x56, 0xae, 0xdb, 0x6b, 0xed, 0x4e, 0x19, 0x51, 0x8e, 0x70, 0x96, 0xd0, 0x73, 0xdd, 0x56,
0xaa, 0xdd, 0x0b, 0xed, 0x4e, 0xdb, 0xd1, 0x94, 0x98, 0xd6, 0xec, 0xcd, 0xce, 0x59, 0x42, 0x5f,
0xea, 0x0e, 0x56, 0x64, 0x15, 0xda, 0xb1, 0x49, 0xad, 0xf5, 0xd9, 0x6a, 0x4e, 0x0e, 0xd8, 0x12,
0xb2, 0xf2, 0x95, 0x49, 0x18, 0xaf, 0xb9, 0x99, 0x84, 0x89, 0x4a, 0xa7, 0x6c, 0xb1, 0x4a, 0x4a,
0x66, 0xcb, 0x64, 0xe9, 0xca, 0x6c, 0x99, 0x52, 0x81, 0x2c, 0x9f, 0xa8, 0x35, 0x92, 0xf7, 0x49,
0xae, 0xde, 0xe4, 0x7d, 0x92, 0x5f, 0x52, 0xce, 0x12, 0xda, 0x87, 0x6a, 0xf6, 0x38, 0x94, 0x59,
0x34, 0xfe, 0xd0, 0x34, 0x0a, 0xcf, 0xc4, 0x3b, 0x92, 0xb3, 0x84, 0x1e, 0xc3, 0x8a, 0x7a, 0xd2,
0x41, 0xdb, 0xd9, 0x54, 0xd6, 0xc3, 0x50, 0xeb, 0xc6, 0x18, 0x76, 0xc4, 0x79, 0x02, 0xeb, 0xf9,
0xcb, 0x4d, 0x74, 0x6b, 0xc6, 0x9d, 0xa7, 0x92, 0x74, 0xfb, 0x8d, 0x37, 0xa2, 0xce, 0x12, 0x3a,
0x87, 0xc6, 0xf8, 0xf5, 0x2f, 0x7a, 0x5b, 0x33, 0xcd, 0xb8, 0x90, 0x6e, 0xbd, 0x33, 0x73, 0x3c,
0x13, 0xeb, 0x5a, 0xd7, 0xa4, 0x2a, 0x1c, 0xe8, 0xf6, 0x38, 0x57, 0xee, 0x72, 0xbd, 0xf5, 0xf6,
0xac, 0xe1, 0x4c, 0xe6, 0x09, 0xac, 0xe7, 0xaf, 0xf6, 0x33, 0xdb, 0xa7, 0xbe, 0x11, 0xb4, 0x6e,
0xcf, 0x18, 0x9d, 0xaa, 0xa4, 0x7a, 0xa0, 0x98, 0x54, 0x32, 0xf7, 0x02, 0x32, 0xa9, 0x64, 0xfe,
0x5d, 0x63, 0x4c, 0xa6, 0x7a, 0xb7, 0x9c, 0x94, 0x99, 0x7b, 0x56, 0x9d, 0x94, 0x99, 0x7f, 0xee,
0x1c, 0x8b, 0x91, 0x7e, 0xeb, 0x99, 0x8c, 0x51, 0xfe, 0xe1, 0x68, 0x32, 0x46, 0x63, 0x8f, 0x44,
0xce, 0x12, 0xfa, 0x16, 0x36, 0x27, 0x5e, 0xfc, 0xd0, 0x3b, 0x93, 0x0f, 0x68, 0xf9, 0x82, 0x71,
0x67, 0x36, 0x41, 0x26, 0xf9, 0x7b, 0xd8, 0x9a, 0xf2, 0x00, 0x87, 0xee, 0xbe, 0xe9, 0x71, 0x4e,
0x49, 0x77, 0xae, 0x7f, 0xbf, 0x73, 0x96, 0xd0, 0xc7, 0x50, 0x96, 0x0f, 0xe8, 0x68, 0x2b, 0x5b,
0x65, 0xa3, 0xe7, 0xfa, 0xd6, 0x76, 0x1e, 0x99, 0x71, 0x3d, 0x82, 0x15, 0xf5, 0x28, 0x8e, 0x2c,
0x8a, 0xd1, 0x63, 0x7a, 0xeb, 0xad, 0x31, 0xac, 0x5d, 0x39, 0xec, 0x53, 0xf1, 0xee, 0x94, 0x63,
0xd4, 0x58, 0xe5, 0x98, 0xf2, 0xef, 0x03, 0x67, 0x09, 0x3d, 0x81, 0x8a, 0xd9, 0xb4, 0x90, 0x59,
0xe2, 0x63, 0x5b, 0x66, 0x6b, 0x67, 0x02, 0x6f, 0xd8, 0x5f, 0xae, 0xc8, 0xbb, 0xfa, 0x8f, 0xfe,
0x1f, 0x00, 0x00, 0xff, 0xff, 0x1c, 0xf3, 0xc7, 0xd9, 0x14, 0x21, 0x00, 0x00,
}
......@@ -55,6 +55,8 @@ service ImageService {
rpc ImageFsInfo(ImageFsInfoRequest) returns (ImageFsInfoResponse) {}
// Load image from file
rpc LoadImage(LoadImageRequest) returns (LoadImageResponose) {}
// Import rootfs to be image
rpc Import(ImportRequest) returns (ImportResponose) {}
// isulad image services
// get all Container rootfs
......@@ -142,6 +144,17 @@ message LoadImageResponose {
uint32 cc = 3;
}
message ImportRequest {
string file = 1;
string tag = 2;
}
message ImportResponose {
string id = 1;
string errmsg = 2;
uint32 cc = 3;
}
message GraphdriverStatusRequest {}
message GraphdriverStatusResponse {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册