blob: 1740af32d3192a3925ce208935cf51f40a864431 [file] [log] [blame]
/*
*
* 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;
}
}
}
}