{"id":19376642,"url":"https://github.com/gavinray97/garden-eks-deploy-action","last_synced_at":"2026-06-11T22:31:22.673Z","repository":{"id":65157708,"uuid":"262849022","full_name":"GavinRay97/garden-eks-deploy-action","owner":"GavinRay97","description":"Github Action for deploying Garden projects to AWS EKS","archived":false,"fork":false,"pushed_at":"2020-05-10T18:54:49.000Z","size":4,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-16T10:56:53.410Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GavinRay97.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-10T18:21:35.000Z","updated_at":"2021-08-06T15:24:29.000Z","dependencies_parsed_at":"2023-01-04T12:33:29.734Z","dependency_job_id":null,"html_url":"https://github.com/GavinRay97/garden-eks-deploy-action","commit_stats":{"total_commits":4,"total_committers":1,"mean_commits":4.0,"dds":0.0,"last_synced_commit":"4dc86d9f8c71d867f7fa7c1ab7b923cd0736f39c"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GavinRay97%2Fgarden-eks-deploy-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GavinRay97%2Fgarden-eks-deploy-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GavinRay97%2Fgarden-eks-deploy-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GavinRay97%2Fgarden-eks-deploy-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GavinRay97","download_url":"https://codeload.github.com/GavinRay97/garden-eks-deploy-action/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240508819,"owners_count":19813043,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T08:44:41.184Z","updated_at":"2026-06-11T22:31:22.638Z","avatar_url":"https://github.com/GavinRay97.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Garden EKS Deploy Action\n\nThis Action:\n\n- Downloads `kubectl`\n- Uses the `garden-aws` container image to provide `garden` and `aws` CLI binaries\n- Configures access to AWS through your access key and secret key\n- Generates a `KUBECONFIG` for the desired cluster, and exports it to `PATH`\n\nAfter doing this, you have the ability to interact with your cluster through `kubectl`, the AWS CLI, and `garden` like you would locally. You need to implement the final steps of navigating to the directory of your project containing the root `garden.yml` and run `garden deploy --env=your-aws-remote-name`\n\nThe required environment variables are:\n\n- `AWS_REGION`\n- `EKS_CLUSTER_NAME`\n- `KUBECONFIG_CLUSTER_NAME` (see description below in example usage)\n\nAnd the required secrets are:\n\n- `AWS_ACCESS_KEY_ID`\n- `AWS_SECRET_ACCESS_KEY`\n\n```yaml\nname: Deploy\n\non:\n  push:\n    branches:\n      - develop\n      - 'release/**'\n\nenv:\n  AWS_REGION: us-east-2\n  EKS_CLUSTER_NAME: my-eks-cluster\n  # The value for \"context\" variable in project-level \"garden.yml\" for AWS\n  # This could be identical to EKS_CLUSTER_NAME, or different if your local KUBECONFIG has an alias,\n  # such as when creating clusters with eksctl\n  #\n  # Example:\n  #   - name: kubernetes\n  #   environments: [aws]\n  #   context: my-eks-cluster\n  #\n  # This is due to this line:\n  # aws eks update-kubeconfig --region ${aws_region} --name ${cluster_name} --alias ${kubeconfig_cluster_name}\n  # As EKS clusters come with default names like \"arn:aws:eks:us-east-2:123098607654:cluster/my-cluster\"\n  # So you may have either aliased it in KUBECONFIG and your \"garden.yml\", or created with eksctl which gives different names\n  KUBECONFIG_CLUSTER_NAME: my-eks-cluster\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v2\n      - name: Deploy\n        uses: GavinRay97/garden-eks-deploy-action@v1.0\n        env:\n          aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}\n          aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}\n          aws_region: $AWS_REGION\n          cluster_name: $EKS_CLUSTER_NAME\n          kubeconfig_cluster_name: $KUBECONFIG_CLUSTER_NAME\n        with:\n          # CD to the location of your project-level \"garden.yml\", if it's not in root\n          # Export KUBECONFIG\n          # Run the deploy\n          args: |\n            cd app\n            export KUBECONFIG=/github/home/.kube/config\n            garden deploy --env=aws\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinray97%2Fgarden-eks-deploy-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgavinray97%2Fgarden-eks-deploy-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgavinray97%2Fgarden-eks-deploy-action/lists"}