def METHOD_NAME(num_concurrent, extra_steps=None):
    if extra_steps is None:
        extra_steps = []
    c = {}
    c['schedulers'] = [
        schedulers.ForceScheduler(
            name="force",
            builderNames=["testy"])]
    triggereables = []
    for i in range(num_concurrent):
        c['schedulers'].append(
            schedulers.Triggerable(
                name="trigsched" + str(i),
                builderNames=["build"]))
        triggereables.append("trigsched" + str(i))
    f = BuildFactory()
    f.addStep(steps.ShellCommand(command='echo hello'))
    f.addStep(steps.Trigger(schedulerNames=triggereables,
                            waitForFinish=True,
                            updateSourceStamp=True))
    f.addStep(steps.ShellCommand(command='echo world'))
    f2 = BuildFactory()
    f2.addStep(steps.ShellCommand(command='echo ola'))
    for step in extra_steps:
        f2.addStep(step)
    c['builders'] = [
        BuilderConfig(name="testy",
                      workernames=["upcloud0"],
                      factory=f),
        BuilderConfig(name="build",
                      workernames=["upcloud" + str(i)
                                   for i in range(num_concurrent)],
                      factory=f2)]
    creds = os.environ.get('BBTEST_UPCLOUD_CREDS')
    if creds is not None:
        user, password = creds.split(":")
    else:
        raise RuntimeError("Cannot run this test without credentials")
    masterFQDN = os.environ.get('masterFQDN', 'localhost')
    c['workers'] = []
    for i in range(num_concurrent):
        upcloud_host_config = {
            "user_data":