HugoByte / polkadot-kurtosis-package

Polkadot Kurtosis Package
Apache License 2.0
7 stars 3 forks source link

The package stops at para-slot-registration #195

Open MuhammedIrfan opened 9 months ago

MuhammedIrfan commented 9 months ago

Overview

The package doesn't work on kubernetes due to the start and stop service used for one-off task used in https://github.com/HugoByte/polkadot-kurtosis-package/blob/main/package_io/build-spec.star#L30

Steps to Reproduce

Steps to reproduce the behavior:

  1. Setup kurtosis in kubernetes
  2. Run the package using
    kurtosis run github.com/hugobyte/polkadot-kurtosis-package '{ "chain_type": "localnet", "relaychain": { "name": "rococo-local", "nodes": [ { "name": "alice", "node_type": "validator", "prometheus": false }, { "name": "bob", "node_type": "full", "prometheus": true } ] }, "parachains": [ { "name":"frequency", "nodes": [ { "name": "alice", "node_type": "validator", "prometheus": false } ] } ], "explorer": true }'
  3. The execution stops with error
    DEBU[2024-01-26T04:39:57Z][api_container_service.go:runStarlark] Received response line from Starlark runner: 'error:{execution_error:{error_message:"An error occurred executing instruction (number 8) at github.com/hugobyte/polkadot-kurtosis-package/package_io/build-spec.star[19:31]:\nadd_service(name=\"para-slot-registration\", config=ServiceConfig(image=\"hugobyte/parachain-node-modules\", files={\"/app\": \"configs\", \"/build\": \"javascript\"}, entrypoint=[\"/bin/sh\"]))\n --- at /home/circleci/project/core/server/api_container/server/startosis_engine/startosis_executor.go:157 (sendErrorAndFail) ---\nCaused by: Unexpected error occurred starting service 'para-slot-registration'\n --- at /home/circleci/project/core/server/api_container/server/startosis_engine/kurtosis_instruction/add_service/add_service.go:163 (AddServiceCapabilities.Execute) ---\nCaused by: An error occurred creating pod 'para-slot-registration' using image 'hugobyte/parachain-node-modules'\n --- at /home/circleci/project/container-engine-lib/lib/backend_impls/kubernetes/kubernetes_kurtosis_backend/user_services_functions/start_user_services.go:421 (createStartServiceOperation.func1) ---\nCaused by: An error occurred waiting for pod 'para-slot-registration' to become available\n --- at /home/circleci/project/container-engine-lib/lib/backend_impls/kubernetes/kubernetes_manager/kubernetes_manager.go:1159 (KubernetesManager.CreatePod) ---\nCaused by: Expected state of pod 'para-slot-registration' to arrive at 'Running' but the pod instead landed in 'Succeeded' with the following state:\n>>>>>>>>>>>>>>>>>>>>>>>>>> Pod para-slot-registration <<<<<<<<<<<<<<<<<<<<<<<<<<\nContainer Statuses: - user-service-container (docker.io/hugobyte/parachain-node-modules:latest): TERMINATED with exit code 0 - \n\n-------------------- Container user-service-container Logs --------------------\n\n------------------ End Container user-service-container Logs ---------------------\n>>>>>>>>>>>>>>>>>>>>>>>> End Pod para-slot-registration <<<<<<<<<<<<<<<<<<<<<<<<<<<\n --- at /home/circleci/project/container-engine-lib/lib/backend_impls/kubernetes/kubernetes_manager/kubernetes_manager.go:1871 (KubernetesManager.waitForPodAvailability) ---"}}' 

Expected Behavior

The execution should complete without the error.

Additional Context

The issue can be due to use of plan.add_service for one-off task instead of plan.run_sh as discussed in https://github.com/kurtosis-tech/kurtosis/issues/2089

shanithkk commented 9 months ago

Hi @MuhammedIrfan, the issue is resolve in PR #198