diff --git a/.circleci/config.yml b/.circleci/config.yml index 3af43c8719d..1b0ad1f446a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -7,7 +7,33 @@ executors: node_executor: docker: - image: circleci/node:12.9.0-stretch + shell_executor: + docker: + - image: circleci/buildpack-deps:buster-scm jobs: + dco: + executor: shell_executor + steps: + - checkout + - run: + name: check + command: | + status=0 + while IFS= read -r -a line; do + my_array+=( "$line" ) + done < <( git branch -r | grep -v origin/HEAD ) + for branch in "${my_array[@]}" + do + branch=$(echo "$branch" | xargs) + echo "Checking commits in branch $branch for commits missing DCO..." + while read -r results; do + status=1 + commit_hash="$(echo "$results" | cut -d' ' -f1)" + >&2 echo "$commit_hash is missing Signed-off-by line." + done < <(git log "$branch" --no-merges --pretty="%H %ae" --grep 'Signed-off-by' --invert-grep -- ) + done + exit $status + build: executor: python_executor steps: @@ -95,6 +121,7 @@ workflows: version: 2 default: jobs: + - dco - build - vale - markdownlint diff --git a/CLA.md b/CLA.md deleted file mode 100644 index 31b0c98dbd9..00000000000 --- a/CLA.md +++ /dev/null @@ -1,19 +0,0 @@ -Sign the CLA -============= - -This page is the step-by-step guide to signing the Consensys AG -Individual Contributor License Agreement. - -1. First and foremost, read [the current version of the CLA]. - It is written to be as close to plain English as possible. - -2. Make an account on [GitHub] if you don't already have one. - -3. After creating your first pull request, you will see a merge - pre-requisite requiring to you read and sign the CLA. - -If you have any questions, you can reach us on [Besu chat]. - -[Besu chat]: https://chat.hyperledger.org/channel/besu -[GitHub]: https://github.com/ -[the current version of the CLA]: https://gist.github.com/rojotek/978b48a5e8b68836856a8961d6887992 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cca2c813dd1..1c4c080e26b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -182,7 +182,7 @@ The process described here has several goals: Please follow these steps to have your contribution considered by the approvers: -1. Complete the CLA, as described in [CLA.md]. +1. Ensure all commits have a Sign-off for DCO, as described in [DCO.md]. 2. Follow all instructions in [PULL-REQUEST-TEMPLATE.md](.github/pull_request_template.md). 4. Follow the [Style Guides](#documentation-style-guide). 5. After you submit your pull request, verify that all [status checks](https://help.github.com/articles/about-status-checks/) @@ -219,6 +219,6 @@ in this guide. [Hyperledger Besu chat]: https://chat.hyperledger.org/channel/besu [Hyperledger Besu documentation]: https://besu.hyperledger.org/ -[CLA.md]: ./CLA.md +[DCO.md]: ./DCO.md [Code Reviews]: ./docs/community/code-reviews.md -[MkDocs]: https://www.mkdocs.org/ \ No newline at end of file +[MkDocs]: https://www.mkdocs.org/ diff --git a/DCO.md b/DCO.md new file mode 100644 index 00000000000..a10deeec06a --- /dev/null +++ b/DCO.md @@ -0,0 +1,9 @@ +DCO +=== + +As per section 13.a of the [Hyperledger Charter](https://www.hyperledger.org/about/charter) all code submitted to the Hyperledger Foundation needs to have a [Developer Certificate of Origin](http://developercertificate.org/) (DCO) sign-off. + +The sign off needs to be using your legal name, not a pseudonym. Git has a built-in mechanism to allow this with the `-s` or `--signoff` argument to `git commit` command, providing your `user.name` and `user.email` have been setup correctly. + +If you have any questions, you can reach us on [Besu chat]. +[Besu chat]: https://chat.hyperledger.org/channel/besu diff --git a/MKDOCS-MARKDOWN-GUIDE.md b/MKDOCS-MARKDOWN-GUIDE.md index 209070b7a54..c998d70ee8d 100644 --- a/MKDOCS-MARKDOWN-GUIDE.md +++ b/MKDOCS-MARKDOWN-GUIDE.md @@ -333,7 +333,7 @@ enables displaying a list as a checklist. For writing code examples inside the documentation, refer to the developer style guides: -- Java : refer to Hyperledger Besu [coding convention](https://github.com/hyperledger/besus/blob/master/CODING-CONVENTIONS.md). +- Java : refer to Hyperledger Besu [coding convention](https://github.com/hyperledger/besu/blob/master/CODING-CONVENTIONS.md). - JSON : use https://jsonformatter.curiousconcept.com/ to format your JSON code. - TOML : we follow version 0.5.0 language definition. - JavaScript : see [Google JavaScript Style Guide](https://google.github.io/styleguide/jsguide.html). diff --git a/docs/Concepts/Privacy/Privacy-Overview.md b/docs/Concepts/Privacy/Privacy-Overview.md index 7e29bc9b93d..3ac6ad33bf4 100644 --- a/docs/Concepts/Privacy/Privacy-Overview.md +++ b/docs/Concepts/Privacy/Privacy-Overview.md @@ -8,7 +8,10 @@ Other participants cannot access the transaction content or list of participants !!! important For production systems requiring private transactions, we recommend using a network - with a consensus mechanism supporting transaction finality. For example, [IBFT 2.0](../../HowTo/Configure-Besu/Consensus-Protocols/IBFT.md). All private transaction participants must be online for a private transaction to be successfully distributed. If any participants are offline when the private transaction is submitted, the transaction is not attempted and must be resubmitted. + with a consensus mechanism supporting transaction finality. For example, [IBFT 2.0](../../HowTo/Configure/Consensus-Protocols/IBFT.md). + All private transaction participants must be online for a private transaction to be successfully distributed. + If any participants are offline when the private transaction is submitted, the transaction is + not attempted and must be resubmitted. ## Private Transaction Manager diff --git a/docs/HowTo/Deploy/Monitoring-Performance.md b/docs/HowTo/Deploy/Monitoring-Performance.md index 3de7442059a..36dbcf257eb 100644 --- a/docs/HowTo/Deploy/Monitoring-Performance.md +++ b/docs/HowTo/Deploy/Monitoring-Performance.md @@ -18,6 +18,8 @@ To specify the host and port on which Prometheus accesses Besu, use the [`--metr [`--metrics-port`](../../Reference/CLI/CLI-Syntax.md#metrics-port) options. The default host and port are 127.0.0.1 and 9545. +Prometheus requires 3MB of space per node per hour for metrics, with a `scrape_interval` of 15s. + To use Prometheus with Besu, install the [prometheus main component](https://prometheus.io/download/). On MacOS, install with [Homebrew](https://formulae.brew.sh/formula/prometheus): ``` diff --git a/docs/HowTo/Get-Started/Run-Docker-Image.md b/docs/HowTo/Get-Started/Run-Docker-Image.md index e9093ca9170..755bdaee326 100644 --- a/docs/HowTo/Get-Started/Run-Docker-Image.md +++ b/docs/HowTo/Get-Started/Run-Docker-Image.md @@ -24,12 +24,12 @@ To run a Besu node in a container connected to the Ethereum mainnet: docker run hyperledger/besu:latest ``` -```bash tab="{{ versions.stable }}" -docker run hyperledger/besu:{{ versions.stable }} -``` - !!! note - `latest` runs the latest cached version. To pull the latest version, use `docker pull hyperledger/besu:latest`. + Available tags for the image are listed at https://hub.docker.com/r/hyperledger/besu/tags. + + If you previously pulled `latest`, Docker runs the cached version. + + To ensure your image is up to date, pull the `latest` version again using `docker pull hyperledger/besu:latest`. ## Exposing Ports diff --git a/docs/HowTo/Interact/APIs/GraphQL.md b/docs/HowTo/Interact/APIs/GraphQL.md index 6b2e0cc721f..dece88da28b 100644 --- a/docs/HowTo/Interact/APIs/GraphQL.md +++ b/docs/HowTo/Interact/APIs/GraphQL.md @@ -6,7 +6,7 @@ description: How to access the Hyperledger Besu API using GraphQL GraphQL can reduce the overhead needed for common queries. For example, instead of querying each receipt in a block, GraphQL can obtain the same result with a single query for the entire block. -The GraphQL implementation for Ethereum is described in the [schema](https://github.com/hyperledger/besu/blob/master/ethereum/graphql/src/main/resources/schema.graphqls). +The GraphQL implementation for Ethereum is described in the [schema](https://github.com/hyperledger/besu/blob/master/ethereum/api/src/main/resources/schema.graphqls). The GraphQL service is enabled using the [command line options](API.md#enabling-api-access). !!! note diff --git a/docs/Reference/API-Methods.md b/docs/Reference/API-Methods.md index 8f6c5819b46..380a2fcecad 100644 --- a/docs/Reference/API-Methods.md +++ b/docs/Reference/API-Methods.md @@ -268,7 +268,7 @@ None { "jsonrpc" : "2.0", "id" : 53, - "result" : "besu/{{ versions.stable }}" + "result" : "besu/" } ``` @@ -479,7 +479,7 @@ None !!! note Methods with an equivalent [GraphQL](../HowTo/Interact/APIs/GraphQL.md) query include a GraphQL request and result in the method example. - The parameter and result descriptions apply to the JSON-RPC requests. The GraphQL specification is defined in the [schema](https://github.com/hyperledger/besu/blob/master/ethereum/graphql/src/main/resources/schema.graphqls). + The parameter and result descriptions apply to the JSON-RPC requests. The GraphQL specification is defined in the [schema](https://github.com/hyperledger/besu/blob/master/ethereum/api/src/main/resources/schema.graphqls). ### eth_syncing diff --git a/docs/Tutorials/Quickstarts/Privacy-Quickstart.md b/docs/Tutorials/Quickstarts/Privacy-Quickstart.md index fece3898226..cffff67de42 100644 --- a/docs/Tutorials/Quickstarts/Privacy-Quickstart.md +++ b/docs/Tutorials/Quickstarts/Privacy-Quickstart.md @@ -37,15 +37,14 @@ To run this tutorial, you must have the following installed: ## Clone Besu Quickstart Source Code -Clone the repository from the `besu-quickstart` repository where `` is replaced with the latest version (`{{ versions.quickstart }}`). +Clone the repository from the `besu-quickstart` repository. -```bash tab="Command" -git clone --branch https://github.com/PegaSysEng/besu-quickstart.git +```bash tab="Linux/MacOS" +git clone https://github.com/PegaSysEng/besu-quickstart.git ``` -```bash tab="Example" -git clone --branch {{ versions.quickstart }} https://github.com/PegaSysEng/besu-quickstart.git -``` +!!!note + Download a specific release at https://github.com/PegaSysEng/besu-quickstart/releases. ## Clone EEAJS Libraries diff --git a/docs/Tutorials/Quickstarts/Private-Network-Quickstart.md b/docs/Tutorials/Quickstarts/Private-Network-Quickstart.md index c9a6ca9d3c6..7c414c76a1f 100644 --- a/docs/Tutorials/Quickstarts/Private-Network-Quickstart.md +++ b/docs/Tutorials/Quickstarts/Private-Network-Quickstart.md @@ -32,12 +32,15 @@ the MetaMask plug-in installed. This tutorial uses screenshots from Brave. ## Clone Besu Quickstart Source Code -Clone the repository from the `besu-quickstart` with the version matching Besu version, currently `{{ versions.quickstart }}`: +Clone the repository from the `besu-quickstart` repository: ```bash tab="Linux/MacOS" -git clone --branch {{ versions.quickstart }} https://github.com/PegaSysEng/besu-quickstart.git +git clone https://github.com/PegaSysEng/besu-quickstart.git ``` +!!!note + Download a specific release at https://github.com/PegaSysEng/besu-quickstart/releases. + ## Build Docker Images and Start Services and Network This tutorial uses [Docker Compose](https://docs.docker.com/compose/) to assemble the images and @@ -55,7 +58,7 @@ When the process ends, it lists the running services: !!! example "Docker-compose services list example" ```log ************************************* - Besu Quickstart {{ versions.quickstart }} + Besu Quickstart ************************************* List endpoints and services ---------------------------------- @@ -166,7 +169,7 @@ The result specifies the client version: { "jsonrpc" : "2.0", "id" : 1, - "result" : "besu/{{ versions.stable }}" + "result" : "besu/" } ``` Here we simply query the version of the Besu node, which confirms the node is running. diff --git a/docs/custom_theme/favicon.ico b/docs/custom_theme/favicon.ico index f2883bad61b..d8116ecae37 100644 Binary files a/docs/custom_theme/favicon.ico and b/docs/custom_theme/favicon.ico differ diff --git a/mkdocs.yml b/mkdocs.yml index 28a1bfa7328..4f09c6d6dcc 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -20,9 +20,6 @@ copyright: Hyperledger Besu and its documentation are licensed under Apache 2.0 #extra project info and template customisation extra: doc_site_edit_url: https://github.com/hyperledger/besu-docs/ - versions: - stable: &stable_version 1.3.0 - quickstart: *stable_version latest_version_warning: url_contains: /latest/ text: 'You are reading Hyperledger Besu development version documentation and