首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >github操作- for循环中的if条件

github操作- for循环中的if条件
EN

Stack Overflow用户
提问于 2022-11-28 14:34:16
回答 1查看 20关注 0票数 1

我正在尝试使用for循环运行下面的工作流程,其中包含if条件,但是操作被解析为一个错误,我的错误是什么?

工作流程:

代码语言:javascript
复制
on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

   

jobs:

  analysis:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Setup Cpp Check
      run: sudo apt-get install cppcheck
    - name: Run Static Analysis
      run: cppcheck . --force --error-exitcode=1
  unit_test:
  #  needs: Scan_changes
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Setup Ruby
      run: sudo apt-get install ruby
    - name: Setup Ceedling
      run: sudo gem install ceedling
    - name: Get changed files
      id: changed-files
      uses: tj-actions/changed-files@v34
      with:
        dir_names: true
        files: |
          code/**
    - name: Unit Test for Changed modules
      run: |
        for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
          if: contains('$file', 'SomeString')
          echo "$file was changed"
        done
    - name: Test
      run: |
        ceedling

输出是

所以我不确定前置循环中if条件的比例是多少

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-28 15:31:45

无效的bash脚本代码。你应该做这样的事情:

代码语言:javascript
复制
    - name: Unit Test for Changed modules
      run: |
        for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
          if [[ $file =~ "SomeString" ]]; then
            echo "$file was changed"
          fi
        done
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74602174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档