RASA X - Kubernetes Cluster Unreachable Error using Github Actions

Hi,

I followed the tutorial on deploying Rasa X using Helm Charts. I also implemented my custom action server but when I try to use Github actions it gives me the following error:

Error: Kubernetes cluster unreachable: Get "http://localhost:8080/version?timeout=32s": dial tcp [::1]:8080: connect: connection refused
Error: Process completed with exit code 1.`

Can somebody explain to me why this is not working?

I thank you in advance! :smiley:

EDIT: I am using the latest versions of Rasa and Rasa-X and the deployment is on a Google Kubernetes Engine.

@tmbo @tczekajlo @stephens do you have any ideas about this as well? This is when I include a Helm upgrade command in the action workflow.

I hope you can help me! :slight_smile:

Hi,

I understand that you have an external Kubernetes cluster and you execute a command in a GitHub Action workflow.

It looks like you have to get the GKE credentials in order to have access to your cluster. Here you can find an example of how to deal with GKE and GH Actions setup-gcloud/gke.yml at master ยท google-github-actions/setup-gcloud ยท GitHub

Hi @tczekajlo,

Thank you for your reply, I thought it had to do with my credentials but when I implemented it I still get the same error:

- name: Set gcloud credentials
  uses: actions-hub/gcloud@master
  env:
    PROJECT_ID: XXX
    APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
  with:
    args: container clusters get-credentials XXX --zone europe-west2-a --project XXX

- name: Update Helm chart
  run: |
    helm upgrade --install --namespace XXX --reuse-values \
                --set app.name=${{ steps.action_server.outputs.docker_image_name }} \
                --set app.tag=${{ steps.action_server.outputs.docker_image_tag }} XXX rasa-x/rasa-x

(EDIT: This is only the bottom part of the YAML file, the general part works)

(EDIT 2: I get this result for the gcloud command: kubeconfig entry generated for XXX)

I deleted some variables for privacy reasons (XXX) with these commands I still get the same error.

Am I doing something wrong?

I deleted some variables for privacy reasons (XXX) with these commands I still get the same error.

What error do you see?

@tczekajlo The same as before:

Error: Kubernetes cluster unreachable: Get "http://localhost:8080/version?timeout=32s": dial tcp [::1]:8080: connect: connection refused
Error: Process completed with exit code 1.

Apparently a lot of information is missing from the tutorial but I got it up and running now! :smiley: Thank you for your help.

For Google Kubernetes Engine I needed to add the following step BEFORE the action server building step:

#Setup GcloudCLI
- uses: GoogleCloudPlatform/github-actions/setup-gcloud@master
  with:
    service_account_key: <YOUR GOOGLE APPLICATION CREDENTIALS>
    project_id: <YOUR PROJECT ID>

# Configure Docker to use the gcloud command-line tool as a credential
# helper for authentication
- run: |-
    gcloud --quiet auth configure-docker

- run: |-
    gcloud components install kubectl

- run: |-
    gcloud container clusters get-credentials <YOUR-CLUSTER-NAME> --zone <YOUR-ZONE> --project <YOUR-PROJECT-ID>