相关疑难解决方法(0)

GitHub Actions:如何定位除 master 之外的所有分支?

我希望能够让操作在除 master 之外的任何给定分支上运行。我知道有一个预先构建的filter动作,但我想要的是完全相反的。

更像是 GitLab 的except关键字。由于这不在官方文档中,是否有人准备了一个像样的解决方法?

非常感谢。

git github github-actions

37
推荐指数
2
解决办法
2万
查看次数

在 GitHub Action 中,如何根据上一步的输出来条件化步骤?

基于提交消息构建 GitHub 操作 我尝试根据提交消息是否包含特定字符串来制定步骤,将其设置为变量,然后在下一步中检查条件。

我目前的行动实施有效:

name: Smoke Test
on:
  push:
    branches:
      - main

permissions:
  contents: read
  issues: write

jobs:
  smoking:
    runs-on: [ubuntu-latest]
    steps:
      - name: Run smoke tests
        if: ${{ !contains(github.event.head_commit.message, 'smoke_test') }}
        run: |
          echo 'Smoke Test not requested'
          exit 1
  stuff:
    needs: smoking
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: JasonEtco/create-an-issue@v2
        env:
          GITHUB_TOKEN: ${{ secrets.TOKEN }}
        with:
          filename: .github/ISSUE_TEMPLATE/smoke-test.md
        id: create-issue
      - run: 'echo Created issue number ${{ steps.create-issue.outputs.number }}'
      - run: 'echo Created ${{ steps.create-issue.outputs.url }}' …
Run Code Online (Sandbox Code Playgroud)

github github-actions building-github-actions

14
推荐指数
1
解决办法
3万
查看次数

GitHub Actions - 如何在作业级别使用环境变量?

我想在工作级别使用环境变量。有办法做到吗?

env:
  stageEnv: UAT

jobs:
  name: Upload Build
  if: ${{ env.stageEnv == 'UAT' }}
  steps:
    ....
Run Code Online (Sandbox Code Playgroud)

我收到无法识别的命名值:'env'错误。尝试了 $stageEnv 和 ${{ env.stageEnv }}

注意:当我在“步骤”内访问时它可以工作,但希望可以在“作业”级别访问它。

github-actions

7
推荐指数
1
解决办法
2349
查看次数