示例#1
0
def cloud_to_prod_jobspec(language, test_case, docker_image=None, auth=False):
  """Creates jobspec for cloud-to-prod interop test"""
  cmdline = language.cloud_to_prod_args() + ['--test_case=%s' % test_case]
  cwd = language.client_cwd
  environ = dict(language.cloud_to_prod_env(), **language.global_env())
  container_name = None
  if auth:
    cmdline, environ = add_auth_options(language, test_case, cmdline, environ)
  cmdline = bash_login_cmdline(cmdline)

  if docker_image:
    container_name = dockerjob.random_name('interop_client_%s' % language.safename)
    cmdline = docker_run_cmdline(cmdline,
                                 image=docker_image,
                                 cwd=cwd,
                                 environ=environ,
                                 docker_args=['--net=host',
                                              '--name', container_name])
    cwd = None
    environ = None

  suite_name='cloud_to_prod_auth' if auth else 'cloud_to_prod'
  test_job = jobset.JobSpec(
          cmdline=cmdline,
          cwd=cwd,
          environ=environ,
          shortname="%s:%s:%s" % (suite_name, language, test_case),
          timeout_seconds=2*60,
          flake_retries=5 if args.allow_flakes else 0,
          timeout_retries=2 if args.allow_flakes else 0,
          kill_handler=_job_kill_handler)
  test_job.container_name = container_name
  return test_job
示例#2
0
def cloud_to_cloud_jobspec(language, test_case, server_name, server_host,
                           server_port, docker_image=None):
  """Creates jobspec for cloud-to-cloud interop test"""
  cmdline = bash_login_cmdline(language.cloud_to_cloud_args() +
                               ['--test_case=%s' % test_case,
                                '--server_host=%s' % server_host,
                                '--server_port=%s' % server_port ])
  cwd = language.client_cwd
  environ = language.global_env()
  if docker_image:
    container_name = dockerjob.random_name('interop_client_%s' % language.safename)
    cmdline = docker_run_cmdline(cmdline,
                                 image=docker_image,
                                 environ=environ,
                                 cwd=cwd,
                                 docker_args=['--net=host',
                                              '--name', container_name])
    cwd = None

  test_job = jobset.JobSpec(
          cmdline=cmdline,
          cwd=cwd,
          environ=environ,
          shortname="cloud_to_cloud:%s:%s_server:%s" % (language, server_name,
                                                 test_case),
          timeout_seconds=2*60,
          flake_retries=5 if args.allow_flakes else 0,
          timeout_retries=2 if args.allow_flakes else 0,
          kill_handler=_job_kill_handler)
  test_job.container_name = container_name
  return test_job
示例#3
0
def cloud_to_cloud_jobspec(language,
                           test_case,
                           server_name,
                           server_host,
                           server_port,
                           docker_image=None):
    """Creates jobspec for cloud-to-cloud interop test"""
    cmdline = bash_login_cmdline(language.cloud_to_cloud_args() + [
        '--test_case=%s' % test_case,
        '--server_host=%s' % server_host,
        '--server_port=%s' % server_port
    ])
    cwd = language.client_cwd
    if docker_image:
        container_name = dockerjob.random_name('interop_client_%s' %
                                               language.safename)
        cmdline = docker_run_cmdline(
            cmdline,
            image=docker_image,
            cwd=cwd,
            docker_args=['--net=host', '--name', container_name])
        cwd = None

    test_job = jobset.JobSpec(cmdline=cmdline,
                              cwd=cwd,
                              shortname="cloud_to_cloud:%s:%s_server:%s" %
                              (language, server_name, test_case),
                              timeout_seconds=2 * 60,
                              flake_retries=5 if args.allow_flakes else 0,
                              timeout_retries=2 if args.allow_flakes else 0,
                              kill_handler=_job_kill_handler)
    test_job.container_name = container_name
    return test_job
def cloud_to_cloud_jobspec(language, test_case, server_name, server_host,
                           server_port, docker_image=None):
  """Creates jobspec for cloud-to-cloud interop test"""
  cmdline = bash_login_cmdline(language.client_cmd([
      '--server_host_override=foo.test.google.fr',
      '--use_tls=true',
      '--use_test_ca=true',
      '--test_case=%s' % test_case,
      '--server_host=%s' % server_host,
      '--server_port=%s' % server_port]))
  cwd = language.client_cwd
  environ = language.global_env()
  if docker_image:
    container_name = dockerjob.random_name('interop_client_%s' % language.safename)
    cmdline = docker_run_cmdline(cmdline,
                                 image=docker_image,
                                 environ=environ,
                                 cwd=cwd,
                                 docker_args=['--net=host',
                                              '--name', container_name])
    cwd = None

  test_job = jobset.JobSpec(
          cmdline=cmdline,
          cwd=cwd,
          environ=environ,
          shortname='cloud_to_cloud:%s:%s_server:%s' % (language, server_name,
                                                        test_case),
          timeout_seconds=_TEST_TIMEOUT,
          flake_retries=5 if args.allow_flakes else 0,
          timeout_retries=2 if args.allow_flakes else 0,
          kill_handler=_job_kill_handler)
  if docker_image:
    test_job.container_name = container_name
  return test_job
示例#5
0
def cloud_to_prod_jobspec(language, test_case, docker_image=None, auth=False):
    """Creates jobspec for cloud-to-prod interop test"""
    cmdline = language.cloud_to_prod_args() + ['--test_case=%s' % test_case]
    cwd = language.client_cwd
    environ = language.cloud_to_prod_env()
    container_name = None
    if auth:
        cmdline, environ = add_auth_options(language, test_case, cmdline,
                                            environ)
    cmdline = bash_login_cmdline(cmdline)

    if docker_image:
        container_name = dockerjob.random_name('interop_client_%s' %
                                               language.safename)
        cmdline = docker_run_cmdline(
            cmdline,
            image=docker_image,
            cwd=cwd,
            environ=environ,
            docker_args=['--net=host', '--name', container_name])
        cwd = None
        environ = None

    suite_name = 'cloud_to_prod_auth' if auth else 'cloud_to_prod'
    test_job = jobset.JobSpec(cmdline=cmdline,
                              cwd=cwd,
                              environ=environ,
                              shortname="%s:%s:%s" %
                              (suite_name, language, test_case),
                              timeout_seconds=2 * 60,
                              flake_retries=5 if args.allow_flakes else 0,
                              timeout_retries=2 if args.allow_flakes else 0,
                              kill_handler=_job_kill_handler)
    test_job.container_name = container_name
    return test_job
def cloud_to_cloud_jobspec(language, test_case, server_name, server_host, server_port, docker_image=None):
    """Creates jobspec for cloud-to-cloud interop test"""
    cmdline = bash_login_cmdline(
        language.client_args()
        + [
            "--server_host_override=foo.test.google.fr",
            "--use_tls=true",
            "--use_test_ca=true",
            "--test_case=%s" % test_case,
            "--server_host=%s" % server_host,
            "--server_port=%s" % server_port,
        ]
    )
    cwd = language.client_cwd
    environ = language.global_env()
    if docker_image:
        container_name = dockerjob.random_name("interop_client_%s" % language.safename)
        cmdline = docker_run_cmdline(
            cmdline, image=docker_image, environ=environ, cwd=cwd, docker_args=["--net=host", "--name", container_name]
        )
        cwd = None

    test_job = jobset.JobSpec(
        cmdline=cmdline,
        cwd=cwd,
        environ=environ,
        shortname="cloud_to_cloud:%s:%s_server:%s" % (language, server_name, test_case),
        timeout_seconds=90,
        flake_retries=5 if args.allow_flakes else 0,
        timeout_retries=2 if args.allow_flakes else 0,
        kill_handler=_job_kill_handler,
    )
    test_job.container_name = container_name
    return test_job
示例#7
0
def cloud_to_prod_jobspec(language,
                          test_case,
                          server_host_name,
                          server_host_detail,
                          docker_image=None,
                          auth=False):
    """Creates jobspec for cloud-to-prod interop test"""
    container_name = None
    cmdargs = [
        '--server_host=%s' % server_host_detail[0],
        '--server_host_override=%s' % server_host_detail[1],
        '--server_port=443', '--use_tls=true',
        '--test_case=%s' % test_case
    ]
    environ = dict(language.cloud_to_prod_env(), **language.global_env())
    if auth:
        auth_cmdargs, auth_env = auth_options(language, test_case)
        cmdargs += auth_cmdargs
        environ.update(auth_env)
    cmdline = bash_login_cmdline(language.client_cmd(cmdargs))
    cwd = language.client_cwd

    if docker_image:
        container_name = dockerjob.random_name('interop_client_%s' %
                                               language.safename)
        cmdline = docker_run_cmdline(
            cmdline,
            image=docker_image,
            cwd=cwd,
            environ=environ,
            docker_args=['--net=host', '--name', container_name])
        cwd = None
        environ = None

    suite_name = 'cloud_to_prod_auth' if auth else 'cloud_to_prod'
    test_job = jobset.JobSpec(
        cmdline=cmdline,
        cwd=cwd,
        environ=environ,
        shortname='%s:%s:%s:%s' %
        (suite_name, server_host_name, language, test_case),
        timeout_seconds=_TEST_TIMEOUT,
        flake_retries=5 if args.allow_flakes else 0,
        timeout_retries=2 if args.allow_flakes else 0,
        kill_handler=_job_kill_handler)
    if docker_image:
        test_job.container_name = container_name
    return test_job
示例#8
0
def server_jobspec(language, docker_image):
  """Create jobspec for running a server"""
  container_name = dockerjob.random_name('interop_server_%s' % language.safename)
  cmdline = bash_login_cmdline(language.server_args() +
                               ['--port=%s' % _DEFAULT_SERVER_PORT])
  docker_cmdline = docker_run_cmdline(cmdline,
                                      image=docker_image,
                                      cwd=language.server_cwd,
                                      docker_args=['-p', str(_DEFAULT_SERVER_PORT),
                                                   '--name', container_name])
  server_job = jobset.JobSpec(
          cmdline=docker_cmdline,
          shortname="interop_server_%s" % language,
          timeout_seconds=30*60)
  server_job.container_name = container_name
  return server_job
def server_jobspec(language, docker_image):
    """Create jobspec for running a server"""
    container_name = dockerjob.random_name("interop_server_%s" % language.safename)
    cmdline = bash_login_cmdline(language.server_args() + ["--port=%s" % _DEFAULT_SERVER_PORT])
    environ = language.global_env()
    docker_cmdline = docker_run_cmdline(
        cmdline,
        image=docker_image,
        cwd=language.server_cwd,
        environ=environ,
        docker_args=["-p", str(_DEFAULT_SERVER_PORT), "--name", container_name],
    )
    server_job = jobset.JobSpec(
        cmdline=docker_cmdline, environ=environ, shortname="interop_server_%s" % language, timeout_seconds=30 * 60
    )
    server_job.container_name = container_name
    return server_job
示例#10
0
def cloud_to_cloud_jobspec(
    language,
    test_cases,
    server_addresses,
    test_duration_secs,
    num_channels_per_server,
    num_stubs_per_channel,
    metrics_port,
    docker_image=None,
):
    """Creates jobspec for cloud-to-cloud interop test"""
    cmdline = bash_login_cmdline(
        language.client_cmd(
            [
                "--test_cases=%s" % test_cases,
                "--server_addresses=%s" % server_addresses,
                "--test_duration_secs=%s" % test_duration_secs,
                "--num_stubs_per_channel=%s" % num_stubs_per_channel,
                "--num_channels_per_server=%s" % num_channels_per_server,
                "--metrics_port=%s" % metrics_port,
            ]
        )
    )
    print cmdline
    cwd = language.client_cwd
    environ = language.global_env()
    if docker_image:
        container_name = dockerjob.random_name("interop_client_%s" % language.safename)
        cmdline = docker_run_cmdline(
            cmdline, image=docker_image, environ=environ, cwd=cwd, docker_args=["--net=host", "--name", container_name]
        )
        cwd = None

    test_job = jobset.JobSpec(
        cmdline=cmdline,
        cwd=cwd,
        environ=environ,
        shortname="cloud_to_cloud:%s:%s_server:stress_test" % (language, server_name),
        timeout_seconds=test_duration_secs * 2,
        flake_retries=0,
        timeout_retries=0,
        kill_handler=_job_kill_handler,
    )
    test_job.container_name = container_name
    return test_job
示例#11
0
def cloud_to_prod_jobspec(language, test_case, server_host_name,
                          server_host_detail, docker_image=None, auth=False):
  """Creates jobspec for cloud-to-prod interop test"""
  container_name = None
  cmdargs = [
      '--server_host=%s' % server_host_detail[0],
      '--server_host_override=%s' % server_host_detail[1],
      '--server_port=443',
      '--use_tls=true',
      '--test_case=%s' % test_case]
  environ = dict(language.cloud_to_prod_env(), **language.global_env())
  if auth:
    auth_cmdargs, auth_env = auth_options(language, test_case)
    cmdargs += auth_cmdargs
    environ.update(auth_env)
  cmdline = bash_login_cmdline(language.client_cmd(cmdargs))
  cwd = language.client_cwd

  if docker_image:
    container_name = dockerjob.random_name('interop_client_%s' %
                                           language.safename)
    cmdline = docker_run_cmdline(cmdline,
                                 image=docker_image,
                                 cwd=cwd,
                                 environ=environ,
                                 docker_args=['--net=host',
                                              '--name', container_name])
    cwd = None
    environ = None

  suite_name='cloud_to_prod_auth' if auth else 'cloud_to_prod'
  test_job = jobset.JobSpec(
          cmdline=cmdline,
          cwd=cwd,
          environ=environ,
          shortname='%s:%s:%s:%s' % (suite_name, server_host_name, language,
                                     test_case),
          timeout_seconds=_TEST_TIMEOUT,
          flake_retries=5 if args.allow_flakes else 0,
          timeout_retries=2 if args.allow_flakes else 0,
          kill_handler=_job_kill_handler)
  if docker_image:
    test_job.container_name = container_name
  return test_job
示例#12
0
def cloud_to_cloud_jobspec(language,
                           test_cases,
                           server_addresses,
                           test_duration_secs,
                           num_channels_per_server,
                           num_stubs_per_channel,
                           metrics_port,
                           docker_image=None):
    """Creates jobspec for cloud-to-cloud interop test"""
    cmdline = bash_login_cmdline(
        language.client_cmd([
            '--test_cases=%s' % test_cases,
            '--server_addresses=%s' % server_addresses,
            '--test_duration_secs=%s' % test_duration_secs,
            '--num_stubs_per_channel=%s' % num_stubs_per_channel,
            '--num_channels_per_server=%s' % num_channels_per_server,
            '--metrics_port=%s' % metrics_port
        ]))
    print(cmdline)
    cwd = language.client_cwd
    environ = language.global_env()
    if docker_image:
        container_name = dockerjob.random_name('interop_client_%s' %
                                               language.safename)
        cmdline = docker_run_cmdline(
            cmdline,
            image=docker_image,
            environ=environ,
            cwd=cwd,
            docker_args=['--net=host', '--name', container_name])
        cwd = None

    test_job = jobset.JobSpec(
        cmdline=cmdline,
        cwd=cwd,
        environ=environ,
        shortname='cloud_to_cloud:%s:%s_server:stress_test' %
        (language, server_name),
        timeout_seconds=test_duration_secs * 2,
        flake_retries=0,
        timeout_retries=0,
        kill_handler=_job_kill_handler)
    test_job.container_name = container_name
    return test_job
示例#13
0
def server_jobspec(language, docker_image):
  """Create jobspec for running a server"""
  container_name = dockerjob.random_name('interop_server_%s' % language.safename)
  cmdline = bash_login_cmdline(language.server_args() +
                               ['--port=%s' % _DEFAULT_SERVER_PORT])
  environ = language.global_env()
  docker_cmdline = docker_run_cmdline(cmdline,
                                      image=docker_image,
                                      cwd=language.server_cwd,
                                      environ=environ,
                                      docker_args=['-p', str(_DEFAULT_SERVER_PORT),
                                                   '--name', container_name])
  server_job = jobset.JobSpec(
          cmdline=docker_cmdline,
          environ=environ,
          shortname='interop_server_%s' % language,
          timeout_seconds=30*60)
  server_job.container_name = container_name
  return server_job
示例#14
0
def server_jobspec(language, docker_image, test_duration_secs):
  """Create jobspec for running a server"""
  container_name = dockerjob.random_name('interop_server_%s' %
                                         language.safename)
  cmdline = bash_login_cmdline(language.server_cmd(['--port=%s' %
                                                    _DEFAULT_SERVER_PORT]))
  environ = language.global_env()
  docker_cmdline = docker_run_cmdline(
      cmdline,
      image=docker_image,
      cwd=language.server_cwd,
      environ=environ,
      docker_args=['-p', str(_DEFAULT_SERVER_PORT), '--name', container_name])

  server_job = jobset.JobSpec(cmdline=docker_cmdline,
                              environ=environ,
                              shortname='interop_server_%s' % language,
                              timeout_seconds=test_duration_secs * 3)
  server_job.container_name = container_name
  return server_job
def cloud_to_prod_jobspec(language, test_case, docker_image=None, auth=False):
    """Creates jobspec for cloud-to-prod interop test"""
    cmdline = language.client_args() + [
        "--server_host_override=grpc-test.sandbox.google.com",
        "--server_host=grpc-test.sandbox.google.com",
        "--server_port=443",
        "--use_tls=true",
        "--test_case=%s" % test_case,
    ]
    cwd = language.client_cwd
    environ = dict(language.cloud_to_prod_env(), **language.global_env())
    container_name = None
    if auth:
        cmdline, environ = add_auth_options(language, test_case, cmdline, environ)
    cmdline = bash_login_cmdline(cmdline)

    if docker_image:
        container_name = dockerjob.random_name("interop_client_%s" % language.safename)
        cmdline = docker_run_cmdline(
            cmdline, image=docker_image, cwd=cwd, environ=environ, docker_args=["--net=host", "--name", container_name]
        )
        cwd = None
        environ = None

    suite_name = "cloud_to_prod_auth" if auth else "cloud_to_prod"
    test_job = jobset.JobSpec(
        cmdline=cmdline,
        cwd=cwd,
        environ=environ,
        shortname="%s:%s:%s" % (suite_name, language, test_case),
        timeout_seconds=90,
        flake_retries=5 if args.allow_flakes else 0,
        timeout_retries=2 if args.allow_flakes else 0,
        kill_handler=_job_kill_handler,
    )
    test_job.container_name = container_name
    return test_job