2 #include <boost/filesystem.hpp>
10 std::stringstream cmd_str;
26 cmd_str <<
" --vmi-left-ip 0.0.0.0/0";
34 cmd_str <<
" --vmi-left-mac 00:00:00:00:00:00";
37 cmd_str <<
" --gw-ip " << props.
gw_ip;
41 LOG(ERROR,
"loadbalancer id is missing for service instance: "
46 std::stringstream pathgen;
49 const std::string &filename = pathgen.str();
50 std::ofstream fs(filename.c_str());
52 LOG(ERROR,
"File create " << filename <<
": " << strerror(errno));
55 const std::vector<autogen::KeyValuePair> &kvps = props.
instance_kvps;
56 bool kvp_found =
false;
57 std::vector<autogen::KeyValuePair>::const_iterator iter;
58 autogen::KeyValuePair kvp;
59 for (iter = kvps.begin(); iter != kvps.end(); ++iter) {
63 if (kvp_found ==
true)
65 fs << kvp.key <<
"::::" << kvp.value;
69 fs <<
":::::" <<
"lb_ssl_cert_path";
73 fs <<
":::::" <<
"lbaas_auth_conf";
77 if (kvp_found ==
false) {
78 LOG(ERROR,
"KeyValuePair is missing for loadbalancer: "
82 cmd_str <<
" --cfg-file " << pathgen.str();
86 cmd_str <<
" --update";
88 LOG(INFO,
"Command to be executed: " + cmd_str.str());
94 std::stringstream cmd_str;
116 LOG(ERROR,
"loadbalancer id is missing for service instance: "
122 LOG(INFO,
"Preparing to destroy with command: " + cmd_str.str());
std::string loadbalancer_id
std::string ip_addr_inside
const std::string & ServiceTypeString() const
std::string si_lb_ssl_cert_path() const
static std::string UuidToString(const boost::uuids::uuid &id)
std::string loadbalancer_config_path_
InstanceTask * CreateStopTask(const ServiceInstance::Properties &props)
boost::uuids::uuid instance_id
EventManager * event_manager() const
boost::uuids::uuid vmi_outside
std::vector< autogen::KeyValuePair > instance_kvps
AgentParam * params() const
int ip_prefix_len_outside
std::string mac_addr_inside
bool isApplicable(const ServiceInstance::Properties &props)
std::string si_lbaas_auth_conf() const
#define LOG(_Level, _Msg)
boost::uuids::uuid vmi_inside
InstanceTask * CreateStartTask(const ServiceInstance::Properties &props, bool update)
std::string mac_addr_outside
std::string ip_addr_outside