Example #1
0
def bootstrapped_impl(context, ordererType, database, tlsEnabled=False, timeout=120):
    assert ordererType in config_util.ORDERER_TYPES, "Unknown network type '%s'" % ordererType
    curpath = os.path.realpath('.')

    # Get the correct composition file
    context.composeFile = ["%s/docker-compose/docker-compose-%s.yml" % (curpath, ordererType)]
    if database.lower() != "leveldb":
        context.composeFile.append("%s/docker-compose/docker-compose-%s.yml" % (curpath, database.lower()))
    context.composeFile.append("%s/docker-compose/docker-compose-cli.yml" % (curpath))
    for composeFile in context.composeFile:
        assert os.path.exists(composeFile), "The docker compose file does not exist: {0}".format(composeFile)

    # Should TLS be enabled
    context.tls = tlsEnabled
    common_util.enableTls(context, tlsEnabled)

    # Perform bootstrap process
    context.ordererProfile = config_util.PROFILE_TYPES.get(ordererType, "SampleInsecureSolo")
    channelID = context.interface.SYS_CHANNEL_ID
    if hasattr(context, "composition"):
        context.projectName = context.composition.projectName
    else:
        context.projectName = str(uuid.uuid1()).replace('-','')
    config_util.generateCrypto(context)
    config_util.generateConfig(context, channelID, config_util.CHANNEL_PROFILE, context.ordererProfile)
    compose_impl(context, context.composeFile, projectName=context.projectName)

    wait_for_bootstrap_completion(context, timeout)
Example #2
0
def bootstrapped_impl(context, networkType):
    assert networkType in ORDERER_TYPES, "Unknown network type '%s'" % networkType
    curpath = os.path.realpath('.')
    context.composeFile = "%s/docker-compose/docker-compose-%s.yml" % (curpath, networkType)
    assert os.path.exists(context.composeFile), "The docker compose file does not exist: {0}".format(context.composeFile)
    context.ordererProfile = PROFILE_TYPES.get(networkType, "SampleInsecureSolo")
    channelID = endorser_util.SYS_CHANNEL_ID
    projectName = str(uuid.uuid1()).replace('-','')
    config_util.generateCrypto(projectName)
    config_util.generateConfig(channelID, config_util.CHANNEL_PROFILE, context.ordererProfile, projectName)
    compose_impl(context, context.composeFile, projectName=projectName)
Example #3
0
def bootstrapped_impl(context, networkType):
    assert networkType in ORDERER_TYPES, "Unknown network type '%s'" % networkType
    curpath = os.path.realpath('.')
    context.composeFile = "%s/docker-compose/docker-compose-%s.yml" % (curpath, networkType)
    assert os.path.exists(context.composeFile), "The docker compose file does not exist: {0}".format(context.composeFile)
    context.ordererProfile = PROFILE_TYPES.get(networkType, "SampleInsecureSolo")
    channelID = endorser_util.SYS_CHANNEL_ID
    projectName = str(uuid.uuid1()).replace('-','')
    config_util.generateCrypto(projectName)
    config_util.generateConfig(channelID, config_util.CHANNEL_PROFILE, context.ordererProfile, projectName)
    compose_impl(context, context.composeFile, projectName=projectName)
def bootstrapped_impl(context,
                      ordererType,
                      database,
                      tlsEnabled=False,
                      timeout=300,
                      ouEnabled=False,
                      fca=False):
    assert ordererType in config_util.ORDERER_TYPES, "Unknown network type '%s'" % ordererType
    curpath = os.path.realpath('.')

    # Get the correct composition file
    context.composeFile = getCompositionFiles(context, curpath, ordererType,
                                              database, fca)

    # Should TLS be enabled
    context.tls = tlsEnabled
    compose_util.enableTls(context, tlsEnabled)

    # Perform bootstrap process
    context.ordererProfile = config_util.PROFILE_TYPES.get(
        ordererType, "SampleInsecureSolo")
    channelID = context.interface.SYS_CHANNEL_ID
    if hasattr(context, "composition"):
        context.projectName = context.composition.projectName
    elif not hasattr(context, "projectName"):
        context.projectName = str(uuid.uuid1()).replace('-', '')

    # Determine number of orderers
    numOrderers = 1
    if ordererType == 'kafka':
        numOrderers = 3

    # Get Configs setup
    if ouEnabled:
        config_util.buildCryptoFile(context,
                                    2,
                                    2,
                                    numOrderers,
                                    2,
                                    ouEnable=ouEnabled)
        config_util.generateCrypto(
            context, "./configs/{0}/crypto.yaml".format(context.projectName))
    else:
        config_util.generateCrypto(context)
    config_util.generateConfig(context, channelID, config_util.CHANNEL_PROFILE,
                               context.ordererProfile)

    compose_impl(context, context.composeFile, projectName=context.projectName)
    wait_for_bootstrap_completion(context, timeout)