| |
| /* |
| * |
| * Copyright 2016 RIFT.IO Inc |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * |
| * |
| */ |
| |
| module rw-config-agent |
| { |
| namespace "http://riftio.com/ns/riftware-1.0/rw-config-agent"; |
| prefix "rw-config-agent"; |
| |
| import rw-pb-ext { |
| prefix "rwpb"; |
| } |
| |
| import ietf-inet-types { |
| prefix "inet"; |
| } |
| |
| import rwcal { |
| prefix "rwcal"; |
| } |
| |
| revision 2016-02-04 { |
| description |
| "Initial revision."; |
| } |
| |
| typedef config-agent-account-type { |
| description "config agent account type"; |
| type enumeration { |
| enum juju; |
| enum riftca; |
| } |
| } |
| |
| container config-agent { |
| rwpb:msg-new ConfigAgent; |
| |
| list account { |
| rwpb:msg-new ConfigAgentAccount; |
| key "name"; |
| |
| description "List of configuration agent accounts"; |
| |
| leaf name { |
| description "Name of this config agent account"; |
| type string; |
| } |
| |
| leaf account-type { |
| description |
| "Default account type is Rift Configuration Agent (RiftCA)"; |
| type config-agent-account-type; |
| default "riftca"; |
| } |
| |
| choice config-agent-account-type { |
| case juju { |
| description |
| "Configure the VNF through Juju."; |
| container juju { |
| leaf ip-address { |
| description "Juju host IP address."; |
| type inet:ip-address; |
| } |
| leaf port { |
| description |
| "Juju host port number. Default 17070."; |
| type inet:port-number; |
| default 17070; |
| } |
| leaf user { |
| description |
| "User name to connect to Juju host. Default user-admin."; |
| type string; |
| default "user-admin" ; |
| } |
| leaf secret { |
| description |
| "Admin secret or password for Juju host."; |
| type string; |
| } |
| } |
| } |
| } |
| uses rwcal:connection-status; |
| } |
| } |
| |
| rpc update-cfg-agent-status { |
| description "Begin config agent account connection status"; |
| input { |
| leaf cfg-agent-account { |
| mandatory true; |
| description |
| "The config agent account name to update connection status for"; |
| type string; |
| } |
| } |
| } |
| } |