def from_options(cls, reactor, options): """ Create a cluster container deployment object from the options given through command line. :param reactor: reactor :param options: ``ContainerOptions`` container the parsed options given to the script. """ try: image = DockerImage(repository=options['image']) max_size = int(GiB(options['max-size']).to_Byte().value) mountpoint = unicode(options['mountpoint']) control_node_address = options['control-node'] timeout = options['wait'] except Exception as e: sys.stderr.write("%s: %s\n" % ("Missing or wrong arguments", e)) sys.stderr.write(e.args[0]) sys.stderr.write('\n\n') sys.stderr.write(options.getSynopsis()) sys.stderr.write('\n') sys.stderr.write(options.getUsage()) raise SystemExit(1) certificates_path = FilePath(options['cert-directory']) cluster_cert = certificates_path.child(b"cluster.crt") user_cert = certificates_path.child(b"user.crt") user_key = certificates_path.child(b"user.key") # Initialise client client = FlockerClient(reactor, control_node_address, REST_API_PORT, cluster_cert, user_cert, user_key) return cls(reactor, image, max_size, mountpoint, control_node_address, timeout, cluster_cert, user_cert, user_key, client)
def _initialise_client(self): """ Initialise flocker client. """ self.client = FlockerClient( self.reactor, self.control_node_address, REST_API_PORT, self.cluster_cert, self.user_cert, self.user_key )
def make_client(reactor, cluster): """ Create a :class:`FlockerClient` object for accessing the given cluster. :param reactor: The reactor. :param flocker.provision._common.Cluster cluster: The target cluster. :return: The client object. :rtype: flocker.apiclient.FlockerClient """ control_node = cluster.control_node.address certificates_path = cluster.certificates_path cluster_cert = certificates_path.child(b"cluster.crt") user_cert = certificates_path.child(b"user.crt") user_key = certificates_path.child(b"user.key") return FlockerClient(reactor, control_node, REST_API_PORT, cluster_cert, user_cert, user_key)
def main(reactor, args): try: options = ScriptOptions() options.parseOptions(args) except UsageError as e: sys.stderr.write(e.args[0]) sys.stderr.write('\n\n') sys.stderr.write(options.getSynopsis()) sys.stderr.write('\n') sys.stderr.write(options.getUsage()) raise SystemExit(1) certificates_path = FilePath(options['cert-directory']) cluster_cert = certificates_path.child(b"cluster.crt") user_cert = certificates_path.child(b"user.crt") user_key = certificates_path.child(b"user.key") client = FlockerClient(reactor, options['control-node'], REST_API_PORT, cluster_cert, user_cert, user_key) return cleanup_cluster(client, options['wait'])