Kaynağa Gözat

p2w-terra-relay -> p2w-relay, split EVM relay into new service

commit-id:36d0db6e
Stan Drozd 3 yıl önce
ebeveyn
işleme
b9f73589d6

+ 13 - 5
Tiltfile

@@ -251,11 +251,11 @@ if pyth:
         labels = ["pyth"]
     )
 
-    # Terra relay
+    # Pyth2wormhole relay
     docker_build(
-        ref = "p2w-terra-relay",
+        ref = "p2w-relay",
         context = ".",
-        dockerfile = "third_party/pyth/p2w-terra-relay/Dockerfile.pyth_relay",
+        dockerfile = "third_party/pyth/p2w-relay/Dockerfile.pyth_relay",
     )
     k8s_yaml_with_ns("devnet/p2w-terra-relay.yaml")
     k8s_resource(
@@ -263,11 +263,19 @@ if pyth:
         resource_deps = ["pyth", "p2w-attest", "spy", "terra-terrad"],
         port_forwards = [
             port_forward(4200, name = "Rest API (Status + Query) [:4200]", host = webHost),
-            port_forward(8081, name = "Prometheus Terra [:8081]", host = webHost),
-            port_forward(8082, name = "Prometheus EVM [:8082]", host = webHost)],
+            port_forward(8081, name = "Prometheus [:8081]", host = webHost)],
         labels = ["pyth"]
     )
 
+    k8s_yaml_with_ns("devnet/p2w-evm-relay.yaml")
+    k8s_resource(
+        "p2w-evm-relay",
+        resource_deps = ["pyth", "p2w-attest", "spy", "eth-devnet"],
+        port_forwards = [
+            port_forward(4200, name = "Rest API (Status + Query) [:4201]", host = webHost),
+            port_forward(8081, name = "Prometheus [:8082]", host = webHost)],
+        labels = ["pyth"]
+    )
 
 k8s_yaml_with_ns("devnet/eth-devnet.yaml")
 

+ 83 - 0
devnet/p2w-evm-relay.yaml

@@ -0,0 +1,83 @@
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: p2w-evm-relay
+  labels:
+    app: p2w-evm-relay
+spec:
+  ports:
+    - port: 8081
+      name: prometheus
+      protocol: TCP
+    - port: 4200
+      name: rest-api
+      protocol: TCP
+  clusterIP: None
+  selector:
+    app: p2w-evm-relay
+---
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: p2w-evm-relay
+spec:
+  selector:
+    matchLabels:
+      app: p2w-evm-relay
+  serviceName: p2w-evm-relay
+  replicas: 1
+  template:
+    metadata:
+      labels:
+        app: p2w-evm-relay
+    spec:
+      terminationGracePeriodSeconds: 0
+      containers:
+        - name: p2w-evm-relay
+          image: p2w-relay
+          ports:
+            - containerPort: 8082
+              name: prometheus
+              protocol: TCP
+            - containerPort: 4201
+              name: rest-api
+              protocol: TCP
+          readinessProbe:
+            httpGet:
+              path: '/health'
+              port: 4201
+          command:
+            - node
+            - lib/index.js
+            - "--"
+            - "--evm"
+          env:
+            - name: SPY_SERVICE_HOST
+              value: spy:7072
+            - name: SPY_SERVICE_FILTERS
+              value: '[{"chain_id":1,"emitter_address":"71f8dcb863d176e2c420ad6610cf687359612b6fb392e0642b0ca6b1f186aa3b"}]'
+            - name: EVM_NODE_WEBSOCKET_URL
+              value: "ws://eth-devnet:8545"
+            - name: EVM_WALLET_MNEMONIC_FILE
+              value: "./devnet_mnemonic.txt"
+            - name: EVM_HDWALLET_PATH
+              value: "m/44'/60'/0'/0/1" # Use account with idx 1
+            - name: EVM_PYTH_CONTRACT_ADDRESS
+              value: "0xA94B7f0465E98609391C623d0560C5720a3f2D33"
+            - name: REST_PORT
+              value: '4201'
+            - name: PROM_PORT
+              value: '8082'
+            - name: BAL_QUERY_INTERVAL
+              value: '60000'
+            - name: READINESS_PORT
+              value: '2001'
+            - name: RETRY_MAX_ATTEMPTS
+              value: '4'
+            - name: RETRY_DELAY_IN_MS
+              value: '250'
+            - name: MAX_MSGS_PER_BATCH
+              value: '1'
+            - name: LOG_LEVEL
+              value: debug

+ 1 - 48
devnet/p2w-terra-relay.yaml

@@ -35,7 +35,7 @@ spec:
       terminationGracePeriodSeconds: 0
       containers:
         - name: p2w-terra-relay
-          image: p2w-terra-relay
+          image: p2w-relay
           ports:
             - containerPort: 8081
               name: prometheus
@@ -86,50 +86,3 @@ spec:
               value: '120'
             - name: LOG_LEVEL
               value: debug
-        - name: p2w-evm-relay
-          image: p2w-terra-relay
-          ports:
-            - containerPort: 8082
-              name: prometheus
-              protocol: TCP
-            - containerPort: 4201
-              name: rest-api
-              protocol: TCP
-          readinessProbe:
-            httpGet:
-              path: '/health'
-              port: 4201
-          command:
-            - node
-            - lib/index.js
-            - "--"
-            - "--evm"
-          env:
-            - name: SPY_SERVICE_HOST
-              value: spy:7072
-            - name: SPY_SERVICE_FILTERS
-              value: '[{"chain_id":1,"emitter_address":"71f8dcb863d176e2c420ad6610cf687359612b6fb392e0642b0ca6b1f186aa3b"}]'
-            - name: EVM_NODE_WEBSOCKET_URL
-              value: "ws://eth-devnet:8545"
-            - name: EVM_WALLET_MNEMONIC_FILE
-              value: "./devnet_mnemonic.txt"
-            - name: EVM_HDWALLET_PATH
-              value: "m/44'/60'/0'/0/1" # Use account with idx 1
-            - name: EVM_PYTH_CONTRACT_ADDRESS
-              value: "0xA94B7f0465E98609391C623d0560C5720a3f2D33"
-            - name: REST_PORT
-              value: '4201'
-            - name: PROM_PORT
-              value: '8082'
-            - name: BAL_QUERY_INTERVAL
-              value: '60000'
-            - name: READINESS_PORT
-              value: '2001'
-            - name: RETRY_MAX_ATTEMPTS
-              value: '4'
-            - name: RETRY_DELAY_IN_MS
-              value: '250'
-            - name: MAX_MSGS_PER_BATCH
-              value: '1'
-            - name: LOG_LEVEL
-              value: debug

+ 0 - 0
third_party/pyth/p2w-terra-relay/.dockerignore → third_party/pyth/p2w-relay/.dockerignore


+ 0 - 0
third_party/pyth/p2w-terra-relay/.env.sample → third_party/pyth/p2w-relay/.env.sample


+ 0 - 0
third_party/pyth/p2w-terra-relay/.gitignore → third_party/pyth/p2w-relay/.gitignore


+ 0 - 0
third_party/pyth/p2w-terra-relay/Design.md → third_party/pyth/p2w-relay/Design.md


+ 1 - 1
third_party/pyth/p2w-terra-relay/Dockerfile.pyth_relay → third_party/pyth/p2w-relay/Dockerfile.pyth_relay

@@ -10,7 +10,7 @@ RUN npm install && npm run build
 
 RUN apk del build-base # No longer needed after EVM build
 
-ARG P2W_RELAY_REL_PATH=third_party/pyth/p2w-terra-relay
+ARG P2W_RELAY_REL_PATH=third_party/pyth/p2w-relay
 
 WORKDIR ${P2W_BASE_PATH}/${P2W_RELAY_REL_PATH} 
 ADD ${P2W_RELAY_REL_PATH} .

+ 0 - 0
third_party/pyth/p2w-terra-relay/Dockerfile.spy_guardian → third_party/pyth/p2w-relay/Dockerfile.spy_guardian


+ 0 - 0
third_party/pyth/p2w-terra-relay/README.md → third_party/pyth/p2w-relay/README.md


+ 0 - 0
third_party/pyth/p2w-terra-relay/package-lock.json → third_party/pyth/p2w-relay/package-lock.json


+ 0 - 0
third_party/pyth/p2w-terra-relay/package.json → third_party/pyth/p2w-relay/package.json


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/helpers.ts → third_party/pyth/p2w-relay/src/helpers.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/index.ts → third_party/pyth/p2w-relay/src/index.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/listen.ts → third_party/pyth/p2w-relay/src/listen.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/promHelpers.ts → third_party/pyth/p2w-relay/src/promHelpers.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/relay/evm.ts → third_party/pyth/p2w-relay/src/relay/evm.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/relay/iface.ts → third_party/pyth/p2w-relay/src/relay/iface.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/relay/terra.ts → third_party/pyth/p2w-relay/src/relay/terra.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/rest.ts → third_party/pyth/p2w-relay/src/rest.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/src/worker.ts → third_party/pyth/p2w-relay/src/worker.ts


+ 0 - 0
third_party/pyth/p2w-terra-relay/tsconfig.json → third_party/pyth/p2w-relay/tsconfig.json