-
Notifications
You must be signed in to change notification settings - Fork 283
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(fabric-connector): contract deployment endpoint #616
Labels
Comments
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 2, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 2, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 2, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 2, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 5, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 5, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
AzaharaC
pushed a commit
to kikoncuo/cactus
that referenced
this issue
Mar 5, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 8, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 8, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 8, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 8, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 9, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 9, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 10, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
to petermetz/cacti
that referenced
this issue
Mar 10, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
petermetz
added a commit
that referenced
this issue
Mar 11, 2021
Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes #616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
AzaharaC
pushed a commit
to kikoncuo/cactus
that referenced
this issue
Mar 12, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
jordigiam
pushed a commit
to kikoncuo/cactus
that referenced
this issue
Apr 8, 2021
…i#616 Primary change ============= Finally adds real support for chain code deployment with custom made contracts not just the ones that the fabric samples container comes pre-built with. Additional notes, changes ======================== 1. Makes assumptions about the ledger being containerized the same way the fabric-samples repo does it, e.g. there must be a container called "cli" which is set up to execute the peer binary and to be able to perform go builds with a version of go that has go modules support (1.11+ IIRC) 2. Does not yet support Fabric 2.x (at least it was not tested) 3. Magic strings in the connector that still need to be eliminted. 4. Go mod file upload is not supported, for now one must use the pinned dependencies array to lock dependencies to specific versions. 5. The deployment endpoint supports deploying to multiple orgs with a single request but this only makes sense for example code since in a production environment it is not expected that different organizations will share the same server/container to run their infrastructure. 6. Output structure is not yet finalized. Priority was for now to at least allow failure detection. Diagnostics is a bit harder to achieve but should come in a follow-up improvement nevertheless. 7. Forced to use ugly timeout to make sure test is passing. 8. Pending refactor of the chaincode compiler which will no longer build on the file-system locally (after the refactor is done). For now the test is being skipped. End to end test demonstrating how it all works can be seen at: packages/cactus-plugin-ledger-connector-fabric/src/test/typescript/integration/deploy-contract-go-bin-endpoint-v1/deploy-contract/deploy-cc-from-golang-source.test.ts Fixes hyperledger-cacti#616 Signed-off-by: Peter Somogyvari <peter.somogyvari@accenture.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Description
Implement the long awaited chaincode contract deployment endpoint that we had a few working drafts of before but ultimately had to keep out until now due to failing tests and not enough time to properly cover the corner cases.
Earlier draft(s) of the deploy endpoint for reference and posterity:
petermetz@6944f86
38e9780
Acceptance Criteria
fabric-samples
tooling, scripts that do the contract deployment so it wasn't actually a real test at all in terms of deploying chain code.cc: @takeutak @sfuji822 @hartm @jonathan-m-hamilton @AzaharaC @jordigiam @kikoncuo
The text was updated successfully, but these errors were encountered: