Github 操作失败

Posted

技术标签:

【中文标题】Github 操作失败【英文标题】:Github Actions Failing 【发布时间】:2021-10-01 14:34:19 【问题描述】:

直到昨天,Github Actions 还在我的存储库中工作。我没有对 .github/workflows/dev.yml 文件或 DockerFile 进行任何更改。

但是,在最近的推送中,我的 Github Actions 突然因错误而失败

设置、构建、发布和部署

Can't find 'action.yml', 'action.yaml' or 'Dockerfile' under
'/home/runner/work/_actions/GoogleCloudPlatform/github-actions/master/setup-gcloud'.
Did you forget to run actions/checkout before running your local
action?

我可以知道如何解决这个问题

这是我正在使用的示例 .yml 文件。

name: Release to Development

on:
  push:
    branches:
      - 'master'
jobs:
  setup-build-publish-deploy:
    name: Setup, Build, Publish, and Deploy
    runs-on: ubuntu-latest
    steps:

    - name: Checkout
      uses: actions/checkout@v2

    # Setup gcloud CLI
    - uses: GoogleCloudPlatform/github-actions/setup-gcloud@master
      with:
        version: '270.0.0'
        service_account_email: $ secrets.GCLOUD_EMAIL_DEV 
        service_account_key: $ secrets.GCLOUD_AUTH_DEV 

    # Configure docker to use the gcloud command-line tool as a credential helper
    - run: |
        # Set up docker to authenticate
        # via gcloud command-line tool.
        gcloud auth configure-docker

    # Build the Docker image
    - name: Build
      run: |
        docker build -t "$REGISTRY_HOSTNAME"/"$GKE_PROJECT"/"$IMAGE":"$GITHUB_SHA" \
          --build-arg GITHUB_SHA="$GITHUB_SHA" \
          --build-arg GITHUB_REF="$GITHUB_REF" .

    # Push the Docker image to Google Container Registry
    - name: Publish
      run: |
        docker push $REGISTRY_HOSTNAME/$GKE_PROJECT/$IMAGE:$GITHUB_SHA

    # Set up kustomize
    - name: Set up Kustomize
      run: |
        curl -o kustomize --location https://github.com/kubernetes-sigs/kustomize/releases/download/v3.1.0/kustomize_3.1.0_linux_amd64
        chmod u+x ./kustomize

    # Deploy the Docker image to the GKE cluster
    - name: Deploy
      run: |

这是错误的 sn-p。

【问题讨论】:

看起来每个人都在发生。 【参考方案1】:

我通过将 uses 值更改为来修复它

uses: google-github-actions/setup-gcloud@master

【讨论】:

不错!自己打这个就行了。似乎文档已过时:cloud.google.com/community/tutorials/… 我将编辑此答案以在末尾包含“@v0”,因为 Google 将在今年某个时候将其基本分支重命名为“main”,并且所有使用“@master”的工作流程都将中断。来源:github.com/google-github-actions/setup-gcloud#-notice【参考方案2】:

有一些变化请访问这里了解详情https://github.com/google-github-actions/setup-gcloud#use-google-github-actionssetup-gcloud

步骤: 编号:gcloud 用途:google-github-actions/setup-gcloud@master

或 步骤: id:部署 用途:google-github-actions/deploy-cloudrun@main

【讨论】:

【参考方案3】:

如果有人想知道为什么这不再起作用,请查看此通知:https://github.com/google-github-actions/setup-gcloud#-notice

现在每个操作都有自己的存储库,因此您必须更改在 yaml 中引用 Google Cloud Platform 操作的方式:

steps:
 - id: gcloud
-  uses: GoogleCloudPlatform/github-actions/setup-gcloud@master
+  uses: google-github-actions/setup-gcloud@master

【讨论】:

以上是关于Github 操作失败的主要内容,如果未能解决你的问题,请参考以下文章

赛普拉斯 Github 操作失败

Github 操作 ci cd 失败

Maven 测试在本地运行但在 github 操作中失败

部署到 DigitalOcean 时 GitHub 操作失败

az login 从 github 操作任务失败

将私有 github 存储库设置为 docker 中 package.json 中的依赖项在 github 操作中生成失败