I am creating a GitHub workflow action, to deploy the build into an integration cluster and for that first, I wanted to create a namespace using kubectl, but I am getting an error: error: You must be logged in to the server (Unauthorized)
Here is my action.yaml snippet
        uses: cancue/eks-action@v0.0.2
        env:
          aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws_region: $AWS_REGION
          cluster_name: $EKS_CLUSTER_NAME
          kubeconfig: ${{ secrets.INTEGRATION_CLUSTER_SECRETS }}
        with:
          args: |
             kubectl create ns namespace:pr#${{ github.sha }}I am new to writing action workflows. Thanks in advance.
you can try out the
- name: verify deployment
      uses: kodermax/kubectl-aws-eks@master
      env:
        KUBE_CONFIG_DATA: ${{ secrets.KUBE_CONFIG_DATA }}
      with:
        args: create ns <namespace-name>however your config looks good but makesure you have added the proper data for kubeconfig.
Also, check access_key and secret_key you are using have the access to EKS cluster. 
Example : https://github.com/marketplace/actions/kubectl-aws-eks
Quick fix :
Once your access & secret set in environment use the command to featch the config from AWS, and you can remove adding the config file in Gitaction seceret.
aws eks update-kubeconfig --region ap-south-1 --name <Cluster name>Secrets
KUBE_CONFIG_DATA – required: A base64-encoded kubeconfig file with credentials for Kubernetes to access the cluster. You can get it by running the following command:
cat $HOME/.kube/config | base64