From 4adfcefaa8e4a040da8f07461e5b431955c03867 Mon Sep 17 00:00:00 2001 From: Radek Scheibinger Date: Wed, 12 Jun 2024 18:26:34 +0200 Subject: [PATCH] Delete crib config CRIB config has moved to the crib monorepo. --- crib/.env.example | 35 -- crib/.gitignore | 3 - crib/README.md | 158 ------ crib/dashboard/cmd/delete.go | 19 - crib/dashboard/cmd/deploy.go | 105 ---- crib/devspace.yaml | 522 ------------------- crib/devspace_start.sh | 36 -- crib/go.mod | 38 -- crib/go.sum | 37 -- crib/scripts/check_env_vars.sh | 49 -- crib/scripts/cribbit.sh | 196 ------- crib/scripts/ingress_check.sh | 52 -- crib/values-profiles/README.md | 3 - crib/values-profiles/values-dev.yaml.example | 95 ---- shell.nix | 11 - 15 files changed, 1359 deletions(-) delete mode 100644 crib/.env.example delete mode 100644 crib/.gitignore delete mode 100644 crib/README.md delete mode 100644 crib/dashboard/cmd/delete.go delete mode 100644 crib/dashboard/cmd/deploy.go delete mode 100644 crib/devspace.yaml delete mode 100755 crib/devspace_start.sh delete mode 100644 crib/go.mod delete mode 100644 crib/go.sum delete mode 100755 crib/scripts/check_env_vars.sh delete mode 100755 crib/scripts/cribbit.sh delete mode 100755 crib/scripts/ingress_check.sh delete mode 100644 crib/values-profiles/README.md delete mode 100644 crib/values-profiles/values-dev.yaml.example diff --git a/crib/.env.example b/crib/.env.example deleted file mode 100644 index 1b192f212cb..00000000000 --- a/crib/.env.example +++ /dev/null @@ -1,35 +0,0 @@ -# The image that will be used for the Chainlink nodes. -DEVSPACE_IMAGE= - -# This is a comma separated list of CIDR blocks that will be allowed to access the ingress. -DEVSPACE_INGRESS_CIDRS= - -# This is the base domain in AWS Route 53 that our ingress subdomains will use. -DEVSPACE_INGRESS_BASE_DOMAIN= - -# This is the ARN of the AWS ACM certificate that will be used for the ingress. -DEVSPACE_INGRESS_CERT_ARN= - -# Time to wait for pods to be in `Ready` condition -DEVSPACE_K8S_POD_WAIT_TIMEOUT=600s - -# HELM repo URI for the crib-chainlink-cluster helm chart -CHAINLINK_CLUSTER_HELM_CHART_URI= - -# The duration that the namespace and all of its associated resources will be kept alive. -NS_TTL=72h - -# For keystone provisioning -# The websocket of the blockchain node to connect each CL node to. Needs to be Sepolia endpoint. -KEYSTONE_ETH_WS_URL= -# The http endpoint of the blockchain node to connect each CL node to. Needs to be Sepolia endpoint. -KEYSTONE_ETH_HTTP_URL= -# A private key that contains sepolia ETH to use for contract deployment and funding transmitters. -KEYSTONE_ACCOUNT_KEY= - -## -# These are used by the shell script: cribbit.sh -## -AWS_REGION= -AWS_SSO_ROLE_NAME= -AWS_SSO_START_URL= diff --git a/crib/.gitignore b/crib/.gitignore deleted file mode 100644 index 9edd651d4db..00000000000 --- a/crib/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -values-profiles/* -!values-profiles/values-dev.yaml.example -!values-profiles/README.md diff --git a/crib/README.md b/crib/README.md deleted file mode 100644 index 9a0ab8e9697..00000000000 --- a/crib/README.md +++ /dev/null @@ -1,158 +0,0 @@ -# Crib DevSpace Setup - -CRIB is a DevSpace-based method to launch chainlink cluster for system level tests. - -## Initial Setup - -### Prerequisites -- **Kubefwd**: Ensure you have `kubefwd` installed for port forwarding. Although no nixpkg exists yet, you can install it via Homebrew: - ```bash - brew install txn2/tap/kubefwd - ``` -- **Docker**: If you plan to build images, ensure the [Docker](https://docs.docker.com/engine/install/) service is running. -- **VPN**: Ensure you are connected to the VPN to access the necessary resources. - -### Dev Environment Setup -```bash -# Enter nix shell, which contains necessary tools -nix develop - -# Copy the environment example file and fill in the necessary values -cd crib/ -cp .env.example .env -``` - -## CRIB Initialization - -The CRIB initialization script sets up your development environment for deploying a Chainlink cluster. This script automates several tasks, such as configuring AWS profiles, updating Kubernetes configurations, and logging into Docker and Helm registries. - -### Script Overview -The script performs the following actions: -1. **Environment Setup**: Sources the `.env` file containing necessary environment variables. -2. **AWS Profile Configuration**: Sets up or updates the AWS profile for ECR registry access. -3. **AWS Authentication**: Ensures AWS credentials are valid and logs into AWS SSO if needed. -4. **Kubernetes Configuration**: Updates the kubeconfig for EKS access and sets the Kubernetes context. -5. **Docker and Helm Registry Login**: Logs into AWS ECR to allow pulling and pushing of Docker images and Helm charts. - -### Usage Instructions - -Execute the script with the desired namespace as an argument: -```bash -./cribbit.sh crib-yournamespace -``` -**Note**: The namespace must begin with `crib-` unless overridden. - -### Troubleshooting - -- **Missing Environment Variables**: If any environment variables are missing, the script will terminate early. Make sure all required variables are defined in your `.env` file. -- **AWS Credentials Not Detected**: If AWS credentials cannot be verified, the script will attempt to log in through SSO. Follow the prompts to complete this process. -- **Docker Daemon Not Running**: Ensure that the Docker service is running before executing the script. This is required for Docker and Helm registry logins. - -## Cluster Configuration and Deployment - -### Configuring New Clusters -We use [Devspace](https://www.devspace.sh/docs/getting-started/installation?x0=3) for cluster deployment. Review the settings in `deployments.app.helm.values` and [values.yaml](../charts/chainlink-cluster/values.yaml) for detailed configuration options. - - -### Usage Examples -```bash -# Deploy the current repository state -devspace deploy - -# Deploy a specific image tag already available in ECR -devspace deploy --override-image-tag "" - -# Deploy a public ECR image tag -DEVSPACE_IMAGE=public.ecr.aws/chainlink/chainlink devspace deploy --override-image-tag 2.9.0 - -# Set the time-to-live (TTL) for the namespace, once this time has passed the namespace along with all its associated resources will be deleted -# Valid values are `1h`, `2m`, `3s`, etc. Go time format is invalid `1h2m3s` -devspace run ttl ${namespace} 120hA # Default 72h - -# Forward ports to check UI or run tests -devspace run connect ${my-personal-namespace-name-crib} - -# List ingress hostnames -devspace run ingress-hosts - -# Destroy the cluster -devspace purge -``` - -## Load Testing -Deploy the dashboard and run load tests as described in the [testing documentation](../integration-tests/load/ocr/README.md): - -**NOTE:** If you used `devspace dev ...` always use `devspace reset pods` to switch the pods back - -# Helm - -If you would like to use `helm` directly, uncomment data in `values.yaml` - -## Install from local files -Deploy the cluster with the following command: -```bash -helm install -f values.yaml cl-cluster . -``` - -In another terminal, forward all apps: -```bash -sudo kubefwd svc -n cl-cluster -``` - -Then you can connect and run your tests - -# Grafana dashboard - -We use the [Grabana](https://github.com/K-Phoen/grabana) library to create dashboards programmatically. - -## Dashboard Platform Configuration -Dashboard platform selection can be done with `INFRA_PLATFORM` environment variable. - -The available options are: - - `kubernetes` - - `docker` - -## Panel Selection -Non-default panel selection can be done with `PANELS_INCLUDED` environment variable. - -A comma-separated list of panel names can be provided to include only those panels in the dashboard. - -## Dashboard Deployment -``` -export LOKI_TENANT_ID=promtail -export LOKI_URL=... -export GRAFANA_URL=... -export GRAFANA_TOKEN=... -export PROMETHEUS_DATA_SOURCE_NAME=Thanos -export LOKI_DATA_SOURCE_NAME=Loki -export INFRA_PLATFORM=kubernetes -export GRAFANA_FOLDER=DashboardCoreDebug -export DASHBOARD_NAME=CL-Cluster - -devspace run dashboard_deploy -``` - -Open Grafana folder `DashboardCoreDebug` and find dashboard `ChainlinkClusterDebug`. - -## Load Testing - -To deploy your dashboard and run load [tests](../../integration-tests/load/), see [the integration test README](../../integration-tests/README.md). - -``` -devspace run dashboard_deploy -devspace run workload -devspace run dashboard_test -``` - -## Local Testing - -Go to [dashboard-lib](../dashboard-lib) and link the modules locally. - -``` -cd dashboard -pnpm link --global -cd crib/dashboard/tests -pnpm link --global dashboard-tests -``` - -Then run the tests with commands mentioned above diff --git a/crib/dashboard/cmd/delete.go b/crib/dashboard/cmd/delete.go deleted file mode 100644 index 45b4b11d67f..00000000000 --- a/crib/dashboard/cmd/delete.go +++ /dev/null @@ -1,19 +0,0 @@ -package main - -import ( - lib "github.com/smartcontractkit/chainlink/dashboard-lib" -) - -func main() { - cfg := lib.ReadEnvDeployOpts() - db := lib.NewDashboard(cfg.Name, cfg, nil) - err := db.Delete() - if err != nil { - lib.L.Fatal().Err(err).Msg("failed to delete the dashboard") - } - lib.L.Info(). - Str("Name", db.Name). - Str("GrafanaURL", db.DeployOpts.GrafanaURL). - Str("GrafanaFolder", db.DeployOpts.GrafanaFolder). - Msg("Dashboard deleted") -} diff --git a/crib/dashboard/cmd/deploy.go b/crib/dashboard/cmd/deploy.go deleted file mode 100644 index 6ee19b909a4..00000000000 --- a/crib/dashboard/cmd/deploy.go +++ /dev/null @@ -1,105 +0,0 @@ -package main - -import ( - "github.com/K-Phoen/grabana/dashboard" - lib "github.com/smartcontractkit/chainlink/dashboard-lib" - atlas_don "github.com/smartcontractkit/chainlink/dashboard-lib/atlas-don" - core_don "github.com/smartcontractkit/chainlink/dashboard-lib/core-don" - core_node_components "github.com/smartcontractkit/chainlink/dashboard-lib/core-node-components" - k8spods "github.com/smartcontractkit/chainlink/dashboard-lib/k8s-pods" - waspdb "github.com/smartcontractkit/wasp/dashboard" - "strings" -) - -func main() { - cfg := lib.ReadEnvDeployOpts() - db := lib.NewDashboard(cfg.Name, cfg, - []dashboard.Option{ - dashboard.AutoRefresh("10s"), - dashboard.Tags([]string{"generated"}), - }, - ) - if len(cfg.PanelsIncluded) == 0 || cfg.PanelsIncluded["core"] { - db.Add( - core_don.New( - core_don.Props{ - PrometheusDataSource: cfg.DataSources.Prometheus, - PlatformOpts: core_don.PlatformPanelOpts(cfg.Platform), - }, - ), - ) - // TODO: refactor as a component later - addWASPRows(db, cfg) - } - if cfg.PanelsIncluded["core_components"] { - db.Add( - core_node_components.New( - core_node_components.Props{ - PrometheusDataSource: cfg.DataSources.Prometheus, - PlatformOpts: core_node_components.PlatformPanelOpts(), - }, - ), - ) - } - if cfg.PanelsIncluded["ocr"] || cfg.PanelsIncluded["ocr2"] || cfg.PanelsIncluded["ocr3"] { - for key := range cfg.PanelsIncluded { - if strings.Contains(key, "ocr") { - db.Add( - atlas_don.New( - atlas_don.Props{ - PrometheusDataSource: cfg.DataSources.Prometheus, - PlatformOpts: atlas_don.PlatformPanelOpts(cfg.Platform, key), - OcrVersion: key, - }, - ), - ) - } - } - } - if !cfg.PanelsIncluded["core_components"] && cfg.Platform == "kubernetes" { - db.Add( - k8spods.New( - k8spods.Props{ - PrometheusDataSource: cfg.DataSources.Prometheus, - LokiDataSource: cfg.DataSources.Loki, - }, - ), - ) - } - if err := db.Deploy(); err != nil { - lib.L.Fatal().Err(err).Msg("failed to deploy the dashboard") - } - lib.L.Info(). - Str("Name", db.Name). - Str("GrafanaURL", db.DeployOpts.GrafanaURL). - Str("GrafanaFolder", db.DeployOpts.GrafanaFolder). - Msg("Dashboard deployed") -} - -func addWASPRows(db *lib.Dashboard, cfg lib.EnvConfig) { - if cfg.Platform == "docker" { - return - } - selectors := map[string]string{ - "branch": `=~"${branch:pipe}"`, - "commit": `=~"${commit:pipe}"`, - } - db.Add(waspdb.AddVariables(cfg.DataSources.Loki)) - db.Add( - []dashboard.Option{ - waspdb.WASPLoadStatsRow( - cfg.DataSources.Loki, - selectors, - ), - }, - ) - db.Add( - []dashboard.Option{ - waspdb.WASPDebugDataRow( - cfg.DataSources.Loki, - selectors, - true, - ), - }, - ) -} diff --git a/crib/devspace.yaml b/crib/devspace.yaml deleted file mode 100644 index a6d118a3c87..00000000000 --- a/crib/devspace.yaml +++ /dev/null @@ -1,522 +0,0 @@ -version: v2beta1 -name: chainlink - -vars: - DEVSPACE_ENV_FILE: .env - -pipelines: - deploy: - flags: - - name: clean - short: c - type: bool - description: "If specified, keystone caches will be cleaned before deploying" - - name: override-image-tag - short: o - type: string - description: "If specified, the specified tag will be used instead of building a new image" - - run: |- - tagOverride=$(get_flag "override-image-tag") - run_dependencies --all - - if [[ -n "${tagOverride}" ]]; then - image=${DEVSPACE_IMAGE}:${tagOverride} - echo "Using user provided image: $image" - - args="" - for i in {0..5}; do - args+="--set=helm.values.chainlink.nodes[$i].image=$image " - done - - create_deployments app $args - else - build_images --all - create_deployments app - fi - - echo - echo "Namespace ${DEVSPACE_NAMESPACE} will be deleted in ${NS_TTL}" - echo "To extend the TTL for e.g. 72 hours, run:" - echo "devspace run ttl ${DEVSPACE_NAMESPACE} 72h" - echo - kubectl label namespace ${DEVSPACE_NAMESPACE} cleanup.kyverno.io/ttl=${NS_TTL} > /dev/null 2>&1 || true - kubectl label namespace/${DEVSPACE_NAMESPACE} network=crib > /dev/null 2>&1 || true - - # check if profile is keystone - if [[ "${DEVSPACE_PROFILE}" == "keystone" ]]; then - echo "Keystone profile detected, provisioning Keystone" - pushd ../core/scripts/keystone - if [ $(get_flag "clean") == "true" ]; then - echo "Cleaning keystone caches" - rm -f artefacts/deployed_contracts.json .cache/* - fi - go build -o keystone main.go - chainId=11155111 - ./keystone deploy-contracts \ - --ocrfile=ocr_config.json \ - --chainid=$chainId \ - --ethurl="${KEYSTONE_ETH_HTTP_URL}" \ - --accountkey=${KEYSTONE_ACCOUNT_KEY} - - ./keystone deploy-jobspecs \ - --chainid=$chainId \ - --p2pport=6690 - - ./keystone generate-crib --chainid="$chainId" --outpath="${DEVSPACE_TMPDIR}" - popd - - create_deployments app --from-file="${DEVSPACE_TMPDIR}/crib-cluster-overrides.yaml" - kubectl delete pod -l "app=app" # restart pods to apply the new configuration changes - kubectl wait --for=condition=ready pod -l "app=app" --timeout=2m - fi - - purge: - run: |- - kubectl delete ns ${DEVSPACE_NAMESPACE} - -commands: - ingress-hosts: |- - kubectl get ingress -n ${DEVSPACE_NAMESPACE} \ - -o=jsonpath="{range .items[*].spec.rules[*]}{'https://'}{.host}{'\n'}{end}" - connect: |- - sudo kubefwd svc -n $1 - ttl: |- - kubectl label namespace $1 cleanup.kyverno.io/ttl=$2 --overwrite - workload: |- - cd ../integration-tests/load/ocr && go test -v -run TestOCRLoad || cd - - dashboard_deploy: |- - go run dashboard/cmd/deploy.go - dashboard_test: |- - cd dashboard/tests && npx playwright test || cd - - -images: - app: - image: ${DEVSPACE_IMAGE} - tags: - - ${devspace.namespace}-${devspace.timestamp} - custom: - skipImageArg: true - command: |- - GIT_ROOT=$(git rev-parse --show-toplevel) - cd $GIT_ROOT - - image=${runtime.images.app} - MACOS_SDK_DIR=$(pwd)/tools/bin/MacOSX12.3.sdk IMAGE=$image ./tools/bin/goreleaser_wrapper release --snapshot --clean --config .goreleaser.devspace.yaml - docker push $image -hooks: - - command: ./scripts/check_env_vars.sh - events: ["before:deploy:app"] - - wait: - running: true - terminatedWithCode: 0 - timeout: 600 - container: - labelSelector: - # vars don't work here, = releaseName - release: "app" - events: ["after:deploy:app"] - - # Check that the ingress was created successfully, and print ingress hostnames. - - name: "ingress-check-hook" - command: ./scripts/ingress_check.sh - args: ["app"] # Ingress name. - events: ["after:deploy:app"] - -# This is a list of `deployments` that DevSpace can create for this project -deployments: - app: - updateImageTags: false - namespace: ${DEVSPACE_NAMESPACE} - helm: - releaseName: "app" - chart: - name: ${CHAINLINK_CLUSTER_HELM_CHART_URI} - version: "1.2.2" - # for simplicity, we define all the values here - # they can be defined the same way in values.yml - # devspace merges these "values" with the "values.yaml" before deploy - values: - podSecurityContext: - fsGroup: 999 - - chainlink: - global: - overridesToml: |- - [Feature] - LogPoller = true - [Log] - Level = 'debug' - JSONConsole = true - [Log.File] - MaxSize = '0b' - [WebServer] - AllowOrigins = '*' - HTTPPort = 6688 - SecureCookies = false - HTTPWriteTimeout = '1m' - [WebServer.RateLimit] - Authenticated = 2000 - Unauthenticated = 1000 - [WebServer.TLS] - HTTPSPort = 0 - [Database] - MaxIdleConns = 50 - MaxOpenConns = 50 - MigrateOnStartup = true - [OCR2] - Enabled = true - DefaultTransactionQueueDepth = 0 - [OCR] - Enabled = false - DefaultTransactionQueueDepth = 0 - [P2P] - [P2P.V2] - Enabled = true - ListenAddresses = ['0.0.0.0:6690'] - AnnounceAddresses = ['0.0.0.0:6690'] - DeltaDial = '500ms' - DeltaReconcile = '5s' - securityContext: - capabilities: - drop: - - ALL - readOnlyRootFilesystem: false - runAsNonRoot: true - runAsUser: 14933 - runAsGroup: 999 - web_port: 6688 - p2p_port: 6690 - # extraEnvVars: - # "CL_MEDIAN_CMD": "chainlink-feeds" - nodes: - node1: - image: ${runtime.images.app} - # default resources are 300m/1Gi - # first node need more resources to build faster inside container - # at least 2Gi of memory is required otherwise build will fail (OOM) - resources: - requests: - cpu: 2000m - memory: 2048Mi - limits: - cpu: 2000m - memory: 2048Mi - # override default config per node - # for example, use OCRv2 P2P setup, the whole config - # toml: | - # RootDir = './clroot' - # [Log] - # JSONConsole = true - # Level = 'debug' - # [WebServer] - # AllowOrigins = '*' - # SecureCookies = false - # SessionTimeout = '999h0m0s' - # [OCR2] - # Enabled = true - # [P2P] - # [P2P.V2] - # Enabled = false - # AnnounceAddresses = [] - # DefaultBootstrappers = [] - # DeltaDial = '15s' - # DeltaReconcile = '1m0s' - # ListenAddresses = [] - # [[EVM]] - # ChainID = '1337' - # MinContractPayment = '0' - # [[EVM.Nodes]] - # Name = 'node-0' - # WSURL = 'ws://geth:8546' - # HTTPURL = 'http://geth:8544' - # [WebServer.TLS] - # HTTPSPort = 0 - # or use overridesToml to override some part of configuration - # overridesToml: | - # Enable Tracing - # [Tracing] - # Enabled = true - # SamplingRatio = 1.0 - # CollectorTarget = 'app-opentelemetry-collector:4317' - # TLSCertPath = '' - # Mode = 'unencrypted' - node2: - image: ${runtime.images.app} - node3: - image: ${runtime.images.app} - node4: - image: ${runtime.images.app} - node5: - image: ${runtime.images.app} - - # each CL node have a dedicated PostgreSQL 11.15 - # use StatefulSet by setting: - # - # stateful: true - # capacity 10Gi - # - # if you are running long tests - db: - securityContext: - capabilities: - drop: - - ALL - readOnlyRootFilesystem: false - runAsNonRoot: true - runAsUser: 999 - runAsGroup: 999 - stateful: false - resources: - requests: - cpu: 1 - memory: 1024Mi - limits: - cpu: 1 - memory: 1024Mi - # default cluster shipped with latest Geth ( dev mode by default ) - geth: - securityContext: - capabilities: - drop: - - ALL - readOnlyRootFilesystem: false - runAsNonRoot: true - runAsUser: 999 - runAsGroup: 999 - version: v1.12.0 - wsRpcPort: 8546 - httpRpcPort: 8544 - chains: - - networkId: 1337 - - networkId: 2337 - blocktime: 1 - resources: - requests: - cpu: 1 - memory: 1024Mi - limits: - cpu: 1 - memory: 1024Mi - # mockserver is https://www.mock-server.com/where/kubernetes.html - # used to stub External Adapters - mockserver: - # image: "mockserver/mockserver" - # version: "mockserver-5.15.0" - securityContext: - capabilities: - drop: - - ALL - readOnlyRootFilesystem: false - runAsNonRoot: true - runAsUser: 999 - runAsGroup: 999 - enabled: true - releasenameOverride: mockserver - app: - runAsUser: 999 - readOnlyRootFilesystem: false - port: 1080 - resources: - requests: - cpu: 1 - memory: 1024Mi - limits: - cpu: 1 - memory: 1024Mi - # monitoring.coreos.com/v1 PodMonitor for each node - prometheusMonitor: true - - # These ingresses create AWS ALB resources and Route 53 Records. - ingress: - enabled: true - annotation_certificate_arn: ${DEVSPACE_INGRESS_CERT_ARN} - annotation_group_name: ${DEVSPACE_NAMESPACE} - hosts: - - host: ${DEVSPACE_NAMESPACE}-node1.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-node1 - port: - number: 6688 - - host: ${DEVSPACE_NAMESPACE}-node2.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-node2 - port: - number: 6688 - - host: ${DEVSPACE_NAMESPACE}-node3.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-node3 - port: - number: 6688 - - host: ${DEVSPACE_NAMESPACE}-node4.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-node4 - port: - number: 6688 - - host: ${DEVSPACE_NAMESPACE}-node5.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-node5 - port: - number: 6688 - - host: ${DEVSPACE_NAMESPACE}-geth-1337-http.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: geth-1337 - port: - number: 8544 - - host: ${DEVSPACE_NAMESPACE}-geth-1337-ws.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: geth-1337 - port: - number: 8546 - - host: ${DEVSPACE_NAMESPACE}-geth-2337-http.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: geth-2337 - port: - number: 8544 - - host: ${DEVSPACE_NAMESPACE}-geth-2337-ws.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: geth-2337 - port: - number: 8546 - - host: ${DEVSPACE_NAMESPACE}-mockserver.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: mockserver - port: - number: 1080 - - host: ${DEVSPACE_NAMESPACE}-grafana.${DEVSPACE_INGRESS_BASE_DOMAIN} - http: - paths: - - path: / - backend: - service: - name: app-grafana - port: - number: 80 - networkPolicyDefault: - ingress: - allowCustomCidrs: true - # Should be a comma separated list of CIDR blocks. To include - # AWS ALB private CIDRs and optionally other custom CIDRs. - # Example format: 10.0.0.0/16,192.168.0.1/24 - customCidrs: ${DEVSPACE_INGRESS_CIDRS} - # deployment placement, standard helm stuff - podAnnotations: - nodeSelector: - tolerations: - affinity: -profiles: - - name: local-dev - patches: - # Remove the global overridesToml field. - # This will be configured via a values file. - - op: remove - path: deployments.app.helm.values.chainlink.global.overridesToml - - op: remove - path: deployments.app.helm.values.chainlink.nodes - - op: add - path: deployments.app.helm.valuesFiles - value: ["./values-profiles/values-dev.yaml"] - - name: keystone - patches: - - op: remove - path: deployments.app.helm.values.chainlink.global.overridesToml - - op: replace - path: deployments.app.helm.values.geth - value: - enabled: false - - op: replace - path: deployments.app.helm.values.chainlink.global.toml - value: |- - RootDir = './clroot' - - [Log] - JSONConsole = true - Level = 'debug' - [Log.File] - MaxSize = '0b' - - [WebServer] - AllowOrigins = '*' - SecureCookies = false - SessionTimeout = '999h0m0s' - HTTPPort = 6688 - HTTPWriteTimeout = '1m' - [WebServer.RateLimit] - Authenticated = 2000 - Unauthenticated = 1000 - - [Database] - MaxIdleConns = 50 - MaxOpenConns = 50 - MigrateOnStartup = true - - [OCR2] - Enabled = true - DefaultTransactionQueueDepth = 0 - [OCR] - Enabled = false - DefaultTransactionQueueDepth = 0 - - [WebServer.TLS] - HTTPSPort = 0 - - [Feature] - FeedsManager = true - LogPoller = true - UICSAKeys = true - - [P2P] - [P2P.V2] - Enabled = true - ListenAddresses = ['0.0.0.0:6690'] - AnnounceAddresses = ['0.0.0.0:6690'] - DeltaDial = '500ms' - DeltaReconcile = '5s' - - [[EVM]] - ChainID = '11155111' - - [[EVM.Nodes]] - Name = 'primary' - WSURL = "${KEYSTONE_ETH_WS_URL}" - HTTPURL = "${KEYSTONE_ETH_HTTP_URL}" diff --git a/crib/devspace_start.sh b/crib/devspace_start.sh deleted file mode 100755 index 368b5dd9384..00000000000 --- a/crib/devspace_start.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -set +e # Continue on errors - -COLOR_BLUE="\033[0;94m" -COLOR_GREEN="\033[0;92m" -COLOR_RESET="\033[0m" - -# Print useful output for user -echo -e "${COLOR_BLUE} - %########% - %###########% ____ _____ - %#########% | _ \ ___ __ __ / ___/ ____ ____ ____ ___ - %#########% | | | | / _ \\\\\ \ / / \___ \ | _ \ / _ | / __// _ \\ - %#############% | |_| |( __/ \ V / ____) )| |_) )( (_| |( (__( __/ - %#############% |____/ \___| \_/ \____/ | __/ \__,_| \___\\\\\___| - %###############% |_| - %###########%${COLOR_RESET} - - -Welcome to your development container! - -This is how you can work with it: -- Files will be synchronized between your local machine and this container -- Some ports will be forwarded, so you can access this container via localhost -- Run \`${COLOR_GREEN}go run main.go${COLOR_RESET}\` to start the application -" - -# Set terminal prompt -export PS1="\[${COLOR_BLUE}\]devspace\[${COLOR_RESET}\] ./\W \[${COLOR_BLUE}\]\\$\[${COLOR_RESET}\] " -if [ -z "$BASH" ]; then export PS1="$ "; fi - -# Include project's bin/ folder in PATH -export PATH="./bin:$PATH" - -# Open shell -bash --norc diff --git a/crib/go.mod b/crib/go.mod deleted file mode 100644 index 807a955e865..00000000000 --- a/crib/go.mod +++ /dev/null @@ -1,38 +0,0 @@ -module github.com/smartcontractkit/chainlink/charts/chainlink-cluster - -go 1.21.7 - -require ( - github.com/K-Phoen/grabana v0.22.1 - github.com/smartcontractkit/chainlink/dashboard-lib v0.0.0-00010101000000-000000000000 - github.com/smartcontractkit/wasp v0.4.6 -) - -require ( - github.com/K-Phoen/sdk v0.12.4 // indirect - github.com/gosimple/slug v1.13.1 // indirect - github.com/gosimple/unidecode v1.0.1 // indirect - github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect - github.com/pkg/errors v0.9.1 // indirect - github.com/prometheus/common v0.45.0 // indirect - github.com/rs/zerolog v1.32.0 // indirect - golang.org/x/sys v0.16.0 // indirect -) - -replace ( - github.com/go-kit/log => github.com/go-kit/log v0.2.1 - - // replicating the replace directive on cosmos SDK - github.com/gogo/protobuf => github.com/regen-network/protobuf v1.3.3-alpha.regen.1 - github.com/grafana/grafana-foundation-sdk/go => github.com/grafana/grafana-foundation-sdk/go v0.0.0-20240314112857-a7c9c6d0044c - - // until merged upstream: https://github.com/hashicorp/go-plugin/pull/257 - github.com/hashicorp/go-plugin => github.com/smartcontractkit/go-plugin v0.0.0-20240208201424-b3b91517de16 - - // until merged upstream: https://github.com/mwitkow/grpc-proxy/pull/69 - github.com/mwitkow/grpc-proxy => github.com/smartcontractkit/grpc-proxy v0.0.0-20230731113816-f1be6620749f - - github.com/sercand/kuberesolver/v4 => github.com/sercand/kuberesolver/v5 v5.1.1 - github.com/smartcontractkit/chainlink/dashboard-lib => ./../dashboard-lib -) diff --git a/crib/go.sum b/crib/go.sum deleted file mode 100644 index 37720195192..00000000000 --- a/crib/go.sum +++ /dev/null @@ -1,37 +0,0 @@ -github.com/K-Phoen/grabana v0.22.1 h1:b/O+C3H2H6VNYSeMCYUO4X4wYuwFXgBcRkvYa+fjpQA= -github.com/K-Phoen/grabana v0.22.1/go.mod h1:3LTXrTzQzTKTgvKSXdRjlsJbizSOW/V23Q3iX00R5bU= -github.com/K-Phoen/sdk v0.12.4 h1:j2EYuBJm3zDTD0fGKACVFWxAXtkR0q5QzfVqxmHSeGQ= -github.com/K-Phoen/sdk v0.12.4/go.mod h1:qmM0wO23CtoDux528MXPpYvS4XkRWkWX6rvX9Za8EVU= -github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= -github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= -github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/gosimple/slug v1.13.1 h1:bQ+kpX9Qa6tHRaK+fZR0A0M2Kd7Pa5eHPPsb1JpHD+Q= -github.com/gosimple/slug v1.13.1/go.mod h1:UiRaFH+GEilHstLUmcBgWcI42viBN7mAb818JrYOeFQ= -github.com/gosimple/unidecode v1.0.1 h1:hZzFTMMqSswvf0LBJZCZgThIZrpDHFXux9KeGmn6T/o= -github.com/gosimple/unidecode v1.0.1/go.mod h1:CP0Cr1Y1kogOtx0bJblKzsVWrqYaqfNOnHzpgWw4Awc= -github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= -github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= -github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= -github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= -github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM= -github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY= -github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= -github.com/rs/zerolog v1.32.0 h1:keLypqrlIjaFsbmJOBdB/qvyF8KEtCWHwobLp5l/mQ0= -github.com/rs/zerolog v1.32.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss= -github.com/smartcontractkit/wasp v0.4.6 h1:s6J8HgpxMHORl19nCpZPxc5jaVUQv8EXB6QjTuLXXnw= -github.com/smartcontractkit/wasp v0.4.6/go.mod h1:+ViWdUf1ap6powiEiwPskpZfH/Q1sG29YoVav7zGOIo= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU= -golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/crib/scripts/check_env_vars.sh b/crib/scripts/check_env_vars.sh deleted file mode 100755 index 5ecf2579135..00000000000 --- a/crib/scripts/check_env_vars.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash - -# List of required environment variables -required_vars=( - "DEVSPACE_IMAGE" - "DEVSPACE_PROFILE" - "DEVSPACE_INGRESS_CIDRS" - "DEVSPACE_INGRESS_BASE_DOMAIN" - "DEVSPACE_INGRESS_CERT_ARN" - "DEVSPACE_K8S_POD_WAIT_TIMEOUT" - "CHAINLINK_CLUSTER_HELM_CHART_URI" - "NS_TTL" -) - -missing_vars=0 # Counter for missing variables - -# Check each variable -for var in "${required_vars[@]}"; do - if [ -z "${!var}" ]; then # If variable is unset or empty - echo "Error: Environment variable $var is not set." - missing_vars=$((missing_vars + 1)) - fi -done - -# Check for keystone specific profiles -if [[ "${DEVSPACE_PROFILE}" == "keystone" ]]; then - keystone_vars=( - "KEYSTONE_ETH_WS_URL" - "KEYSTONE_ETH_HTTP_URL" - "KEYSTONE_ACCOUNT_KEY" - ) - - for var in "${keystone_vars[@]}"; do - if [ -z "${!var}" ]; then # If variable is unset or empty - echo "Error: Environment variable $var is not set." - missing_vars=$((missing_vars + 1)) - fi - done -fi - -# Exit with an error if any variables were missing -if [ $missing_vars -ne 0 ]; then - echo "Total missing environment variables: $missing_vars" - echo "To fix it, add missing variables in the \"crib/.env\" file." - echo "you can find example of the .env config in the \"crib/.env.example\"" - exit 1 -else - echo "All required environment variables are set." -fi diff --git a/crib/scripts/cribbit.sh b/crib/scripts/cribbit.sh deleted file mode 100755 index 3d3aedfa3aa..00000000000 --- a/crib/scripts/cribbit.sh +++ /dev/null @@ -1,196 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -############################# -# __________ -# < CRIBbit! > -# ---------- -# _ _ / -# (o)--(o) / -# /.______.\ -# \________/ -# ./ \. -# ( . , ) -# \ \_\\//_/ / -# ~~ ~~ ~~ -# -# Initialize your CRIB -# environment. -############################# - -DEVSPACE_NAMESPACE="${1:-}" -if [[ -z "${DEVSPACE_NAMESPACE}" ]]; then - echo "Usage: $0 " - exit 1 -fi - -# Bail if $DEVSPACE_NAMESPACE does not begin with a crib- prefix or does not have an override set. -if [[ ! "${DEVSPACE_NAMESPACE}" =~ ^crib- ]] && [[ -z "${CRIB_IGNORE_NAMESPACE_PREFIX:-}" ]]; then - echo "Error: DEVSPACE_NAMESPACE must begin with 'crib-' prefix." - exit 1 -fi - -# Path to the .env file -repo_root=$(git rev-parse --show-toplevel 2>/dev/null || echo ".") -env_file="${repo_root}/crib/.env" - -# Source .env file if it exists -if [[ -f "${env_file}" ]]; then - # shellcheck disable=SC1090 - source "${env_file}" -else - echo "Error: .env file not found at $env_file" - exit 1 -fi - -# List of required environment variables -required_vars=( - "DEVSPACE_IMAGE" - "HOME" -) - -missing_vars=0 # Counter for missing variables - -for var in "${required_vars[@]}"; do - if [[ -z "${!var:-}" ]]; then # If variable is unset or empty - echo "Error: Environment variable ${var} is not set." - missing_vars=$((missing_vars + 1)) - fi -done - -# Exit with an error if any variables were missing -if [[ $missing_vars -ne 0 ]]; then - echo "Error: Total missing environment variables: $missing_vars" - exit 1 -fi - -## -# Setup AWS Profile -## - -path_aws_config="$HOME/.aws/config" -aws_account_id_ecr_registry=$(echo "${DEVSPACE_IMAGE}" | cut -d'.' -f1) -aws_profile_name="staging-crib" - -if grep -q "$aws_profile_name" "$path_aws_config"; then - echo "Info: Skip updating ${path_aws_config}. Profile already set: ${aws_profile_name}" -else - # List of required environment variables - required_aws_vars=( - "AWS_REGION" - # Should be the short name and not the full IAM role ARN. - "AWS_SSO_ROLE_NAME" - # The AWS SSO start URL, e.g. https://.awsapps.com/start - "AWS_SSO_START_URL" - ) - missing_aws_vars=0 # Counter for missing variables - for var in "${required_aws_vars[@]}"; do - if [[ -z "${!var:-}" ]]; then # If variable is unset or empty - echo "Error: Environment variable ${var} is not set." - missing_aws_vars=$((missing_aws_vars + 1)) - fi - done - - # Exit with an error if any variables were missing - if [[ $missing_aws_vars -ne 0 ]]; then - echo "Error: Total missing environment variables: $missing_aws_vars" - exit 1 - fi - - cat <>"$path_aws_config" -[profile $aws_profile_name] -region=${AWS_REGION} -sso_start_url=${AWS_SSO_START_URL} -sso_region=${AWS_REGION} -sso_account_id=${aws_account_id_ecr_registry} -sso_role_name=${AWS_SSO_ROLE_NAME} -EOF - echo "Info: ${path_aws_config} modified. Added profile: ${aws_profile_name}" -fi - -echo "Info: Setting AWS Profile env var: AWS_PROFILE=${aws_profile_name}" -export AWS_PROFILE=${aws_profile_name} - -if aws sts get-caller-identity >/dev/null 2>&1; then - echo "Info: AWS credentials working." -else - echo "Info: AWS credentials not detected. Attempting to login through SSO." - aws sso login -fi - -# Check again and fail this time if not successful -if ! aws sts get-caller-identity >/dev/null 2>&1; then - echo "Error: AWS credentials still not detected. Exiting." - exit 1 -fi - -## -# Setup EKS KUBECONFIG -## - -path_kubeconfig="${KUBECONFIG:-$HOME/.kube/config}" -eks_cluster_name="${CRIB_EKS_CLUSTER_NAME:-main-stage-cluster}" -eks_alias_name="${CRIB_EKS_ALIAS_NAME:-main-stage-cluster-crib}" - -if [[ ! -f "${path_kubeconfig}" ]] || ! grep -q "name: ${eks_alias_name}" "${path_kubeconfig}"; then - echo "Info: KUBECONFIG file (${path_kubeconfig}) not found or alias (${eks_alias_name}) not found. Attempting to update kubeconfig." - aws eks update-kubeconfig \ - --name "${eks_cluster_name}" \ - --alias "${eks_alias_name}" \ - --region "${AWS_REGION}" -else - echo "Info: Alias '${eks_alias_name}' already exists in kubeconfig. No update needed." - echo "Info: Setting kubernetes context to: ${eks_alias_name}" - kubectl config use-context "${eks_alias_name}" -fi - -## -# Check Docker Daemon -## - -if docker info >/dev/null 2>&1; then - echo "Info: Docker daemon is running, authorizing registry" -else - echo "Error: Docker daemon is not running. Exiting." - exit 1 -fi - -## -# AWS ECR Login -## - -# Function to extract the host URI of the ECR registry from OCI URI -extract_ecr_host_uri() { - local ecr_uri="$1" - # Regex to capture the ECR host URI - if [[ $ecr_uri =~ oci:\/\/([0-9]+\.dkr\.ecr\.[a-zA-Z0-9-]+\.amazonaws\.com) ]]; then - echo "${BASH_REMATCH[1]}" - else - echo "No valid ECR host URI found in the URI." - echo "Have you set CHAINLINK_CLUSTER_HELM_CHART_URI env var?" - exit 1 - fi -} - -# Set env var CRIB_SKIP_ECR_LOGIN=true to skip ECR login. -if [[ -n "${CRIB_SKIP_ECR_LOGIN:-}" ]]; then - echo "Info: Skipping ECR login." -else - echo "Info: Logging docker into AWS ECR registry." - aws ecr get-login-password \ - --region "${AWS_REGION}" | - docker login --username AWS \ - --password-stdin "${aws_account_id_ecr_registry}.dkr.ecr.${AWS_REGION}.amazonaws.com" - - echo "Info: Logging helm into AWS ECR registry." - helm_registry_uri=$(extract_ecr_host_uri "${CHAINLINK_CLUSTER_HELM_CHART_URI}") - aws ecr get-login-password --region "${AWS_REGION}" | - helm registry login "$helm_registry_uri" --username AWS --password-stdin -fi - -## -# Setup DevSpace -## - -devspace use namespace "${DEVSPACE_NAMESPACE}" diff --git a/crib/scripts/ingress_check.sh b/crib/scripts/ingress_check.sh deleted file mode 100755 index 9e9e3d85b61..00000000000 --- a/crib/scripts/ingress_check.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -### -# To be invoked by `devspace` after a successful DevSpace deploy via a hook. -### - -if [[ -z "${DEVSPACE_HOOK_KUBE_NAMESPACE:-}" ]]; then - echo "Error: DEVSPACE_HOOK_KUBE_NAMESPACE is not set. Make sure to run from devspace." - exit 1 -fi - -INGRESS_NAME="${1:-}" -if [[ -z "${INGRESS_NAME}" ]]; then - echo "Usage: $0 INGRESS_NAME" - exit 1 -fi - -max_retries=10 -sleep_duration_retry=10 # 10 seconds -sleep_duration_propagate=60 # 60 seconds -timeout=$((60 * 2)) # 2 minutes -elapsed=0 # Track the elapsed time - -# Loop until conditions are met or we reach max retries or timeout -for ((i=1; i<=max_retries && elapsed<=timeout; i++)); do - ingress_hostname_aws=$(kubectl get ingress "${INGRESS_NAME}" -n "${DEVSPACE_HOOK_KUBE_NAMESPACE}" \ - -o jsonpath='{.status.loadBalancer.ingress[0].hostname}') - - # Sometimes the events on the ingress are "" instead of "successfully reconciled". - # So we use the AWS hostname as a signal that the ingress has been created successfully. - if echo "${ingress_hostname_aws}" | grep -q ".elb.amazonaws.com"; then - echo "#############################################################" - echo "# Ingress hostnames:" - echo "#############################################################" - devspace run ingress-hosts - echo - echo "Sleeping for ${sleep_duration_propagate} seconds to allow DNS records to propagate... (Use CTRL+C to safely skip this step.)" - sleep $sleep_duration_propagate - echo "...done. NOTE: If you have an issue with the DNS records, try to reset your local and/or VPN DNS cache." - exit 0 - else - echo "Attempt $i: Waiting for the ingress to be created..." - sleep $sleep_duration_retry - ((elapsed += sleep_duration_retry)) - fi -done - -# If we reached here, it means we hit the retry limit or the timeout -echo "Error: Ingress was not successfully created within the given constraints." -exit 1 diff --git a/crib/values-profiles/README.md b/crib/values-profiles/README.md deleted file mode 100644 index 7f5b6df4904..00000000000 --- a/crib/values-profiles/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# values-profiles - -Store helm values files for different [DevSpace profiles](https://www.devspace.sh/docs/configuration/profiles/) here. The convention is to make the yaml file name in here match the DevSpace profile name. diff --git a/crib/values-profiles/values-dev.yaml.example b/crib/values-profiles/values-dev.yaml.example deleted file mode 100644 index fecedf60aaf..00000000000 --- a/crib/values-profiles/values-dev.yaml.example +++ /dev/null @@ -1,95 +0,0 @@ -# Disable geth if using existing testnets. -geth: - enabled: false -chainlink: - global: - toml: |- - RootDir = './clroot' - [Log] - JSONConsole = true - Level = 'debug' - [WebServer] - AllowOrigins = '*' - SecureCookies = false - SessionTimeout = '999h0m0s' - [Feature] - FeedsManager = true - LogPoller = true - UICSAKeys = true - [OCR] - Enabled = true - DefaultTransactionQueueDepth = 0 - [P2P] - [P2P.V2] - Enabled = true - ListenAddresses = ['0.0.0.0:6690'] - AnnounceAddresses = ['0.0.0.0:6690'] - DeltaDial = '500ms' - DeltaReconcile = '5s' - [[EVM]] - # Avax Fuji Testnet - ChainID = "43113" - MinContractPayment = '0' - AutoCreateKey = true - FinalityDepth = 10 - [[EVM.Nodes]] - Name = 'avax-fuji-testnet-official' - WSURL = 'wss://api.avax-test.network/ext/bc/C/ws' - HTTPURL = 'https://api.avax-test.network/ext/bc/C/rpc' - [[EVM]] - # BSC Testnet - ChainID = "97" - MinContractPayment = '0' - AutoCreateKey = true - FinalityDepth = 10 - [[EVM.Nodes]] - Name = 'bsc-testnet-official' - HTTPURL = 'https://data-seed-prebsc-1-s.bnbchain.org:8545' - WSURL = 'wss://data-seed-prebsc-1-s1.binance.org:8545/' - [WebServer.TLS] - HTTPSPort = 0 - - overridesToml: |- - [Feature] - LogPoller = true - - [Log] - Level = 'debug' - JSONConsole = true - - [Log.File] - MaxSize = '0b' - - [WebServer] - AllowOrigins = '*' - HTTPPort = 6688 - SecureCookies = false - HTTPWriteTimeout = '1m' - - [WebServer.RateLimit] - Authenticated = 2000 - Unauthenticated = 1000 - - [WebServer.TLS] - HTTPSPort = 0 - - [Database] - MaxIdleConns = 50 - MaxOpenConns = 50 - MigrateOnStartup = true - - [OCR2] - Enabled = true - DefaultTransactionQueueDepth = 0 - - [OCR] - Enabled = false - DefaultTransactionQueueDepth = 0 - - [P2P] - [P2P.V2] - Enabled = true - ListenAddresses = ['0.0.0.0:6690'] - AnnounceAddresses = ['0.0.0.0:6690'] - DeltaDial = '500ms' - DeltaReconcile = '5s' \ No newline at end of file diff --git a/shell.nix b/shell.nix index 1a3a08ffe09..9aa24ccdd89 100644 --- a/shell.nix +++ b/shell.nix @@ -40,12 +40,6 @@ mkShell' { github-cli jq - # deployment - awscli2 - devspace - kubectl - kubernetes-helm - # cross-compiling, used in CRIB zig @@ -62,9 +56,4 @@ mkShell' { PGDATA = "db"; CL_DATABASE_URL = "postgresql://chainlink:chainlink@localhost:5432/chainlink_test?sslmode=disable"; - shellHook = '' - # Find the root of the git repository - repo_root=$(git rev-parse --show-toplevel 2>/dev/null || echo ".") - export PATH=$PATH:$repo_root/crib/scripts - ''; }