Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Odis Combiner to k8s #47

Merged
merged 95 commits into from
Oct 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
49bd69d
combiner doth be serverless no more
alecps Sep 22, 2023
af3d2c4
Merge branch 'soloseng/odis-cloud-function-gen2' into alecps/odisComb…
soloseng Sep 28, 2023
d79b6ae
WIP
alvarof2 Sep 26, 2023
0e4de57
endpoint
alvarof2 Sep 26, 2023
9ae7ff6
cloudbuild.yaml
alvarof2 Sep 26, 2023
1335a90
Add some counters and latency histogram
alvarof2 Sep 27, 2023
4b5ac14
Less buckets for Histograms
alvarof2 Sep 27, 2023
e2bb448
status code label in responses metric
alvarof2 Sep 27, 2023
256df86
More metrics
alvarof2 Sep 28, 2023
d65cff7
Latency Histograms names
alvarof2 Sep 28, 2023
8571d8a
errorsCaughtInEndpointHandler name
alvarof2 Sep 28, 2023
9501f50
Add increments to combinerErrors
alvarof2 Sep 28, 2023
6c1e09b
Add fullNodeLatency Histogram
alvarof2 Sep 29, 2023
78f0f19
Remove metric for all error types logged
alvarof2 Sep 29, 2023
75ab56b
Merge branch 'main' into alecps/odisCombinerk8s
aaronmgdr Sep 29, 2023
863a6e0
Merge branch 'main' into alecps/odisCombinerk8s
aaronmgdr Sep 29, 2023
315cdfa
Merge branch 'main' into alecps/odisCombinerk8s
aaronmgdr Sep 29, 2023
63e6bc4
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
aaronmgdr Sep 29, 2023
547b564
Remove metric for all error types logged in handlers.ts
alvarof2 Sep 29, 2023
90199ca
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 3, 2023
4973730
Dockerfile
alvarof2 Oct 3, 2023
84c24c8
Merge branch 'main' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 3, 2023
ec7e561
Dockerfiles and sync to main
alvarof2 Oct 3, 2023
e351617
workflows
alvarof2 Oct 5, 2023
553954d
Merge branch 'main' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 6, 2023
2170002
GH Action combiner
alvarof2 Oct 6, 2023
0302719
ODIS signer GH Action
alvarof2 Oct 6, 2023
1faa676
Lint
alvarof2 Oct 6, 2023
dd083eb
More metrics
alvarof2 Oct 6, 2023
59b271c
sigInconsistenciesErrors name
alvarof2 Oct 6, 2023
3f17970
Merge branch 'main' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 6, 2023
b627e50
Merge branch 'main' into alecps/odisCombinerk8s
alvarof2 Oct 6, 2023
9a436fb
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 6, 2023
7b22b2b
Merge branch 'main' into alecps/odisCombinerk8s
alvarof2 Oct 6, 2023
c698d6f
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 6, 2023
4c00727
odis-signer-container
alvarof2 Oct 6, 2023
30a2c6a
K8S test URL
alvarof2 Oct 9, 2023
2153393
K8S contextName for tests
alvarof2 Oct 9, 2023
1be5b0d
Cloud Function proxy
alvarof2 Oct 9, 2023
6ed7b21
Merge branch 'main' into alecps/odisCombinerk8s
alvarof2 Oct 10, 2023
f89d30f
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 10, 2023
b2249b6
Branch name
alvarof2 Oct 10, 2023
f0301fe
Merge branch 'main' into alecps/odisCombinerk8s
alvarof2 Oct 10, 2023
3d806f0
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 10, 2023
85baf6c
Total errors metric
alvarof2 Oct 10, 2023
e434409
Remove alfajoresstaging-k8s loadtest case
alvarof2 Oct 11, 2023
44c715b
Merge branch 'main' into alecps/odisCombinerk8s
alvarof2 Oct 11, 2023
0085c0b
Merge branch 'alecps/odisCombinerk8s' into alvarof/prom-odisCombinerk8s
alvarof2 Oct 11, 2023
b51040a
Remove sha from GH Action name
alvarof2 Oct 11, 2023
169a8e4
alfajoresstaging = K8S testing
alvarof2 Oct 11, 2023
b123201
Alfajores K8S URL
alvarof2 Oct 12, 2023
d04bc9a
Mainnet K8S URL
alvarof2 Oct 12, 2023
9170664
Merge pull request #49 from celo-org/alvarof/prom-odisCombinerk8s
alecps Oct 13, 2023
0ad749e
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 13, 2023
bee7bdd
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 16, 2023
0e0717b
use ctx param
alecps Oct 16, 2023
05c7d0a
fix double counting in catchErrorHandler
alecps Oct 16, 2023
53ac45e
small fixes in combine.ts
alecps Oct 16, 2023
b8a458b
fixes in handler.ts
alecps Oct 16, 2023
b4ec818
misc minor edits
alecps Oct 17, 2023
a97ea01
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
a56ee89
misc fixes for tests
alecps Oct 17, 2023
5286ec5
don't update combiner url in sdk
alecps Oct 17, 2023
91d1fe6
add ssl options to combiner
alecps Oct 17, 2023
4c53cf3
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
263b9aa
env file edits
alecps Oct 17, 2023
a32dc41
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
ffdd31e
remove performance lib from combiner
alecps Oct 17, 2023
d8e3bf7
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
8d872db
add tail latency metric
alecps Oct 17, 2023
c6a864b
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
71750e6
fix tests
alecps Oct 17, 2023
c93a59e
Merge branch 'main' of github.com:celo-org/social-connect into alecps…
alecps Oct 17, 2023
7ac6905
remove .env files
alecps Oct 18, 2023
0410cd9
Values and docs
alvarof2 Oct 18, 2023
ed77d4e
Warning
alvarof2 Oct 18, 2023
9d481d7
set default port
alecps Oct 18, 2023
18dc955
combine err logs
alecps Oct 18, 2023
dfa2675
Empty changeset
alvarof2 Oct 18, 2023
4563242
respond to feedback - tweak error msg for cache fetch error
alecps Oct 18, 2023
b2fb33d
Update docs/kubernetes-deployment/combiner/README.md
alecps Oct 19, 2023
5f92763
Merge pull request #105 from celo-org/alvarof/k8s-values
alecps Oct 19, 2023
b09797a
small changes to values files
alecps Oct 19, 2023
6b8ecaf
Typos to values
alvarof2 Oct 19, 2023
6a68295
Values with tracing and typos
alvarof2 Oct 19, 2023
c7a7d33
Empty changeset
alvarof2 Oct 19, 2023
7bb24c0
Should authenticate to true
alvarof2 Oct 19, 2023
452f553
Merge pull request #106 from celo-org/alvarof/k8s-typos-values
alecps Oct 19, 2023
36a6291
fixes small typo
alecps Oct 19, 2023
f9fcf0e
changeset
alecps Oct 19, 2023
fd33851
update versions
alecps Oct 19, 2023
672065a
only use published dependencies
alecps Oct 19, 2023
31713a6
revert using only published dependencies
alecps Oct 19, 2023
c564121
empty change set
alecps Oct 19, 2023
6c46f2f
prevent Combiner from running locally when running e2e tests
alecps Oct 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .changeset/small-boats-hang.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
---
---
44 changes: 44 additions & 0 deletions .github/workflows/odis-combiner-container.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
name: Build ODIS combiner image

on:
push:
paths:
- 'dockerfiles/phone-number-privacy/Dockerfile-combiner'
- 'packages/phone-number-privacy/combiner/**'
branches:
- main
pull_request:
paths:
- 'dockerfiles/phone-number-privacy/Dockerfile-combiner'
- 'packages/phone-number-privacy/combiner/**'
workflow_dispatch:

jobs:
odis-combiner-build-dev:
uses: celo-org/reusable-workflows/.github/workflows/[email protected]
name: Build us-west1-docker.pkg.dev/devopsre/dev-images/odis-combiner
if: |
github.ref != 'refs/heads/main'
with:
workload-id-provider: projects/1094498259535/locations/global/workloadIdentityPools/gh-social-connect/providers/github-by-repos
service-account: '[email protected]'
artifact-registry: us-west1-docker.pkg.dev/devopsre/dev-images/odis-combiner
tag: ${{ github.sha }}
context: .
file: dockerfiles/phone-number-privacy/Dockerfile-combiner
trivy: true

odis-combiner-build:
uses: celo-org/reusable-workflows/.github/workflows/[email protected]
name: Build us-west1-docker.pkg.dev/devopsre/social-connect/odis-combiner
if: |
github.ref == 'refs/heads/main'
with:
workload-id-provider: projects/1094498259535/locations/global/workloadIdentityPools/gh-social-connect-main/providers/github-by-repos
service-account: '[email protected]'
artifact-registry: us-west1-docker.pkg.dev/devopsre/social-connect/odis-combiner
tag: ${{ github.sha }}
context: .
file: dockerfiles/phone-number-privacy/Dockerfile-combiner
trivy: true
42 changes: 42 additions & 0 deletions dockerfiles/phone-number-privacy/Dockerfile-combiner
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
##### Gathering dependencies
FROM scratch AS packages

# Copy phone-number-privacy package and its dependency closure.
# Assemble all dependencies into the packages folder so the second stage can select whether to
# include all packages, or just the phone-number-privacy packages.
WORKDIR /celo-phone-number-privacy/
COPY packages/phone-number-privacy/combiner packages/phone-number-privacy/combiner
COPY packages/phone-number-privacy/common packages/phone-number-privacy/common
COPY packages/sdk/encrypted-backup packages/sdk/encrypted-backup
COPY packages/sdk/identity packages/sdk/identity

##### Main stage
FROM node:18
LABEL org.opencontainers.image.authors="[email protected]"

WORKDIR /celo-phone-number-privacy/

# Copy monorepo settings
COPY lerna.json package.json yarn.lock ./

# Makes build fail if it doesn't copy git, will be removed after build
COPY .git .git

# Setting ONLY_PUBLISHED_DEPENDENCIES to true or any non-empty string results in only the
# phone-number-privacy package being copied into the image, and therefore it will only build using
# published dependencies. Setting ONLY_PUBLISHED_DEPENDENCIES to "" will copy in all dependecies.
ARG ONLY_PUBLISHED_DEPENDENCIES=""
ARG PACKAGE_SELECTOR=${ONLY_PUBLISHED_DEPENDENCIES:+phone-number-privacy/combiner}
COPY --from=packages celo-phone-number-privacy/packages/${PACKAGE_SELECTOR} packages/${PACKAGE_SELECTOR}

# Install dependencies and build.
RUN yarn install --network-timeout 100000 --frozen-lockfile && yarn cache clean
RUN yarn build

RUN rm -r .git

# Setup and run the combiner application.
ENV NODE_ENV production
WORKDIR /celo-phone-number-privacy/packages/phone-number-privacy/combiner
EXPOSE 8080
ENTRYPOINT ["yarn", "start:docker"]
68 changes: 68 additions & 0 deletions docs/kubernetes-deployment/combiner/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Kubernetes Deployment

ODIS Combiner can be deployed in Kubernetes with a Helm chart.

## Helm chart

ODIS combiner Helm chart templates are available [here](https://github.com/celo-org/charts/tree/main/charts/odis-combiner). The chart is available through a public GCP Artifact Registry `oci://us-west1-docker.pkg.dev/devopsre/clabs-public-oci/odis-combiner`.

Hence the ODIS combiner can be deployed as follows in your Kubernetes cluster:

```bash
helm upgrade -install <RELEASE_NAME> oci://us-west1-docker.pkg.dev/devopsre/clabs-public-oci/odis-combiner -n <NAMESPACE> --create-namespace -f <VALUES_FILE_PATH> [--version <VERSION>]
```

Notice the following:

- `<RELEASE_NAME>`: Name of the Helm release.
- `<NAMESPACE>`: Kubernetes namespace to deploy the Helm chart.
- `<VALUES_FILE_PATH>`: Path to your `values.yaml` file that define the Helm deployment. You can use the examples under [./values] as a guide, but you will have to modify it according to your needs. You can find a table defining the values file [here](https://github.com/celo-org/charts/tree/main/charts/odis-combiner#values).
- `<VERSION>`: The version of the Helm chart. If omitted, it will use the latest version (available at the [chart's README](https://github.com/celo-org/charts/tree/main/charts/odis-combiner#odis-combiner) as a GitHub badge).

## cLabs Developers

For cLabs developers, this section contains links and information for useful deployments.

> :warning: You will need to be a cLabs employee with appropiate permissions to access these links.

ODIS combiner is deployed in the following clusters:

- Staging: cluster `integration-tests`, namespace `odis-combiner-staging` with this [`values-staging.yaml` file](./values/values-staging.yaml).
- URL: `https://odis-combiner-staging.integration-tests.celo-networks-dev.org`
- Alfajores: cluster `alfajores`, namespace `odis-combiner-alfajores` with this [`values-alfajores.yaml` file](./values/values-alfajores.yaml).
- URL: `https://odis-combiner-alfajores.alfajores.celo-testnet.org`
- Mainnet: cluster `mainnet`, namespace `odis-combiner-mainnet` with this [`values-mainnet.yaml` file](./values/values-mainnet.yaml).
- URL: `https://odis-combiner-mainnet.mainnet.celo-testnet.org`

### Modifying the deployment

There are 2 main ways to modify the ODIS combiner deployment in Kubernetes.

- Directly modify the deployment in GCP console.
- Use [Helm](https://helm.sh/).

#### Directly modify the deployment in GCP console

You can access the ODIS deployment following these links. There you can edit the deployment and modify any value as needed (image, Env. Vars., etc.).

- [Staging](https://console.cloud.google.com/kubernetes/deployment/us-west1-b/integration-tests/odis-combiner-staging/odis-combiner-staging/yaml/view?project=celo-testnet&supportedpurview=project)
- [Alfajores](https://console.cloud.google.com/kubernetes/deployment/us-west1-a/alfajores/odis-combiner-alfajores/odis-combiner-alfajores/yaml/view?project=celo-testnet-production&supportedpurview=project)
- [Mainnet](https://console.cloud.google.com/kubernetes/deployment/us-west1-a/mainnet/odis-combiner-mainnet/odis-combiner-mainnet/overview?project=celo-testnet-production&supportedpurview=project)

#### Use Helm

1. Ensure you are connected to the correct Kubernetes cluster (staging, alfajores or mainnet).
2. Get the currently deployed Helm chart values:

```bash
helm get values -n odis-combiner-<staging|alfajores|mainnet> odis-combiner-<staging|alfajores|mainnet> -o yaml > ./values/values-<staging|alfajores|mainnet>.yaml
```

3. Modify the values file accordingly
4. Deploy the new release:

```bash
helm upgrade -install odis-combiner-<staging|alfajores|mainnet> oci://us-west1-docker.pkg.dev/devopsre/clabs-public-oci/odis-combiner -n odis-combiner-<staging|alfajores|mainnet> -f ./values/values-<staging|alfajores|mainnet>.yaml --create-namespace --version <VERSION>
```

5. Ensure there are no sensitive values in the `./values/values-<staging|alfajores|mainnet>.yaml` file and commit it to this repo.
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
nameOverride: ""
fullnameOverride: ""
replicaCount: 1
image:
repository: us-west1-docker.pkg.dev/devopsre/dev-images/odis-combiner
pullPolicy: Always
tag: "85baf6c3854aff588d88332addd709d544ebd6c4"
imagePullSecrets: []
serviceAccount:
create: true
annotations: {}
name: ""
env:
tracing:
enabled: true
endpoint: "https://grafana-agent.odis-alfajores-signer-3.celo-networks-dev.org/api/traces"
serviceName: "odis-combiner-alfajores-k8s"
log:
format: stackdriver
level: trace
blockchain:
blockchainProvider: "https://alfajores-forno.celo-testnet.org"
blockchainApiKeyExistingSecret: "odis-combiner-forno-key"
domain:
domainEnabled: true
domainFullNodeDelayMs: "100"
domainFullNodeRetryCount: "5"
domainFullNodeTimeoutMs: "1000"
domainKeysCurrentVersion: "1"
domainKeysVersions: '[{"keyVersion":1,"threshold":2,"polynomial":"0200000000000000f99af1c8fbcb0a15945ff0f23f0e93b86c101f48250c911b4ab4b15004723f93eea98c8ffd4e166535757b46c0522a0167a40224c88ba43c13685bf2f159e63394416cb41432b320e69e3e0810aa8fa1e1b0c7dcc948fc5742f2b8d752b65081f10d83821b4e2cf90b56cc4fc8c98dc00e5f24f2c5b53fa8ad7c2ebd3963c9223cf95209692d267a4f8084edfc0b5f01f7a31d82bf5421c544b6258749c691b79e6f36d9ba963ead6f25b9986b6bcb7d45b5edb33a616af630b4ce17bf552c81","pubKey":"+ZrxyPvLChWUX/DyPw6TuGwQH0glDJEbSrSxUARyP5PuqYyP/U4WZTV1e0bAUioBZ6QCJMiLpDwTaFvy8VnmM5RBbLQUMrMg5p4+CBCqj6HhsMfcyUj8V0LyuNdStlCB"},{"keyVersion":2,"threshold":2,"polynomial":"0200000000000000f99af1c8fbcb0a15945ff0f23f0e93b86c101f48250c911b4ab4b15004723f93eea98c8ffd4e166535757b46c0522a0167a40224c88ba43c13685bf2f159e63394416cb41432b320e69e3e0810aa8fa1e1b0c7dcc948fc5742f2b8d752b65081f10d83821b4e2cf90b56cc4fc8c98dc00e5f24f2c5b53fa8ad7c2ebd3963c9223cf95209692d267a4f8084edfc0b5f01f7a31d82bf5421c544b6258749c691b79e6f36d9ba963ead6f25b9986b6bcb7d45b5edb33a616af630b4ce17bf552c81","pubKey":"+ZrxyPvLChWUX/DyPw6TuGwQH0glDJEbSrSxUARyP5PuqYyP/U4WZTV1e0bAUioBZ6QCJMiLpDwTaFvy8VnmM5RBbLQUMrMg5p4+CBCqj6HhsMfcyUj8V0LyuNdStlCB"}]'
domainOdisServicesSigners: '[{"url": "https://odis-alfajores-signer2.azurefd.net"},{"url": "https://odis-alfajores-signer3.azurefd.net"},{"url": "https://odis-alfajores-signer-1-b.azurefd.net"}]'
domainOdisServicesTimeoutMillisecond: "5000"
domainServiceName: "odis_combiner"
domainShouldAuthenticate: true
domainShouldCheckQuota: false
pnp:
pnpEnabled: true
pnpFullNodeDelayMs: "100"
pnpFullNodeRetryCount: "5"
pnpFullNodeTimeoutMs: "1000"
pnpKeysCurrentVersion: "1"
pnpKeysVersions: '[{"keyVersion":1,"threshold":2,"polynomial":"0200000000000000ec5b161ac167995bd17cc0e9cf3f79369efac1fff5b0f68ad0e83dca207e3fc41b8e20bc155ebb3416a7b3d87364490169032189aa7380c47a0a464864fbe0c106e803197ae4959165e7067b95775cee2c74a78d7a67406764f342e5a4b99a003a510287524c9437b12ebb0bfdc7ea46078b807d1b665966961784bd71c4227c272b01c0fcd19c5b92226c1aac324b010abef36192e8ff3abb25686b3e6707bc747b129c32e572b5850db8446bd8f0af9a3fbf6b579793002b1b68528ca4ac00","pubKey":"kPoRxWdEdZ/Nd3uQnp3FJFs54zuiS+ksqvOm9x8vY6KHPG8jrfqysvIRU0wtqYsBKA7SoAsICMBv8C/Fb2ZpDOqhSqvr/sZbZoHmQfvbqrzbtDIPvUIrHgRS0ydJCMsA"},{"keyVersion":2,"threshold":2,"polynomial":"0200000000000000ec5b161ac167995bd17cc0e9cf3f79369efac1fff5b0f68ad0e83dca207e3fc41b8e20bc155ebb3416a7b3d87364490169032189aa7380c47a0a464864fbe0c106e803197ae4959165e7067b95775cee2c74a78d7a67406764f342e5a4b99a003a510287524c9437b12ebb0bfdc7ea46078b807d1b665966961784bd71c4227c272b01c0fcd19c5b92226c1aac324b010abef36192e8ff3abb25686b3e6707bc747b129c32e572b5850db8446bd8f0af9a3fbf6b579793002b1b68528ca4ac00","pubKey":"kPoRxWdEdZ/Nd3uQnp3FJFs54zuiS+ksqvOm9x8vY6KHPG8jrfqysvIRU0wtqYsBKA7SoAsICMBv8C/Fb2ZpDOqhSqvr/sZbZoHmQfvbqrzbtDIPvUIrHgRS0ydJCMsA"}]'
pnpMockDeck: "0xbf8a2b73baf8402f8fe906ad3f42b560bf14b39f7df7797ece9e293d6f162188"
pnpOdisServicesSigners: '[{"url": "https://odis-alfajores-signer2.azurefd.net"},{"url": "https://odis-alfajores-signer3.azurefd.net"},{"url": "https://odis-alfajores-signer-1-b.azurefd.net"}]'
pnpOdisServicesTimeoutMilliseconds: "5000"
pnpServiceName: "odis_combiner"
pnpShouldAuthenticate: true
pnpShouldCheckQuota: false
pnpShouldMockAccountService: false
service:
serviceName: "odis-combiner-k8s"
podAnnotations:
prometheus.io/path: /metrics
prometheus.io/port: "8080"
prometheus.io/scrape: "true"
podSecurityContext: {}
securityContext: {}
ingress:
enabled: true
className: "nginx"
annotations:
kubernetes.io/tls-acme: "true"
hosts:
- host: odis-combiner-alfajores.alfajores.celo-testnet.org
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: odis-combiner-alfajores.alfajores.celo-testnet.org-tls
hosts:
- odis-combiner-alfajores.alfajores.celo-testnet.org
livenessProbe:
timeoutSeconds: 30
initialDelaySeconds: 60
httpGet:
path: /status
port: http
readinessProbe:
timeoutSeconds: 30
initialDelaySeconds: 60
httpGet:
path: /status
port: http
resources: {}
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 3
targetCPUUtilizationPercentage: 80
nodeSelector: {}
tolerations: []
affinity: {}
92 changes: 92 additions & 0 deletions docs/kubernetes-deployment/combiner/values/values-mainnet.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
nameOverride: ""
fullnameOverride: ""
replicaCount: 1
image:
repository: us-west1-docker.pkg.dev/devopsre/dev-images/odis-combiner
pullPolicy: Always
tag: "85baf6c3854aff588d88332addd709d544ebd6c4"
imagePullSecrets: []
serviceAccount:
create: true
annotations: {}
name: ""
env:
tracing:
enabled: true
endpoint: "https://grafana-agent.odis-mainnet-signer-westus2.celo-networks-dev.org/api/traces"
serviceName: "odis-combiner-mainnet-k8s"
log:
format: stackdriver
level: trace
blockchain:
blockchainProvider: "https://forno.celo.org"
blockchainApiKeyExistingSecret: "odis-combiner-forno-key"
domain:
domainEnabled: true
domainFullNodeDelayMs: "100"
domainFullNodeRetryCount: "5"
domainFullNodeTimeoutMs: "1000"
domainKeysCurrentVersion: "1"
domainKeysVersions: '[{"keyVersion":1,"threshold":5,"polynomial":"05000000000000002d7e2d2e2b989bc81e677ced987ee8216cf8a215eddde3d14ddf416c6f513bce8d32b0297e58a888ecca62d22cca3100d2e6ab9d7f049a8fa5b936386f0116a60643c8f604e9431602805a641772e8d0cc800c526dd36d69012ae757c18c250029d97c8a3d4b81e305780b49d511c80dc3009c02b8f651a06c8ec2d5530937a1f7eadf730ad46762a4c089bbd973a000ba77717ec36ebb6fd58904b444a6cde7dd3b3b7ac6fa37f9cd8d00aa67e7cfe81adee5ed45218f7f78b4f8473b564601f4361d228dc6dabf7decd3f61f5bb0ad2c7bd7fe5b7a88054959543e82f4deb08d4fe9af4ac775c9353e038e79f82200863ac9cb7fd6b5fa263eb9d1dead51002607f3eadac153596b671b854715bdb07bee1b0bc8d5178f0dac1b4d00ed0700f46e37135e96604d389f3a323028e29b07f36279e829da00eee1794f3ad6e5dca24eba65a7821755cc464add27c7a601c7e187756e79a5ec3c847f4d91b037fe3cd40590fc1a46b46c2f68c0edcbe5cd7727162a195a711008e4e956eb8a81011b290057cee3f14b9a4198a3e9909cac69a9e7d648fa3dd185794acc4c1e4b994637dca36621d463b42e015115ac2c015fc176d8f143bf99cca654ae95a3101afbdc0c5026f95fbf31af1ac115399f5b6b6d1de09af367745415be9533f8c080","pubKey":"LX4tLiuYm8geZ3ztmH7oIWz4ohXt3ePRTd9BbG9RO86NMrApflioiOzKYtIsyjEA0uarnX8Emo+luTY4bwEWpgZDyPYE6UMWAoBaZBdy6NDMgAxSbdNtaQEq51fBjCUA"}]'
domainOdisServicesSigners: '[{"url": "https://odis.vladiatorlabs.io"},{"url": "https://mainnet-pgpnp-brazilsouth.azurefd.net"},{"url": "https://phone.chainlayerattestations.com"},{"url": "https://pnprivacy.wotrust.us"},{"url": "https://pgpnp.census.works"},{"url": "https://odis.keyko.rocks"},{"url": "https://odis.celo.spruceid.xyz"}]'
domainOdisServicesTimeoutMillisecond: "5000"
domainServiceName: "odis-combiner-mainnet"
domainShouldAuthenticate: true
domainShouldCheckQuota: false
pnp:
pnpEnabled: true
pnpFullNodeDelayMs: "100"
pnpFullNodeRetryCount: "5"
pnpFullNodeTimeoutMs: "1000"
pnpKeysCurrentVersion: "1"
pnpKeysVersions: '[{"keyVersion":1,"threshold":6,"polynomial":"060000000000000016fade1df2e68418f0c47c6cc5ecab70e2ed4a89c2f63ecadd6ad2e106a962c407e8b75a0d368d1a69e540c7c5634e01a7f2b8c00bea4303bdfdba8f54229ff197bc399a3c16b9a8838258e31022c2bb2a397c6e835d7e86d8c47b5a63e2e30017f865337fd0060497457135173e2b0eaec6f8f14f0cacb17a5d150218e15bd46963ed1b9d56f956f9c4fc692813100042f098b7f70913f671e28ed1c99104b9b740549c42c59212b6671f1e1675674f7e6b6d690a13bd474ab9f0c83cd48e017514ca3874606f6abde2b957c791376e24d55efe6ccc7a1194a685b9589ca873a51c7e77b7b814a76cd9af2aafef500155280fb84efd3219b04312635568788b3393fd45a11f431a7eef8a8fc59ff2bfd4aab744baf9221bf1774653dda61d8193b720f60c627d5a9fec5c2c16a27e948f2f4545b460090303327262ec87f51fbf860f58d5e051d91d5bb869c8912300a9b1c2d922d329c9b7d5179946e049d52ed9b3876f36e5c8b2a47831eb235a51d8d877a284fbe07750449f9654d332808beb9641404188813cddb8ffad906752d71f3f042b583f501b3b7f3906946f9931c598575bf4c8d3e8941168f8cc8e001c092117257bb073db3885dffca5e8dd76b689d395bb5555cf00f9943a9e1ec9939f9d700407330163220f3c15a9420011b8693fb95c635168b6b0a021263b246301343e80161eac44fe79ba657fe59deb9d297ced18d090a8f65dc9c2e0990177f186d7501a2256ac9ecca36743e118f5dd4ce35dc976d38c8679d53cd11b0f11edb45c3473ce848d35875e63b2d100","pubKey":"FvreHfLmhBjwxHxsxeyrcOLtSonC9j7K3WrS4QapYsQH6LdaDTaNGmnlQMfFY04Bp/K4wAvqQwO9/bqPVCKf8Ze8OZo8Frmog4JY4xAiwrsqOXxug11+htjEe1pj4uMA"},{"keyVersion":2,"threshold":5,"polynomial":"050000000000000016fade1df2e68418f0c47c6cc5ecab70e2ed4a89c2f63ecadd6ad2e106a962c407e8b75a0d368d1a69e540c7c5634e01a7f2b8c00bea4303bdfdba8f54229ff197bc399a3c16b9a8838258e31022c2bb2a397c6e835d7e86d8c47b5a63e2e300399b80040cf5b4b7e016100f02326636696ad6f449cca503bf336c0fec8f7f96d8d410974ca92708a740257029836a00d5b30808af8ab33d6a069656570402339e649a5d4ee2d399768b1598590c3e9deee17d750f480c94f94fb62ad7554b810fb72e1984c0dc2704cf3a6c67d8470104ee5e727b3fc56efb44d53f50ad3d53a18874dc7c3a670c2c34266b33825601fbb1193929115fdebbc99185f2d327904759c18173d1e2abfcaa3db8954f1d41c816a140b86c8d80ba2c2c39faad7080a0068a13aca4767671c13a75735f638d0f0ba8ae2ad650cff7a2f17a89ea7a28699e0e1f232142b2e5f7662c6b582d01b5ac16fb20791462492bed5fa7e28dc2616cf9703f9b4358d8ceb511c7a9cd4054d2d37a8b25f73aa50086c58e723d8145bbd7a6f3024aa7201fa965558e5641839c1b51930bdbc310f9df2894c37e75c4cebe36f4ac5b35c813605b8cbc830078988790de7525fc7d37c44d6ef75b41392b5b117adcfba29f50d6634b331f63cd9ac341744097cd955007b60e86e200","pubKey":"FvreHfLmhBjwxHxsxeyrcOLtSonC9j7K3WrS4QapYsQH6LdaDTaNGmnlQMfFY04Bp/K4wAvqQwO9/bqPVCKf8Ze8OZo8Frmog4JY4xAiwrsqOXxug11+htjEe1pj4uMA"}]'
pnpMockDeck: "0xbf8a2b73baf8402f8fe906ad3f42b560bf14b39f7df7797ece9e293d6f162188"
pnpOdisServicesSigners: '[{"url": "https://odis.vladiatorlabs.io"},{"url": "https://mainnet-pgpnp-brazilsouth.azurefd.net"},{"url": "https://mainnet-pgpnp-eastasia.azurefd.net"},{"url": "https://phone.chainlayerattestations.com"},{"url": "https://pnprivacy.wotrust.us"},{"url": "https://pgpnp.census.works"},{"url": "https://odis.keyko.rocks"},{"url": "https://odis.celo.spruceid.xyz"}]'
pnpOdisServicesTimeoutMilliseconds: "5000"
pnpServiceName: "odis-combiner-mainnet"
pnpShouldAuthenticate: true
pnpShouldCheckQuota: false
pnpShouldMockAccountService: false
service:
serviceName: "odis-combiner-k8s"
podAnnotations:
prometheus.io/path: /metrics
prometheus.io/port: "8080"
prometheus.io/scrape: "true"
podSecurityContext: {}
securityContext: {}
ingress:
enabled: true
className: "nginx"
annotations:
kubernetes.io/tls-acme: "true"
hosts:
- host: odis-combiner-mainnet.mainnet.celo-testnet.org
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: odis-combiner-mainnet.mainnet.celo-testnet.org-tls
hosts:
- odis-combiner-mainnet.mainnet.celo-testnet.org
livenessProbe:
timeoutSeconds: 30
initialDelaySeconds: 60
httpGet:
path: /status
port: http
readinessProbe:
timeoutSeconds: 30
initialDelaySeconds: 60
httpGet:
path: /status
port: http
resources: {}
autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 3
targetCPUUtilizationPercentage: 80
nodeSelector: {}
tolerations: []
affinity: {}
Loading
Loading