github.com/cloudwan/edgelq-sdk@v1.15.4/devices/proto/v1/customized_image.proto (about)

     1  syntax = "proto3";
     2  
     3  package ntt.devices.v1;
     4  
     5  import "google/api/resource.proto";
     6  import "goten-sdk/types/meta.proto";
     7  
     8  option go_package = "github.com/cloudwan/edgelq-sdk/devices/resources/v1/customized_image;customized_image";
     9  option java_multiple_files = true;
    10  option java_outer_classname = "CustomizedImageProto";
    11  option java_package = "com.ntt.devices.pb.v1";
    12  
    13  // CustomizedImage Resource
    14  message CustomizedImage {
    15    option (google.api.resource) = {
    16      type : "devices.edgelq.com/CustomizedImage"
    17      pattern : "projects/{project}/regions/{region}/customizedImages/"
    18                "{customized_image}"
    19    };
    20  
    21    // Name of CustomizedImage
    22    // When creating a new instance, this field is optional and if not provided,
    23    // it will be generated automatically. Last ID segment must conform to the
    24    // following regex: [a-z][a-z0-9\\-]{0,28}[a-z0-9]
    25    string name = 1;
    26  
    27    // Metadata is an object with information like create, update and delete time
    28    // (for async deleted resources), has user labels/annotations, sharding
    29    // information, multi-region syncing information and may have non-schema
    30    // owners (useful for taking ownership of resources belonging to lower level
    31    // services by higher ones).
    32    goten.types.Meta metadata = 2;
    33  
    34    Spec spec = 3;
    35  
    36    Status status = 4;
    37  
    38    message Spec {
    39      // Deprecated. Use os_version instead.
    40      // After a while, version and device_type are removed
    41      // and os_version becomes required
    42      string version = 1 [ deprecated = true ];
    43  
    44      string device_type = 2 [ deprecated = true ];
    45  
    46      string os_version = 14;
    47  
    48      // Either provisioning_policy or service_account must be specified
    49      string provisioning_policy = 3;
    50  
    51      string service_account = 15;
    52  
    53      string service_account_key = 16;
    54  
    55      // Password for 'admin' user in the image.
    56      // Please generate it using bcrypt (e.g. `mkpasswd --method=bcrypt`) and
    57      // provide the hashed value ref:
    58      // https://www.usenix.org/legacy/event/usenix99/provos/provos.pdf
    59      string password = 5;
    60  
    61      bool encryption = 6;
    62  
    63      // Unlike password field, encryption_password  must be plain text
    64      // This field will be set to "" after the image is ready
    65      string encryption_password = 7;
    66  
    67      string disk_mapping = 8;
    68  
    69      string network_agent = 9;
    70  
    71      string ntp = 10;
    72  
    73      string http_proxy = 11;
    74  
    75      string https_proxy = 12;
    76  
    77      string no_proxy = 13;
    78  
    79      reserved 4;
    80    }
    81  
    82    message Status {
    83      // State of the image.
    84      State state = 1;
    85  
    86      // Error log when state is ERROR.
    87      string log = 2;
    88  
    89      // TODO hide this from client
    90      string file = 5 [ deprecated = true ];
    91  
    92      // base64 encoded
    93      string md5sum = 3;
    94  
    95      enum State {
    96        // Initial state
    97        STATE_UNSPECIFIED = 0;
    98  
    99        // Backend is processing the customization request.
   100        IN_PROGRESS = 1;
   101  
   102        // There was an error processing the customization request. Check the
   103        // parameters and try again.
   104        ERROR = 2;
   105  
   106        // The customized image is ready to download.
   107        READY = 3;
   108      }
   109    }
   110  }