17 #ifndef __NETWORK_CNI_ISOLATOR_HPP__
18 #define __NETWORK_CNI_ISOLATOR_HPP__
37 class NetworkCniIsolatorSetup;
57 const std::list<mesos::slave::ContainerState>& states,
61 const ContainerID& containerId,
62 const mesos::slave::ContainerConfig& containerConfig);
65 const ContainerID& containerId,
69 const ContainerID& containerId);
72 const ContainerID& containerId);
75 struct ContainerNetwork
78 std::string networkName;
96 : containerNetworks (_containerNetworks),
122 const std::string& configDir,
123 const std::string& pluginDir);
125 NetworkCniIsolatorProcess(
134 networkConfigs(_networkConfigs),
135 cniDNSMap(_cniDNSMap),
136 defaultCniDNS(_defaultCniDNS),
138 pluginDir(_pluginDir) {}
141 const ContainerID& containerId,
146 const NetworkCniIsolatorSetup& setup);
149 const ContainerID& containerId,
153 const ContainerID& containerId,
154 const std::string& networkName,
155 const std::string& netNsHandle);
158 const ContainerID& containerId,
159 const std::string& networkName,
160 const std::string& plugin,
167 const ContainerID& containerId,
168 const std::string& networkName);
171 const ContainerID& containerId,
172 const std::string& networkName,
173 const std::string& plugin,
180 const ContainerID& containerId,
195 const std::string& network,
196 const std::string& path);
258 #endif // __NETWORK_CNI_ISOLATOR_HPP__
std::string generate(const std::string &prefix="")
Returns 'prefix(N)' where N represents the number of instances where the same prefix (wrt...
ProcessBase(const std::string &id="")
NetworkCniIsolatorSetup()
Definition: cni.hpp:245
bool bind_host_files
Definition: cni.hpp:241
virtual process::Future< ContainerStatus > status(const ContainerID &containerId)
bool bind_readonly
Definition: cni.hpp:242
virtual process::Future< Option< mesos::slave::ContainerLaunchInfo > > prepare(const ContainerID &containerId, const mesos::slave::ContainerConfig &containerConfig)
DWORD pid_t
Definition: windows.hpp:187
Option< std::string > etc_resolv_conf
Definition: cni.hpp:240
Definition: subcommand.hpp:41
static Try< mesos::slave::Isolator * > create(const Flags &flags)
Definition: isolator.hpp:80
Try< std::string > hostname()
Definition: net.hpp:154
Option< std::string > etc_hosts_path
Definition: cni.hpp:238
Option< std::string > rootfs
Definition: cni.hpp:237
Try< std::vector< Entry > > list(const std::string &hierarchy, const std::string &cgroup)
virtual ~NetworkCniIsolatorProcess()
Definition: cni.hpp:52
Result< Process > process(pid_t pid)
Definition: freebsd.hpp:30
virtual process::Future< Nothing > isolate(const ContainerID &containerId, pid_t pid)
virtual process::Future< Nothing > cleanup(const ContainerID &containerId)
virtual bool supportsNesting()
Option< std::string > hostname
Definition: cni.hpp:236
virtual flags::FlagsBase * getFlags()
Definition: cni.hpp:251
Option< pid_t > pid
Definition: cni.hpp:235
virtual process::Future< Nothing > recover(const std::list< mesos::slave::ContainerState > &states, const hashset< ContainerID > &orphans)
Flags flags
Definition: cni.hpp:247
Option< std::string > etc_hostname_path
Definition: cni.hpp:239
static const char * NAME
Definition: cni.hpp:229