9

我正在尝试使用 github actons 制作一个简单的工作流程,因此当我将例如推送到我的 master 分支时,它会在其中构建代码macOS-latest并在OS 12.4, iPhone 11 Pro Max. 由于很新,教程不完整,有人可以帮我吗?

这就是我现在所拥有的:

name: StyleOn_Workflow

on: [push]

jobs:
  build:

    runs-on: macOS-latest
    strategy:
      matrix:
        destination: ['platform=iOS Simulator,OS=12.4,name=iPhone 11 Pro Max']

    steps:
    - uses: actions/checkout@master
    - name: Build
      run: swift build -v

  test:
      name: Test
      runs-on: macOS-latest
      strategy:
          matrix:
            destination: ['platform=iOS Simulator,OS=12.4,name=iPhone 11 Pro Max']
      steps:
        - name: Checkout
          uses: actions/checkout@master
        - name: Run tests
          run: swift test -v

另外,由于我没有将应用程序部署到应用商店,我该如何进行部署阶段?也许将它合并到主分支?我需要有 3 个阶段,构建、测试和部署

这是我得到的错误:

在此处输入图像描述

4

1 回答 1

10

根据您的问题,我认为您应该使用xcodebuild命令行工具而不是swift buildand swift test

如我所见,您应该使用这样的命令进行构建:

set -o pipefail && xcodebuild clean -scheme $SCHEME -destination $DESTINATION -derivedDataPath $DERIVED_DATA_PATH build-for-testing

并将其用于测试:

set -o pipefail && xcodebuild test-without-building -xctestrun $(find . -type f -name "*.xctestrun") -destination "platform=iOS Simulator,name=$DEVICE" -derivedDataPath $DERIVED_DATA_PATH -enableCodeCoverage YES

请注意,在作业之间您应该上传和下载.xctestrun文件。

您可以在此处找到详细示例。

于 2019-11-22T09:10:08.123 回答