Skip to content

Commit 46e45a7

Browse files
authored
Update CONTRIBUTING.md (#432)
Add rush tips for dependency management. Also update outdated links. Signed-off-by: David Enyeart <enyeart@us.ibm.com>
1 parent 14c5eff commit 46e45a7

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

CONTRIBUTING.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ The following [Rush categories](https://rushjs.io/pages/maintainer/add_to_repo/)
2525
* node v18 => recommend to use [nvm](https://github.com/nvm-sh/nvm)
2626
* rush => `npm install -g @microsoft/rush`
2727

28+
> As an alternative to installing rush on your system, you can also have node install it for executing single commands similar to what is done in CI, for example from the `libraries/fabric-shim` directory you could add or update a dependency by running `node ../../common/scripts/install-run-rush.js add --package @grpc/grpc-js@latest`
29+
2830
> Note that npm v6 has some bugs that mean adding new dependencies etc are not properly picked up. Longer term we should consider moving to yarn or pnpm. However in practice this isn't a serious problem and has been possible to be worked around by issuing `rm ./common/config/rush/npm-shrinkwrap.json` and then `rush update`
2931
3032
The fv and e2e tests require a set of docker images of Fabric Peers, Orderers and CAs. To ensure you have the correct images ensure these have been dowloaded and tagged. `rush edge-docker` will do this for you.
@@ -35,6 +37,8 @@ They also need to have the `nodeenv` image present - this is build as part of th
3537

3638
* Clone the repo, and ensure you are using node v18, and have rush installed
3739
* `rush update` is needed to ensure everything is correctly linked and updated.
40+
- For example, after updating dependencies in `libraries/fabric-shim/package.json` run `rush update` which will delegate to `pnpm` to update the appropriate project files.
41+
- Note - you could also use `rush add` to have rush manage the `package.json` updates.
3842
* `rush edge-docker` will pull down and tag the very latest docker images for the peers, orderes etc to test against
3943

4044
At this point the repo is fully ready for use and running tests, etc. A full sequence of build-test that is equivalent to the CI pipeline is
@@ -60,17 +64,16 @@ To clean up docker
6064

6165
## Mechanics of Contributing
6266

63-
The codebase is maintained in [github](https://github.com/hyperledger/fabric-chaincode-node), with a CI pipeline run with [Azure Devlops](https://dev.azure.com/Hyperledger/Fabric-Chaincode-Node/_build?definitionId=33&_a=summary). Issues are handling in [Jira](https://jira.hyperledger.org/issues/?jql=project%20%3D%20FAB%20AND%20component%20%3D%20fabric-chaincode-node) (please use the component `fabric-chaincode-node` in jira as this is shared project with other Fabric components).
64-
67+
The codebase is maintained in [github](https://github.com/hyperledger/fabric-chaincode-node), with a CI pipeline run with [Github Actions](https://github.com/hyperledger/fabric-chaincode-node/actions). Issues are handled in [Github Issues](https://github.com/hyperledger/fabric-chaincode-node/issues).
6568

6669

6770

6871
## Code of Conduct Guidelines <a name="conduct"></a>
6972

70-
See our [Code of Conduct Guidelines](../blob/main/CODE_OF_CONDUCT.md).
73+
See our [Code of Conduct Guidelines](https://github.com/hyperledger/fabric-chaincode-node/blob/main/CODE_OF_CONDUCT.md).
7174

7275
## Maintainers <a name="maintainers"></a>
7376

74-
Should you have any questions or concerns, please reach out to one of the project's [Maintainers](../blob/main/MAINTAINERS.md).
77+
Should you have any questions or concerns, please reach out to one of the project's [Maintainers](https://github.com/hyperledger/fabric-chaincode-node/blob/main/MAINTAINERS.md).
7578

7679
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.

0 commit comments

Comments
 (0)