fabric-samples/varion/organizations/fabric-ca/registerEnroll.sh

419 lines
27 KiB
Bash
Executable file

#!/bin/bash
function createFarmer() {
infoln "Enrolling the CA admin"
mkdir -p organizations/peerOrganizations/farmer.varion.com/
export FABRIC_CA_CLIENT_HOME=${PWD}/organizations/peerOrganizations/farmer.varion.com/
set -x
fabric-ca-client enroll -u https://admin:adminpw@localhost:7054 --caname ca-farmer --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
echo 'NodeOUs:
Enable: true
ClientOUIdentifier:
Certificate: cacerts/localhost-7054-ca-farmer.pem
OrganizationalUnitIdentifier: client
PeerOUIdentifier:
Certificate: cacerts/localhost-7054-ca-farmer.pem
OrganizationalUnitIdentifier: peer
AdminOUIdentifier:
Certificate: cacerts/localhost-7054-ca-farmer.pem
OrganizationalUnitIdentifier: admin
OrdererOUIdentifier:
Certificate: cacerts/localhost-7054-ca-farmer.pem
OrganizationalUnitIdentifier: orderer' > "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/config.yaml"
# Since the CA serves as both the organization CA and TLS CA, copy the org's root cert that was generated by CA startup into the org level ca and tlsca directories
# Copy farmer's CA cert to farmer's /msp/tlscacerts directory (for use in the channel MSP definition)
mkdir -p "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/tlscacerts"
cp "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem" "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/tlscacerts/ca.crt"
# Copy farmer's CA cert to farmer's /tlsca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/farmer.varion.com/tlsca"
cp "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem" "${PWD}/organizations/peerOrganizations/farmer.varion.com/tlsca/tlsca.farmer.varion.com-cert.pem"
# Copy farmer's CA cert to farmer's /ca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/farmer.varion.com/ca"
cp "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem" "${PWD}/organizations/peerOrganizations/farmer.varion.com/ca/ca.farmer.varion.com-cert.pem"
infoln "Registering peer0"
set -x
fabric-ca-client register --caname ca-farmer --id.name peer0 --id.secret peer0pw --id.type peer --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering user"
set -x
fabric-ca-client register --caname ca-farmer --id.name user1 --id.secret user1pw --id.type client --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering the org admin"
set -x
fabric-ca-client register --caname ca-farmer --id.name farmeradmin --id.secret farmeradminpw --id.type admin --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Generating the peer0 msp"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:7054 --caname ca-farmer -M "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/msp/config.yaml"
infoln "Generating the peer0-tls certificates, use --csr.hosts to specify Subject Alternative Names"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:7054 --caname ca-farmer -M "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls" --enrollment.profile tls --csr.hosts peer0.farmer.varion.com --csr.hosts localhost --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
# Copy the tls CA cert, server cert, server keystore to well known file names in the peer's tls directory that are referenced by peer startup config
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/tlscacerts/"* "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/ca.crt"
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/signcerts/"* "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/server.crt"
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/keystore/"* "${PWD}/organizations/peerOrganizations/farmer.varion.com/peers/peer0.farmer.varion.com/tls/server.key"
infoln "Generating the user msp"
set -x
fabric-ca-client enroll -u https://user1:user1pw@localhost:7054 --caname ca-farmer -M "${PWD}/organizations/peerOrganizations/farmer.varion.com/users/User1@farmer.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/farmer.varion.com/users/User1@farmer.varion.com/msp/config.yaml"
infoln "Generating the org admin msp"
set -x
fabric-ca-client enroll -u https://farmeradmin:farmeradminpw@localhost:7054 --caname ca-farmer -M "${PWD}/organizations/peerOrganizations/farmer.varion.com/users/Admin@farmer.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/farmer/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/farmer.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/farmer.varion.com/users/Admin@farmer.varion.com/msp/config.yaml"
}
function createPulper() {
infoln "Enrolling the CA admin"
mkdir -p organizations/peerOrganizations/pulper.varion.com/
export FABRIC_CA_CLIENT_HOME=${PWD}/organizations/peerOrganizations/pulper.varion.com/
set -x
fabric-ca-client enroll -u https://admin:adminpw@localhost:8054 --caname ca-pulper --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
echo 'NodeOUs:
Enable: true
ClientOUIdentifier:
Certificate: cacerts/localhost-8054-ca-pulper.pem
OrganizationalUnitIdentifier: client
PeerOUIdentifier:
Certificate: cacerts/localhost-8054-ca-pulper.pem
OrganizationalUnitIdentifier: peer
AdminOUIdentifier:
Certificate: cacerts/localhost-8054-ca-pulper.pem
OrganizationalUnitIdentifier: admin
OrdererOUIdentifier:
Certificate: cacerts/localhost-8054-ca-pulper.pem
OrganizationalUnitIdentifier: orderer' > "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/config.yaml"
# Since the CA serves as both the organization CA and TLS CA, copy the org's root cert that was generated by CA startup into the org level ca and tlsca directories
# Copy pulper's CA cert to pulper's /msp/tlscacerts directory (for use in the channel MSP definition)
mkdir -p "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/tlscacerts"
cp "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem" "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/tlscacerts/ca.crt"
# Copy pulper's CA cert to pulper's /tlsca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/pulper.varion.com/tlsca"
cp "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem" "${PWD}/organizations/peerOrganizations/pulper.varion.com/tlsca/tlsca.pulper.varion.com-cert.pem"
# Copy pulper's CA cert to pulper's /ca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/pulper.varion.com/ca"
cp "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem" "${PWD}/organizations/peerOrganizations/pulper.varion.com/ca/ca.pulper.varion.com-cert.pem"
infoln "Registering peer0"
set -x
fabric-ca-client register --caname ca-pulper --id.name peer0 --id.secret peer0pw --id.type peer --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering user"
set -x
fabric-ca-client register --caname ca-pulper --id.name user1 --id.secret user1pw --id.type client --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering the org admin"
set -x
fabric-ca-client register --caname ca-pulper --id.name pulperadmin --id.secret pulperadminpw --id.type admin --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Generating the peer0 msp"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:8054 --caname ca-pulper -M "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/msp/config.yaml"
infoln "Generating the peer0-tls certificates, use --csr.hosts to specify Subject Alternative Names"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:8054 --caname ca-pulper -M "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls" --enrollment.profile tls --csr.hosts peer0.pulper.varion.com --csr.hosts localhost --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
# Copy the tls CA cert, server cert, server keystore to well known file names in the peer's tls directory that are referenced by peer startup config
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/tlscacerts/"* "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/ca.crt"
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/signcerts/"* "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/server.crt"
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/keystore/"* "${PWD}/organizations/peerOrganizations/pulper.varion.com/peers/peer0.pulper.varion.com/tls/server.key"
infoln "Generating the user msp"
set -x
fabric-ca-client enroll -u https://user1:user1pw@localhost:8054 --caname ca-pulper -M "${PWD}/organizations/peerOrganizations/pulper.varion.com/users/User1@pulper.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/pulper.varion.com/users/User1@pulper.varion.com/msp/config.yaml"
infoln "Generating the org admin msp"
set -x
fabric-ca-client enroll -u https://pulperadmin:pulperadminpw@localhost:8054 --caname ca-pulper -M "${PWD}/organizations/peerOrganizations/pulper.varion.com/users/Admin@pulper.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/pulper/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/pulper.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/pulper.varion.com/users/Admin@pulper.varion.com/msp/config.yaml"
}
function createHuller() {
infoln "Enrolling the CA admin"
mkdir -p organizations/peerOrganizations/huller.varion.com/
export FABRIC_CA_CLIENT_HOME=${PWD}/organizations/peerOrganizations/huller.varion.com/
set -x
fabric-ca-client enroll -u https://admin:adminpw@localhost:10054 --caname ca-huller --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
echo 'NodeOUs:
Enable: true
ClientOUIdentifier:
Certificate: cacerts/localhost-10054-ca-huller.pem
OrganizationalUnitIdentifier: client
PeerOUIdentifier:
Certificate: cacerts/localhost-10054-ca-huller.pem
OrganizationalUnitIdentifier: peer
AdminOUIdentifier:
Certificate: cacerts/localhost-10054-ca-huller.pem
OrganizationalUnitIdentifier: admin
OrdererOUIdentifier:
Certificate: cacerts/localhost-10054-ca-huller.pem
OrganizationalUnitIdentifier: orderer' > "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/config.yaml"
# Since the CA serves as both the organization CA and TLS CA, copy the org's root cert that was generated by CA startup into the org level ca and tlsca directories
# Copy huller's CA cert to huller's /msp/tlscacerts directory (for use in the channel MSP definition)
mkdir -p "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/tlscacerts"
cp "${PWD}/organizations/fabric-ca/huller/ca-cert.pem" "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/tlscacerts/ca.crt"
# Copy huller's CA cert to huller's /tlsca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/huller.varion.com/tlsca"
cp "${PWD}/organizations/fabric-ca/huller/ca-cert.pem" "${PWD}/organizations/peerOrganizations/huller.varion.com/tlsca/tlsca.huller.varion.com-cert.pem"
# Copy huller's CA cert to huller's /ca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/huller.varion.com/ca"
cp "${PWD}/organizations/fabric-ca/huller/ca-cert.pem" "${PWD}/organizations/peerOrganizations/huller.varion.com/ca/ca.huller.varion.com-cert.pem"
infoln "Registering peer0"
set -x
fabric-ca-client register --caname ca-huller --id.name peer0 --id.secret peer0pw --id.type peer --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering user"
set -x
fabric-ca-client register --caname ca-huller --id.name user1 --id.secret user1pw --id.type client --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering the org admin"
set -x
fabric-ca-client register --caname ca-huller --id.name hulleradmin --id.secret hulleradminpw --id.type admin --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Generating the peer0 msp"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:10054 --caname ca-huller -M "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/msp/config.yaml"
infoln "Generating the peer0-tls certificates, use --csr.hosts to specify Subject Alternative Names"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:10054 --caname ca-huller -M "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls" --enrollment.profile tls --csr.hosts peer0.huller.varion.com --csr.hosts localhost --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
# Copy the tls CA cert, server cert, server keystore to well known file names in the peer's tls directory that are referenced by peer startup config
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/tlscacerts/"* "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/ca.crt"
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/signcerts/"* "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/server.crt"
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/keystore/"* "${PWD}/organizations/peerOrganizations/huller.varion.com/peers/peer0.huller.varion.com/tls/server.key"
infoln "Generating the user msp"
set -x
fabric-ca-client enroll -u https://user1:user1pw@localhost:10054 --caname ca-huller -M "${PWD}/organizations/peerOrganizations/huller.varion.com/users/User1@huller.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/huller.varion.com/users/User1@huller.varion.com/msp/config.yaml"
infoln "Generating the org admin msp"
set -x
fabric-ca-client enroll -u https://hulleradmin:hulleradminpw@localhost:10054 --caname ca-huller -M "${PWD}/organizations/peerOrganizations/huller.varion.com/users/Admin@huller.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/huller/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/huller.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/huller.varion.com/users/Admin@huller.varion.com/msp/config.yaml"
}
function createExport() {
infoln "Enrolling the CA admin"
mkdir -p organizations/peerOrganizations/export.varion.com/
export FABRIC_CA_CLIENT_HOME=${PWD}/organizations/peerOrganizations/export.varion.com/
set -x
fabric-ca-client enroll -u https://admin:adminpw@localhost:11054 --caname ca-export --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
echo 'NodeOUs:
Enable: true
ClientOUIdentifier:
Certificate: cacerts/localhost-11054-ca-export.pem
OrganizationalUnitIdentifier: client
PeerOUIdentifier:
Certificate: cacerts/localhost-11054-ca-export.pem
OrganizationalUnitIdentifier: peer
AdminOUIdentifier:
Certificate: cacerts/localhost-11054-ca-export.pem
OrganizationalUnitIdentifier: admin
OrdererOUIdentifier:
Certificate: cacerts/localhost-11054-ca-export.pem
OrganizationalUnitIdentifier: orderer' > "${PWD}/organizations/peerOrganizations/export.varion.com/msp/config.yaml"
# Since the CA serves as both the organization CA and TLS CA, copy the org's root cert that was generated by CA startup into the org level ca and tlsca directories
# Copy export's CA cert to export's /msp/tlscacerts directory (for use in the channel MSP definition)
mkdir -p "${PWD}/organizations/peerOrganizations/export.varion.com/msp/tlscacerts"
cp "${PWD}/organizations/fabric-ca/export/ca-cert.pem" "${PWD}/organizations/peerOrganizations/export.varion.com/msp/tlscacerts/ca.crt"
# Copy export's CA cert to export's /tlsca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/export.varion.com/tlsca"
cp "${PWD}/organizations/fabric-ca/export/ca-cert.pem" "${PWD}/organizations/peerOrganizations/export.varion.com/tlsca/tlsca.export.varion.com-cert.pem"
# Copy export's CA cert to export's /ca directory (for use by clients)
mkdir -p "${PWD}/organizations/peerOrganizations/export.varion.com/ca"
cp "${PWD}/organizations/fabric-ca/export/ca-cert.pem" "${PWD}/organizations/peerOrganizations/export.varion.com/ca/ca.export.varion.com-cert.pem"
infoln "Registering peer0"
set -x
fabric-ca-client register --caname ca-export --id.name peer0 --id.secret peer0pw --id.type peer --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering user"
set -x
fabric-ca-client register --caname ca-export --id.name user1 --id.secret user1pw --id.type client --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering the org admin"
set -x
fabric-ca-client register --caname ca-export --id.name exportadmin --id.secret exportadminpw --id.type admin --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Generating the peer0 msp"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:11054 --caname ca-export -M "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/export.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/msp/config.yaml"
infoln "Generating the peer0-tls certificates, use --csr.hosts to specify Subject Alternative Names"
set -x
fabric-ca-client enroll -u https://peer0:peer0pw@localhost:11054 --caname ca-export -M "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls" --enrollment.profile tls --csr.hosts peer0.export.varion.com --csr.hosts localhost --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
# Copy the tls CA cert, server cert, server keystore to well known file names in the peer's tls directory that are referenced by peer startup config
cp "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/tlscacerts/"* "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/ca.crt"
cp "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/signcerts/"* "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/server.crt"
cp "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/keystore/"* "${PWD}/organizations/peerOrganizations/export.varion.com/peers/peer0.export.varion.com/tls/server.key"
infoln "Generating the user msp"
set -x
fabric-ca-client enroll -u https://user1:user1pw@localhost:11054 --caname ca-export -M "${PWD}/organizations/peerOrganizations/export.varion.com/users/User1@export.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/export.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/export.varion.com/users/User1@export.varion.com/msp/config.yaml"
infoln "Generating the org admin msp"
set -x
fabric-ca-client enroll -u https://exportadmin:exportadminpw@localhost:11054 --caname ca-export -M "${PWD}/organizations/peerOrganizations/export.varion.com/users/Admin@export.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/export/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/peerOrganizations/export.varion.com/msp/config.yaml" "${PWD}/organizations/peerOrganizations/export.varion.com/users/Admin@export.varion.com/msp/config.yaml"
}
function createOrderer() {
infoln "Enrolling the CA admin"
mkdir -p organizations/ordererOrganizations/varion.com
export FABRIC_CA_CLIENT_HOME=${PWD}/organizations/ordererOrganizations/varion.com
set -x
fabric-ca-client enroll -u https://admin:adminpw@localhost:9054 --caname ca-orderer --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
echo 'NodeOUs:
Enable: true
ClientOUIdentifier:
Certificate: cacerts/localhost-9054-ca-orderer.pem
OrganizationalUnitIdentifier: client
PeerOUIdentifier:
Certificate: cacerts/localhost-9054-ca-orderer.pem
OrganizationalUnitIdentifier: peer
AdminOUIdentifier:
Certificate: cacerts/localhost-9054-ca-orderer.pem
OrganizationalUnitIdentifier: admin
OrdererOUIdentifier:
Certificate: cacerts/localhost-9054-ca-orderer.pem
OrganizationalUnitIdentifier: orderer' > "${PWD}/organizations/ordererOrganizations/varion.com/msp/config.yaml"
# Since the CA serves as both the organization CA and TLS CA, copy the org's root cert that was generated by CA startup into the org level ca and tlsca directories
# Copy orderer org's CA cert to orderer org's /msp/tlscacerts directory (for use in the channel MSP definition)
mkdir -p "${PWD}/organizations/ordererOrganizations/varion.com/msp/tlscacerts"
cp "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem" "${PWD}/organizations/ordererOrganizations/varion.com/msp/tlscacerts/tlsca.varion.com-cert.pem"
# Copy orderer org's CA cert to orderer org's /tlsca directory (for use by clients)
mkdir -p "${PWD}/organizations/ordererOrganizations/varion.com/tlsca"
cp "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem" "${PWD}/organizations/ordererOrganizations/varion.com/tlsca/tlsca.varion.com-cert.pem"
infoln "Registering orderer"
set -x
fabric-ca-client register --caname ca-orderer --id.name orderer --id.secret ordererpw --id.type orderer --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Registering the orderer admin"
set -x
fabric-ca-client register --caname ca-orderer --id.name ordererAdmin --id.secret ordererAdminpw --id.type admin --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
infoln "Generating the orderer msp"
set -x
fabric-ca-client enroll -u https://orderer:ordererpw@localhost:9054 --caname ca-orderer -M "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/ordererOrganizations/varion.com/msp/config.yaml" "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/msp/config.yaml"
infoln "Generating the orderer-tls certificates, use --csr.hosts to specify Subject Alternative Names"
set -x
fabric-ca-client enroll -u https://orderer:ordererpw@localhost:9054 --caname ca-orderer -M "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls" --enrollment.profile tls --csr.hosts orderer.varion.com --csr.hosts localhost --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
# Copy the tls CA cert, server cert, server keystore to well known file names in the orderer's tls directory that are referenced by orderer startup config
cp "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/tlscacerts/"* "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/ca.crt"
cp "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/signcerts/"* "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/server.crt"
cp "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/keystore/"* "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/server.key"
# Copy orderer org's CA cert to orderer's /msp/tlscacerts directory (for use in the orderer MSP definition)
mkdir -p "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/msp/tlscacerts"
cp "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/tls/tlscacerts/"* "${PWD}/organizations/ordererOrganizations/varion.com/orderers/orderer.varion.com/msp/tlscacerts/tlsca.varion.com-cert.pem"
infoln "Generating the admin msp"
set -x
fabric-ca-client enroll -u https://ordererAdmin:ordererAdminpw@localhost:9054 --caname ca-orderer -M "${PWD}/organizations/ordererOrganizations/varion.com/users/Admin@varion.com/msp" --tls.certfiles "${PWD}/organizations/fabric-ca/ordererOrg/ca-cert.pem"
{ set +x; } 2>/dev/null
cp "${PWD}/organizations/ordererOrganizations/varion.com/msp/config.yaml" "${PWD}/organizations/ordererOrganizations/varion.com/users/Admin@varion.com/msp/config.yaml"
}