diff --git a/book/book.toml b/book/book.toml index ea17be3c8..c150a410a 100644 --- a/book/book.toml +++ b/book/book.toml @@ -12,6 +12,10 @@ build-dir = "docs" default-theme = "ayu" additional-js = ["mermaid.min.js", "mermaid-init.js"] +[output.html.fold] +enable = true +level = 0 + [preprocessor.alerts] [preprocessor.cmdrun] diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index e94b61e02..bf62fd336 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -2,70 +2,59 @@ - [Overview](./overview.md) - [Framework](./framework/overview.md) +- [Basic Usage](./framework/getting_started.md) - [Getting Started](./framework/getting_started.md) - [Your First Test](./framework/first_test.md) - [NodeSet Environment](./framework/nodeset_environment.md) - - [NodeSet Environment (Import Keys)](./framework/nodeset_environment_import.md) - - [NodeSet with Capabilities](./framework/nodeset_capabilities.md) + - [NodeSet (Capabilities)](./framework/nodeset_capabilities.md) - [NodeSet (Local Docker builds)](./framework/nodeset_docker_rebuild.md) - - [NodeSet Compat Environment](./framework/nodeset_compatibility.md) +- [Advanced Usage](./framework/configuration.md) + - [CLI](./framework/cli.md) + - [Configuration](./framework/configuration.md) + - [Debugging Tests](framework/components/debug.md) - [Creating your own components](./developing/developing_components.md) + - [Exposing Components](framework/components/state.md) - [Asserting Logs](./developing/asserting_logs.md) - [Quick Contracts Deployment](./framework/quick_deployment.md) - [Verifying Contracts](./framework/verify.md) - - [NodeSet with External Blockchain]() - - [CLI](./framework/cli.md) - - [Configuration](./framework/configuration.md) + - [CL Node Keys Import](./framework/cl_node_keys_import.md) - [Test Configuration](./framework/test_configuration_overrides.md) - - [Exposing Components](framework/components/state.md) - - [Debugging Tests](framework/components/debug.md) - [Debugging K8s Chaos Tests](framework/chaos/debug-k8s.md) - [Components Cleanup](framework/components/cleanup.md) - [Components Caching](framework/components/caching.md) - [Components Resources](framework/components/resources.md) - [Containers Network Isolation](framework/components/network_isolation.md) - - [Faking Services](framework/components/mocking.md) + - [Fake Services](framework/components/mocking.md) - [Copying Files](framework/copying_files.md) - [External Environment](framework/components/external.md) - - [Troubleshooting](framework/components/troubleshooting.md) - - [Secrets]() - - [Observability Stack](framework/observability/observability_stack.md) - - [Metrics](framework/observability/metrics.md) - - [Logs](framework/observability/logs.md) - - [Profiling](framework/observability/profiling.md) - - [PostgreSQL](framework/observability/postgresql.md) - - [Traces]() - - [Blockscout](framework/observability/blockscout.md) - - [Components](framework/components/overview.md) - - [Blockchains](framework/components/blockchains/overview.md) - - [EVM](framework/components/blockchains/evm.md) - - [Solana](framework/components/blockchains/solana.md) - - [Aptos](framework/components/blockchains/aptos.md) - - [Sui](framework/components/blockchains/sui.md) - - [TRON](framework/components/blockchains/tron.md) - - [ZKSync](framework/components/blockchains/zksync.md) - - [Ton](framework/components/blockchains/ton.md) - - [Optimism Stack]() - - [Arbitrum Stack]() - - [Chainlink](framework/components/chainlink.md) - - [Node](framework/components/chainlink/node.md) - - [NodeSet](framework/components/chainlink/nodeset.md) - - [Storage](framework/components/storage.md) - - [S3](framework/components/storage/s3.md) - - [Chip Ingress Set](framework/components/chipingresset/chip_ingress.md) - - [Clients]() - - [Chainlink]() - - [RPC]() - - [Loki]() +- [Observability Stack](framework/observability/observability_stack.md) + - [Overview](framework/observability/observability_stack.md) + - [Metrics](framework/observability/metrics.md) + - [Logs](framework/observability/logs.md) + - [Profiling](framework/observability/profiling.md) + - [PostgreSQL](framework/observability/postgresql.md) + - [BlockScout](framework/observability/blockscout.md) +- [Components](framework/components/overview.md) + - [Overview](framework/components/overview.md) + - [Blockchains](framework/components/blockchains/overview.md) + - [EVM](framework/components/blockchains/evm.md) + - [Solana](framework/components/blockchains/solana.md) + - [Aptos](framework/components/blockchains/aptos.md) + - [Sui](framework/components/blockchains/sui.md) + - [TRON](framework/components/blockchains/tron.md) + - [ZKSync](framework/components/blockchains/zksync.md) + - [Ton](framework/components/blockchains/ton.md) + - [Storage](framework/components/storage.md) + - [S3](framework/components/storage/s3.md) + - [Chip Ingress Set](framework/components/chipingresset/chip_ingress.md) +- [Troubleshooting](framework/components/troubleshooting.md) - [Mono Repository Tooling](./monorepo-tools.md) - [Testing Maturity Model](framework/testing.md) - - [Smoke]() - - [Performance]() - - [Chaos](./framework/chaos/chaos.md) + - [Chaos Testing](./framework/chaos/chaos.md) - [Fork Testing](./framework/fork.md) - [Fork Testing (Mutating Storage)](./framework/fork_storage.md) - [Libraries](./libraries.md) - - [Seth](./libs/seth.md) + - [Overview](./libraries.md) - [WASP](./libs/wasp/overview.md) - [Getting started](./libs/wasp/getting_started.md) - [First test (RPS test)](./libs/wasp/first_test.md) @@ -112,45 +101,46 @@ - [Reuse dashboard components](./libs/wasp/how-to/reuse_dashboard_components.md) - [Parallelize load](./libs/wasp/how-to/parallelise_load.md) - [Debug Loki errors](./libs/wasp/how-to/debug_loki_errors.md) - - [Havoc](./libs/havoc.md) - - [K8s Test Runner](k8s-test-runner/k8s-test-runner.md) + - [Havoc](./libs/havoc.md) + - [Seth](./libs/seth.md) - [Sentinel](./libs/sentinel.md) - --- -- [Releasing modules](releasing_modules.md) +- [Legacy](./legacy.md) + - [Overview](./legacy.md) + - [CTFv1](lib.md) + - [Blockchain](lib/blockchain.md) + - [Concurrency](lib/concurrency.md) + - [Client](lib/client.md) + - [Anvil]() + - [AWS Secrets Manager](lib/client/aws_secrets_manager.md) + - [Github](lib/client/github.md) + - [Grafana](lib/client/grafana.md) + - [Kafka](lib/client/kafka.md) + - [Loki](lib/client/loki.md) + - [MockServer](lib/client/mockserver.md) + - [Postgres](lib/client/postgres.md) + - [Prometheus](lib/client/prometheus.md) + - [Kubernetes](lib/k8s_new/overview.md) + - [Creating environments](lib/k8s_new/environments.md) + - [Using remote runner](lib/k8s_new/remote_runner.md) + - [Passing test secrets](lib/k8s_new/test_secrets.md) + - [chain.link labels](lib/k8s/labels.md) + - [Kubernetes (legacy docs)](lib/k8s/KUBERNETES.md) + - [K8s Remote Run](lib/k8s/REMOTE_RUN.md) + - [K8s Tutorial](lib/k8s/TUTORIAL.md) + - [Config](lib/config/config.md) + - [Docker](lib/docker/overview.md) + - [Blockchain nodes](lib/docker/blockchain_nodes.md) + - [Chainlink ecosystem](lib/docker/chainlink_ecosystem.md) + - [Third party apps]() + - [Test helpers](lib/docker/test_helpers.md) + - [Logging](lib/logging.md) + - [K8s Test Runner](k8s-test-runner/k8s-test-runner.md) --- -- [CTFv1 (Discouraged)](lib.md) - - [Blockchain](lib/blockchain.md) - - [Concurrency](lib/concurrency.md) - - [Client](lib/client.md) - - [Anvil]() - - [AWS Secrets Manager](lib/client/aws_secrets_manager.md) - - [Github](lib/client/github.md) - - [Grafana](lib/client/grafana.md) - - [Kafka](lib/client/kafka.md) - - [Loki](lib/client/loki.md) - - [MockServer](lib/client/mockserver.md) - - [Postgres](lib/client/postgres.md) - - [Prometheus](lib/client/prometheus.md) - - [Kubernetes](lib/k8s_new/overview.md) - - [Creating environments](lib/k8s_new/environments.md) - - [Using remote runner](lib/k8s_new/remote_runner.md) - - [Passing test secrets](lib/k8s_new/test_secrets.md) - - [chain.link labels](lib/k8s/labels.md) - - [Kubernetes (legacy docs)](lib/k8s/KUBERNETES.md) - - [K8s Remote Run](lib/k8s/REMOTE_RUN.md) - - [K8s Tutorial](lib/k8s/TUTORIAL.md) - - [Config](lib/config/config.md) - - [CRIB Connector](lib/crib.md) - - [Docker](lib/docker/overview.md) - - [Blockchain nodes](lib/docker/blockchain_nodes.md) - - [Chainlink ecosystem](lib/docker/chainlink_ecosystem.md) - - [Third party apps]() - - [Test helpers](lib/docker/test_helpers.md) - - [Logging](lib/logging.md) +- [Releasing modules](releasing_modules.md) --- diff --git a/book/src/developing.md b/book/src/developing.md index 629accedf..76cee74da 100644 --- a/book/src/developing.md +++ b/book/src/developing.md @@ -5,4 +5,4 @@ Here we describe good practices for developing components for our framework. Rules for components are simple: - Component should declare some `Input` and an optional `Output` (we use that so we can skip or cache any component results) - Components should be isolated, they should not return anything except basic types like `int`, `string`, `maps` or `structs` -- Component **must** have documentation under [Components](./framework/components/overview.md), here is an [example](./framework/components/chainlink/node.md) \ No newline at end of file +- Component **must** have documentation under [Components](./framework/components/overview.md), here is an [example](./framework/components/chainlink/nodeset.md) \ No newline at end of file diff --git a/book/src/framework/nodeset_environment_import.md b/book/src/framework/cl_node_keys_import.md similarity index 91% rename from book/src/framework/nodeset_environment_import.md rename to book/src/framework/cl_node_keys_import.md index d26e98206..a514b073f 100644 --- a/book/src/framework/nodeset_environment_import.md +++ b/book/src/framework/cl_node_keys_import.md @@ -1,5 +1,6 @@ -# NodeSet Environment (Import Keys) +# CL Node Keys Import If your tests are designed to run not just within a Docker environment but also with external infrastructure, and you want to reuse the test logic across different environments or securely store private keys, refer to the example below. [Import Keys Example](https://github.com/smartcontractkit/chainlink-testing-framework/blob/main/framework/examples/myproject/smoke_import_keys_test.go) + diff --git a/book/src/framework/components/chainlink/node.md b/book/src/framework/components/chainlink/node.md deleted file mode 100644 index eba6e5e92..000000000 --- a/book/src/framework/components/chainlink/node.md +++ /dev/null @@ -1,112 +0,0 @@ -# Node - -Here we provide *full* configuration parameters for `Node` - -
-Here we provide full configuration reference, if you want to copy and run it, please remove all .out fields before! -
- - -## Configuration -```toml -[cl_node] - - [cl_node.db] - # PostgreSQL image version and tag - image = "postgres:12.0" - # Pulls the image every time if set to 'true', used like that in CI. Can be set to 'false' to speed up local runs - pull_image = false - - [cl_node.node] - # custom ports that plugins may need to expose and map to the host machine - custom_ports = [14000, 14001] - # A list of paths to capability binaries - capabilities = ["./capability_1", "./capability_2"] - # Default capabilities directory inside container - capabilities_container_dir = "/usr/local/bin" - # Image to use, you can either provide "image" or "docker_file" + "docker_ctx" fields - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - # Path to your Chainlink Dockerfile - docker_file = "../../core/chainlink.Dockerfile" - # Path to docker context that should be used to build from - docker_ctx = "../.." - # Optional name for image we build, default is "ctftmp" - docker_image_name = "ctftmp" - # Pulls the image every time if set to 'true', used like that in CI. Can be set to 'false' to speed up local runs - pull_image = false - # Overrides Chainlink node TOML configuration - # can be multiline, see example - user_config_overrides = """ - [Log] - level = 'info' - """ - # Overrides Chainlink node secrets TOML configuration - # you can only add fields, overriding existing fields is prohibited by Chainlink node - user_secrets_overrides = """ - [AnotherSecret] - mySecret = 'a' - """ - - [cl_node.node.env_vars] - MY_FIRST_ENV_VAR = "env var value" - - # Outputs are the results of deploying a component that can be used by another component - [cl_node.out] - # If 'use_cache' equals 'true' we skip component setup when we run the test and return the outputs - use_cache = true - # Describes deployed or external Chainlink node - [cl_node.out.node] - # API user name - api_auth_user = 'notreal@fakeemail.ch' - # API password - api_auth_password = 'fj293fbBnlQ!f9vNs' - # Host Docker URLs the test uses - # in case of using external component you can replace these URLs with another deployment - p2p_url = "http://127.0.0.1:32812" - url = "http://127.0.0.1:32847" - - # Describes deployed or external Chainlink node - [cl_node.out.postgresql] - # PostgreSQL connection string - # in case of using external database can be overriden - url = "postgresql://chainlink:thispasswordislongenough@127.0.0.1:32846/chainlink?sslmode=disable" -``` - -## Usage -```golang -package yourpackage_test - -import ( - "fmt" - "github.com/smartcontractkit/chainlink-testing-framework/framework" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" - "github.com/stretchr/testify/require" - "testing" -) - -type Step2Cfg struct { - BlockchainA *blockchain.Input `toml:"blockchain_a" validate:"required"` - CLNode *clnode.Input `toml:"cl_node" validate:"required"` -} - -func TestMe(t *testing.T) { - in, err := framework.Load[Step2Cfg](t) - require.NoError(t, err) - - bc, err := blockchain.NewBlockchainNetwork(in.BlockchainA) - require.NoError(t, err) - - networkCfg, err := clnode.NewNetworkCfgOneNetworkAllNodes(bc) - require.NoError(t, err) - in.CLNode.Node.TestConfigOverrides = networkCfg - - output, err := clnode.NewNodeWithDB(in.CLNode) - require.NoError(t, err) - - t.Run("test something", func(t *testing.T) { - fmt.Printf("node url: %s\n", output.Node.ExternalURL) - require.NotEmpty(t, output.Node.ExternalURL) - }) -} -``` \ No newline at end of file diff --git a/book/src/framework/components/chainlink/nodeset.md b/book/src/framework/components/chainlink/nodeset.md deleted file mode 100644 index 6f0fb77b9..000000000 --- a/book/src/framework/components/chainlink/nodeset.md +++ /dev/null @@ -1,163 +0,0 @@ -# NodeSet - -Here we provide *full* configuration parameters for `NodeSet` - -
-Here we provide full configuration reference, if you want to copy and run it, please remove all .out fields before! -
- -## Configuration - -This component requires some Blockchain to be deployed, add this to config -```toml -[blockchain_a] - # Blockchain node type, can be "anvil" or "geth" - type = "anvil" - # Chain ID - chain_id = "1337" - # Anvil command line params, ex.: docker_cmd_params = ['--block-time=1', '...'] - docker_cmd_params = [] - # Docker image and tag - image = "ghcr.io/foundry-rs/foundry:stable" - # External port to expose - port = "8545" - # Pulls the image every time if set to 'true', used like that in CI. Can be set to 'false' to speed up local runs - pull_image = false - - # Outputs are the results of deploying a component that can be used by another component - [blockchain_a.out] - chain_id = "1337" - # If 'use_cache' equals 'true' we skip component setup when we run the test and return the outputs - use_cache = true - - [[blockchain_a.out.nodes]] - # URLs to access the node(s) inside docker network, used by other components - internal_http_url = "http://anvil-14411:8545" - internal_ws_url = "ws://anvil-14411:8545" - # URLs to access the node(s) on your host machine or in CI - http_url = "http://127.0.0.1:33955" - ws_url = "ws://127.0.0.1:33955" -``` - -Then configure NodeSet -```toml -[[nodesets]] - # unique NodeSet name - name = "don" - # amount of Chainlink nodes to spin up - nodes = 5 - # Override mode: can be "all" or "each" - # defines how we override configs, either we apply first node fields to all of them - # or we define each node custom configuration (used in compatibility testing) - override_mode = "all" - # HTTP API port range start, each new node get port incremented (host machine) - http_port_range_start = 10000 - # P2P API port range start, each new node get port incremented (host machine) - p2p_port_range_start = 12000 - - [nodesets.db] - # PostgreSQL image version and tag - image = "postgres:12.0" - # Pulls the image every time if set to 'true', used like that in CI. Can be set to 'false' to speed up local runs - pull_image = false - # PostgreSQL volume name - volume_name = "" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - # custom ports that plugins may need to expose and map to the host machine - custom_ports = [14000, 14001] - # A list of paths to capability binaries - capabilities = ["./capability_1", "./capability_2"] - # Default capabilities directory inside container - capabilities_container_dir = "/usr/local/bin" - # Image to use, you can either provide "image" or "docker_file" + "docker_ctx" fields - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - # Path to your Chainlink Dockerfile - docker_file = "../../core/chainlink.Dockerfile" - # Path to docker context that should be used to build from - docker_ctx = "../.." - # Optional name for image we build, default is "ctftmp" - docker_image_name = "ctftmp" - # Pulls the image every time if set to 'true', used like that in CI. Can be set to 'false' to speed up local runs - pull_image = false - # Overrides Chainlink node TOML configuration - # can be multiline, see example - user_config_overrides = """ - [Log] - level = 'info' - """ - # Overrides Chainlink node secrets TOML configuration - # you can only add fields, overriding existing fields is prohibited by Chainlink node - user_secrets_overrides = """ - [AnotherSecret] - mySecret = 'a' - """ - - # Outputs are the results of deploying a component that can be used by another component - [nodesets.out] - # If 'use_cache' equals 'true' we skip component setup when we run the test and return the outputs - use_cache = true - - # Describes deployed or external Chainlink nodes - [[nodesets.out.cl_nodes]] - use_cache = true - - # Describes deployed or external Chainlink node - [nodesets.out.cl_nodes.node] - # API user name - api_auth_user = 'notreal@fakeemail.ch' - # API password - api_auth_password = 'fj293fbBnlQ!f9vNs' - # Host Docker URLs the test uses - # in case of using external component you can replace these URLs with another deployment - p2p_url = "http://127.0.0.1:32996" - url = "http://127.0.0.1:33096" - # Describes PostgreSQL instance - [nodesets.out.cl_nodes.postgresql] - # PostgreSQL connection string - # in case of using external database can be overriden - url = "postgresql://chainlink:thispasswordislongenough@127.0.0.1:33094/chainlink?sslmode=disable" - - # Can have more than one node, fields are the same, see above ^^ - [[nodesets.out.cl_nodes]] - [nodesets.out.cl_nodes.node] - [nodesets.out.cl_nodes.postgresql] - ... -``` - -## Usage -```golang -package capabilities_test - -import ( - "github.com/smartcontractkit/chainlink-testing-framework/framework" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" - ns "github.com/smartcontractkit/chainlink-testing-framework/framework/components/simple_node_set" - "github.com/stretchr/testify/require" - "testing" -) - -type Config struct { - BlockchainA *blockchain.Input `toml:"blockchain_a" validate:"required"` - NodeSets []*ns.Input `toml:"nodesets" validate:"required"` -} - -func TestMe(t *testing.T) { - in, err := framework.Load[Config](t) - require.NoError(t, err) - - bc, err := blockchain.NewBlockchainNetwork(in.BlockchainA) - require.NoError(t, err) - out, err := ns.NewSharedDBNodeSet(in.NodeSet, bc) - require.NoError(t, err) - - t.Run("test something", func(t *testing.T) { - for _, n := range out.CLNodes { - require.NotEmpty(t, n.Node.ExternalURL) - require.NotEmpty(t, n.Node.HostP2PURL) - } - }) -} -``` \ No newline at end of file diff --git a/book/src/framework/components/mocking.md b/book/src/framework/components/mocking.md index 8664edff3..90c16c89f 100644 --- a/book/src/framework/components/mocking.md +++ b/book/src/framework/components/mocking.md @@ -1,4 +1,4 @@ -# Faking Services +# Fake Services The framework aims to equip you with all the necessary tools to write end-to-end system-level tests, while still allowing the flexibility to fake third-party services that are not critical to your testing scope. diff --git a/book/src/framework/components/overview.md b/book/src/framework/components/overview.md index baf3f64a5..3db19f12c 100644 --- a/book/src/framework/components/overview.md +++ b/book/src/framework/components/overview.md @@ -1,8 +1,5 @@ # Components -CTF contains a lot of useful components, some of them are off-chain services like `Chainlink Node`, `NodeSet` - -CTF contains three groups of components: -- Off-chain services like `CL Node`, `NodeSet`, `JobDistributor`, etc. -- On-chain wrappers for [chainlink-deployments](https://github.com/smartcontractkit/chainlink-deployments) repository -- Test components, blockchain simulators, fakes, etc +CTF contains of two groups of components: +- Off-chain services like [NodeSet](../../framework/nodeset_environment.md) +- Test components, blockchain simulators, fake server diff --git a/book/src/framework/getting_started.md b/book/src/framework/getting_started.md index a6f245d90..028d42aab 100644 --- a/book/src/framework/getting_started.md +++ b/book/src/framework/getting_started.md @@ -1,13 +1,13 @@ # 🚀 Getting started ## Prerequisites -- `Docker` [OrbStack](https://orbstack.dev/) or [Docker Desktop](https://www.docker.com/products/docker-desktop/), we recommend OrbStack (faster, smaller memory footprint) +- [Docker Desktop](https://www.docker.com/products/docker-desktop/) - [Golang](https://go.dev/doc/install) Tested with ``` +Docker Desktop version 4.36.0 Docker version 27.3.1 -OrbStack Version: 1.8.2 (1080200) ``` ## Test setup diff --git a/book/src/framework/nodeset_compatibility.md b/book/src/framework/nodeset_compatibility.md deleted file mode 100644 index 6c4866842..000000000 --- a/book/src/framework/nodeset_compatibility.md +++ /dev/null @@ -1,64 +0,0 @@ -# Chainlink Node Set Compatibility Testing Environment - -The difference between this and [basic node set configuration](nodeset_environment.md) is that here you can provide any custom configuration for CL nodes. - -Create a configuration file `smoke.toml` -```toml -[blockchain_a] - type = "anvil" - docker_cmd_params = ["-b", "1"] - -[[nodesets]] - name = "don" - nodes = 5 - override_mode = "each" - - [nodesets.db] - image = "postgres:12.0" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - user_config_overrides = " [Log]\n level = 'info'\n " - user_secrets_overrides = "" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - user_config_overrides = " [Log]\n level = 'info'\n " - user_secrets_overrides = "" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - user_config_overrides = " [Log]\n level = 'info'\n " - user_secrets_overrides = "" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - user_config_overrides = " [Log]\n level = 'info'\n " - user_secrets_overrides = "" - - [[nodesets.node_specs]] - - [nodesets.node_specs.node] - image = "public.ecr.aws/chainlink/chainlink:v2.17.0" - user_config_overrides = " [Log]\n level = 'info'\n " - user_secrets_overrides = "" -``` - -You can reuse `smoke_test.go` from previous [setup](nodeset_environment.md) - -Run it -```bash -CTF_CONFIGS=smoke.toml go test -v -run TestNodeSet -``` - -Summary: -- We deployed fully-fledged set of Chainlink nodes connected to some blockchain and faked external data provider -- We understood how we can test different versions of Chainlink nodes for compatibility and override configs diff --git a/book/src/framework/observability/observability_stack.md b/book/src/framework/observability/observability_stack.md index c7ba0384e..85438b85b 100644 --- a/book/src/framework/observability/observability_stack.md +++ b/book/src/framework/observability/observability_stack.md @@ -14,13 +14,6 @@ ctf obs down Read more about how to check [logs](logs.md) and [profiles](profiling.md) -## Helpful links for your local setup - -- [Loki](http://localhost:3000/explore?panes=%7B%22qZw%22:%7B%22datasource%22:%22P8E80F9AEF21F6940%22,%22queries%22:%5B%7B%22refId%22:%22A%22,%22expr%22:%22%22,%22queryType%22:%22range%22,%22datasource%22:%7B%22type%22:%22loki%22,%22uid%22:%22P8E80F9AEF21F6940%22%7D%7D%5D,%22range%22:%7B%22from%22:%22now-6h%22,%22to%22:%22now%22%7D%7D%7D&schemaVersion=1&orgId=1) -- [Prometheus](http://localhost:3000/explore?panes=%7B%22qZw%22:%7B%22datasource%22:%22PBFA97CFB590B2093%22,%22queries%22:%5B%7B%22refId%22:%22A%22,%22expr%22:%22%22,%22range%22:true,%22datasource%22:%7B%22type%22:%22prometheus%22,%22uid%22:%22PBFA97CFB590B2093%22%7D%7D%5D,%22range%22:%7B%22from%22:%22now-6h%22,%22to%22:%22now%22%7D%7D%7D&schemaVersion=1&orgId=1) -- [PostgreSQL](http://localhost:3000/d/000000039/postgresql-database?orgId=1&refresh=10s&var-DS_PROMETHEUS=PBFA97CFB590B2093&var-interval=$__auto_interval_interval&var-namespace=&var-release=&var-instance=postgres_exporter_0:9187&var-datname=All&var-mode=All&from=now-5m&to=now) -- [Pyroscope](http://localhost:4040) - ## Developing Change compose files under `framework/cmd/observability` and restart the stack (removing volumes too) diff --git a/book/src/framework/overview.md b/book/src/framework/overview.md index 823011f7e..c41108521 100644 --- a/book/src/framework/overview.md +++ b/book/src/framework/overview.md @@ -17,6 +17,3 @@ It enables tests to run in any environment and serves as a single source of trut - **Caching**: Any component can use cached configs to skip setup for even faster test development. - **Integrated observability stack**: get all the info you need to develop end-to-end tests: metrics, logs, traces, profiles. - -###### * If all the images are cached, you are using [OrbStack](https://orbstack.dev/) with M1/M2/M3 chips and have at least 8CPU dedicated to Docker - diff --git a/book/src/k8s-test-runner/k8s-test-runner.md b/book/src/k8s-test-runner/k8s-test-runner.md index 758597092..f8dce0708 100644 --- a/book/src/k8s-test-runner/k8s-test-runner.md +++ b/book/src/k8s-test-runner/k8s-test-runner.md @@ -1,5 +1,9 @@ ## Preparing to Run Tests on Staging +
+This is legacy documentation and code, it'd be sunset on next release +
+ Ensure you complete the following steps before executing tests on the staging environment: 1. **Connect to the VPN** diff --git a/book/src/legacy.md b/book/src/legacy.md new file mode 100644 index 000000000..c1dcda801 --- /dev/null +++ b/book/src/legacy.md @@ -0,0 +1,3 @@ +# Legacy + +This chapter contains legacy documentation or code examples that will be sunset in the next major release diff --git a/book/src/lib.md b/book/src/lib.md index 392ac7cd5..522f2ede0 100644 --- a/book/src/lib.md +++ b/book/src/lib.md @@ -11,8 +11,13 @@ +
+ **DEPRECATED: This is v1 version and it is not actively maintained** +
+ + The purpose of this framework is to: - Interact with different blockchains - Configure CL jobs diff --git a/book/src/lib/crib.md b/book/src/lib/crib.md deleted file mode 100644 index 63537d63d..000000000 --- a/book/src/lib/crib.md +++ /dev/null @@ -1,7 +0,0 @@ -### CRIB Connector - -
- -`GAPv1` won't be supported in the future, you can still use [this example](https://github.com/smartcontractkit/chainlink/tree/develop/integration-tests/crib), [CI run](https://github.com/smartcontractkit/chainlink/actions/workflows/crib-integration-test.yml) but expect this to be changed. - -
diff --git a/book/src/libraries.md b/book/src/libraries.md index 671c2bc8c..03da0d719 100644 --- a/book/src/libraries.md +++ b/book/src/libraries.md @@ -1,4 +1,4 @@ -# Libraries +# Overview CTF monorepository contains a set of libraries: