簡體   English   中英

如果我們使用矩陣,GitHub 動作中的運行是否會被覆蓋?

[英]Does runs-on in GitHub actions gets overridden if we use matrix?

我是 GitHub Actions 的新手,並且正在按照以下在線課程嘗試矩陣構建:

name: Node.js CI

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      fail-fast: false
      matrix:
        node-version: [10.x, 12.x]
        os: [ubuntu-latest, windows-2016]

    steps:
      - uses: actions/checkout@v2
      - name: npm install and build webpack
        run: |
          npm install
          npm run build

在那門課程中,它是runs-on: ubuntu-latest ,但矩陣仍然生效。

那么即使我沒有明確地說runs-on: ${{ matrix.os }}如果定義了矩陣,runs-on 也會被覆蓋嗎?

謝謝

在這里,您使用矩陣定義了策略,但您沒有在任何地方使用它,因此不會考慮那些node-versionos值。

因此,它不會覆蓋運行器,因為您沒有指定矩陣中的os字段應用作作業runs-on字段。

如果你想使用它,你需要先在某處指定${{ matrix.os }} 所以它不會在這里覆蓋你的跑步者,你必須指定runs-on: ${{ matrix.os }}

當您實施工作流程時,相同的作業將運行 4 次,因為它將檢測strategy (兩次用於不同的node-version ;兩次用於不同的os )但具有相同的步驟和作業配置,因為沒有使用矩陣那里的價值觀。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM