Skip to content

Commit

Permalink
Merge branch 'main' into testAction
Browse files Browse the repository at this point in the history
  • Loading branch information
bgravenorst authored Oct 2, 2024
2 parents 09a73b6 + 53a73a4 commit be1fd58
Show file tree
Hide file tree
Showing 52 changed files with 4,481 additions and 3,445 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,3 @@ jobs:

- name: Build
uses: ConsenSys/docs-gha/build@main
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1 change: 0 additions & 1 deletion .github/workflows/case.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,5 @@ jobs:
- name: Case check action
uses: ConsenSys/docs-gha/case@main
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOC_DIR: ${{ matrix.folder }}
SKIP_TEST: true
11 changes: 0 additions & 11 deletions .github/workflows/dependabot.yml

This file was deleted.

24 changes: 0 additions & 24 deletions .github/workflows/dependency_review.yml

This file was deleted.

70 changes: 70 additions & 0 deletions .github/workflows/link-check.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
{
"ignorePatterns": [
{
"pattern": "^http(s)?://localhost"
},
{
"pattern": "^http(s)?://127.0.0.1"
},
{
"comment": "This is a private repos",
"pattern": "^http(s)?://gitlab.com/ConsenSys/"
},
{
"comment": "This is a private repos",
"pattern": "^http(s)?://github.com/ConsenSys/orchestrate"
},
{
"comment": "This is a private repo",
"pattern": "^http(s)?://github.com/INFURA/docs(?:/(issues|pulls))?"
},
{
"comment": "Consensys.net now has a ddos attack protection",
"pattern": "^http(s)?://consensys.net"
},
{
"comment": "Exclude addresses with extra data variable placeholders (not yet replaced when checking for links)",
"pattern": "{{[a-zA-Z_\\-\\.\\[\\]\\']+}}"
},
{
"comment": "Exclude Infura endpoints that require API key",
"pattern": "^https?:\\/\\/[a-zA-Z0-9.-]*\\.infura\\.io\\/v3\\/.*$"
},
{
"pattern": "^http(s)?://.+.zendesk.com"
},
{
"pattern": "^http(s)?://.+.etherscan.io"
},
{
"pattern": "^http(s)?://help.figma.com"
},
{
"pattern": "^http(s)?://(docs\\.)?metamask\\.io"
},
{
"comment": "Skip urls in the redoc macro with entity",
"pattern": "http(s)?://.+\\&\\#39\\;"
},
{
"comment": "Skip urls in the redoc macro with char",
"pattern": "http(s)?://.+'"
}
],
"httpHeaders": [
{
"urls": [
"https://github.com/",
"https://guides.github.com/",
"https://help.github.com/",
"https://docs.github.com/"
],
"headers": {
"Accept-Encoding": "zstd, br, gzip, deflate"
}
}
],
"timeout": "30s",
"aliveStatusCodes": [200, 206, 403],
"retryOn429": true
}
22 changes: 22 additions & 0 deletions .github/workflows/links.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: Check for broken links

on:
pull_request:
branches:
- main

jobs:

linkCheck:
name: Link Checking
runs-on: ubuntu-latest
strategy:
matrix:
file-extensions: [".md", ".mdx"]
steps:
- uses: actions/checkout@v4
- name: LinkCheck
uses: ConsenSys/docs-gha/linkcheck@main
with:
FILE_EXTENSION: ${{ matrix.file-extensions }}
22 changes: 5 additions & 17 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
name: Check for lint, spelling and link errors
name: Check for lint errors

on:
pull_request:
Expand All @@ -8,27 +8,15 @@ on:

jobs:
lint:
name: Lint Code Base, Spelling, Link Check
name: Lint
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4

- name: Lint
- name: Lint code
uses: ConsenSys/docs-gha/lint@main
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

linkCheck:
name: Link Checking
runs-on: ubuntu-latest
strategy:
matrix:
file-extensions: [".md", ".mdx"]
steps:
- uses: actions/checkout@v4
- name: LinkCheck
uses: ConsenSys/docs-gha/linkcheck@main
with:
FILE_EXTENSION: ${{ matrix.file-extensions }}
- name: Lint markdown
uses: ConsenSys/docs-gha/lint-markdown@main
2 changes: 1 addition & 1 deletion .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,4 +43,4 @@
"text": "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|${{ github.workflow }} workflow failed> on ${{ github.ref }} branch in the ${{ github.repository }} repository!"
}
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
22 changes: 22 additions & 0 deletions .github/workflows/spelling.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: Check for spelling with vale

on:
pull_request:
branches:
- main

jobs:
vale:
name: Spelling
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4

- name: Vale
uses: Consensys/docs-gha/spelling@main
with:
FILEPATHS: "docs"

2 changes: 0 additions & 2 deletions .github/workflows/trivy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,3 @@ jobs:
- uses: actions/checkout@v4
- name: Trivy
uses: ConsenSys/docs-gha/trivy@main
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
16 changes: 10 additions & 6 deletions docs/concepts/architecture.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,28 @@
---
description: Learn more about Web3Signer's architecture.
sidebar_position: 3
sidebar_position: 1
---

# Architecture
# Architecture

Web3Signer is a remote signing client comprised of three main components:

- Remote signer
- Slashing database
- APIs
- APIs

## The remote signer

The remote signer [loads private keys](../how-to/load-keys.md) into memory and responds to signature requests. If you are using an [HSM](../how-to/store-keys/hsm/_category_.json) or a [vault](../how-to/store-keys/vaults/_category_.json) for Execution Layer signing, the keys remain at rest. This component communicates with the slashing database, the APIs, and with the keystore, if used, to coordinate remote signing.
The remote signer [loads private keys](../how-to/load-keys.md) into memory and responds to signature requests.
If you are using an [HSM](../how-to/store-keys/hsm/_category_.json) or a [vault](../how-to/store-keys/vaults/_category_.json) for execution layer signing, the keys stay at rest.
This component communicates with the slashing database, the APIs, and the keystore (if used), to coordinate remote signing.

## The slashing database

The [slashing database](./slashing-protection.md) is a a Postgres database that tracks which keys have signed messages. Database locking ensures that when multiple Web3Signer instances load the same keys, only one instance is permitted to sign.
The [slashing database](./slashing-protection.md) is a Postgres database that tracks which keys have signed messages.
Database locking ensures that when multiple Web3Signer instances load the same keys, only one instance is permitted to sign.

## The APIs

Web3Signer supports REST and [JSON-RPC APIs](../reference/api/_category_.json) to sign consensus layer and execution layer payloads respectively. These connections should be carefully secured. Web3Signer offers [TLS communication](../how-to/configure-tls.md).
Web3Signer supports REST and [JSON-RPC APIs](../reference/api/_category_.json) to sign consensus layer and execution layer payloads
respectively. These connections should be carefully secured. Web3Signer offers [TLS communication](../how-to/configure-tls.md).
4 changes: 3 additions & 1 deletion docs/concepts/slashing-protection.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
description: Learn how slashing protection works in Web3Signer.
sidebar_position: 1
sidebar_position: 2
---

# Slashing protection
Expand All @@ -17,7 +17,9 @@ the required PostgreSQL database, or you can disable slashing protection by sett
[`--slashing-protection-enabled`](../reference/cli/subcommands.md#slashing-protection-enabled) to `false`.

:::info

Web3Signer only supports PostgreSQL for creating the slashing protection database.

:::

Multiple Web3Signer instances can connect to the same slashing protection database.
Expand Down
5 changes: 2 additions & 3 deletions docs/concepts/tls.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
description: Learn about secure communication using TLS in Web3Signer.
sidebar_position: 2
sidebar_position: 3
---

# TLS communication
Expand All @@ -10,8 +10,7 @@ with HashiCorp Vault.

Private keys and certificates for client and server TLS connections must be stored in
password-protected PKCS #12 keystores.
The server (in this example, [Hyperledger Besu](https://besu.hyperledger.org/)) must be configured
to accept TLS connections.
You must configure the server (in this example, [Besu](https://besu.hyperledger.org/)) to accept TLS connections.

Use the command line options to configure TLS on [HTTP JSON-RPC requests](../how-to/configure-tls.md)
and [HashiCorp Vault](../how-to/store-keys/vaults/hashicorp.md).
4 changes: 2 additions & 2 deletions docs/get-started/install-binaries.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ description: Install Web3Signer from a binary distribution.
sidebar_position: 1
---

# Install binary distribution

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Install binary distribution

## Prerequisites

- [Java JDK](https://jdk.java.net/)
Expand Down
Loading

0 comments on commit be1fd58

Please sign in to comment.