3 * Copyright 2016 RIFT.IO Inc
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
21 * @file rw-staging-mgmt.yang
22 * @author Varun Prasad
24 * @brief Pacakage Management Yang
27 module rw-staging-mgmt
29 namespace "http://riftio.com/ns/riftware-1.0/rw-staging-mgmt";
30 prefix "rw-staging-mgmt";
32 import ietf-yang-types {
61 typedef staging-area-status {
68 grouping staging-area-config {
71 type manotypes:package-type;
75 description "name of the binary";
80 description "lifetime of the staging area (in seconds)";
86 grouping staging-area-meta {
89 description "The status of the staging area";
90 type staging-area-status;
94 description "start time (unix epoch)";
99 description "stop time (unix epoch)";
104 description "size of the binary in bytes";
109 description "Path of the staging area";
115 container staging-areas {
116 rwpb:msg-new StagingAreas;
117 description "Staging Areas";
121 rwpb:msg-new StagingArea;
125 description "Staging Area ID";
129 uses staging-area-config;
130 uses staging-area-meta;
135 rpc create-staging-area {
136 description "Creates a staging area for the upload.";
139 uses staging-area-config;
148 description "Endpoint that contains all the package-related data";