如何解决您如何设置KUBECONFIG从github操作部署连接到Azure Kubernetes服务?
我正在尝试设置部署管道,以通过github操作配置Azure Kubernetes服务。我已经在github操作市场上找到了用于配置各种步骤的步骤,但是我无法将它们的任何组合正确地工作。我不断收到错误消息
加载配置文件时出错 “ / home / runner / work / _temp / kubeconfig_xxxx”:yaml:找不到 预期密钥
或类似的错误提示
加载配置文件时出错,无法获取版本/种类; json解析错误:json:无法将数组解组为struct类型的Go值{APIVersion字符串json:“ apiVersion,omitempty;类型的字符串json:\ kind,omitempty \}
取决于我如何尝试从Terraform传递kube_config。如果我在本地运行相同的环境,那么它可以工作,因此我假设在github动作上设置它的方式有问题。
这是我的部署文件:
name: Deploy
on:
workflow_dispatch:
inputs:
<redacted>
jobs:
deploy:
name: Deploy
runs-on: ubuntu-18.04
env:
<redacted>
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v2
- uses: azure/login@v1.1
with:
creds: ${{ <redacted> }}
- name: Generate Terraform backend
uses: azure/cli@v1.0.3
with:
azcliversion: 2.11.1
inlineScript: |
<redacted>
- uses: hashicorp/setup-terraform@v1.1.0
with:
terraform_version: 0.13.0
- name: Terraform Init
run: |
terraform init
- name: Terraform Plan
run: |
terraform plan \
<redacted>
-out=tfplan
- name: Terraform Apply
run: |
terraform apply \
-auto-approve \
tfplan
- uses: azure/setup-kubectl@v1
with:
version: 'v1.19.2'
- uses: azure/setup-helm@v1
with:
version: 'v3.3.1'
- name: Save Config
run: |
terraform output kube_config > ./aks.yml
- name: Set Env
run: |
echo ::set-env name=XXX::$(cat ./aks.yml)
- uses: azure/k8s-set-context@v1
with:
method: kubeconfig
kubeconfig: "${{ env.XXX }}"
- name: Test
run: |
kubectl get pods -o wide
我尝试使用bash一步设置KUBECONFIG并获取pod,但它也失败了。有什么想法我想念的吗?预先感谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。