def execute_docker_compose(context, composed, application, command, options=''): session = OverthereHostSession(composed.container.host, stream_command_output=True, execution_context=context) runtime = { 'application': application, 'command': command, 'options': options, 'uploaded_compose_file': session.upload_file_to_work_dir(composed.file), 'dockerHost': composed.container.dockerHost, 'cert_pem': session.upload_text_content_to_work_dir(composed.container.certPem, "cert.pem"), 'ca_pem': session.upload_text_content_to_work_dir(composed.container.caPem, "ca.pem"), 'key_pem': session.upload_text_content_to_work_dir(composed.container.keyPem, "key.pem") } print "docker-compose {0}....".format(runtime['command']) command_line = "docker-compose --file {r[uploaded_compose_file].path} --project-name {r[application]} --tlscacert {r[ca_pem].path} --tlscert {r[cert_pem].path} --tlskey {r[key_pem].path} --tlsverify -H {r[dockerHost]} --skip-hostname-check {r[command]} {r[options]} ".format( r=runtime) print '---------------------------' print command_line print '---------------------------' response = session.execute(command_line) if response.rc != 0: sys.exit(response.rc)