从Github Actions中添加构建产物到发布版本

16

所以我正在尝试在我的 yml 文件中实现一个版本发布部分,具体地说:我想在我的 yml 文件中添加一个生成的 artifact 到我的发布中。

这是我为一个 Android 应用程序工作的唯一 yml 文件:

name: Android CI

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

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - run: mkdir -p app/build/outputs/apk/release
      - run: echo hello > app/build/outputs/apk/release/app-release-unsigned.apk
      - uses: actions/upload-artifact@v2
        with:
          name: my-artifact
          path: app/build/outputs/apk/release/app-release-unsigned.apk
      - name: set up JDK 1.8
        uses: actions/setup-java@v1
        with:
          java-version: 1.8
      - name: Permition Gradlew
        run: chmod +x gradlew
      - name: Build Gradlew
        run: ./gradlew assembleRelease



1个回答

3
“actions/upload-artifact@v2”动作旨在将工件上传到GitHub Actions工作流程的运行中,而不是将资产添加到GitHub发布中。如果您想将构建资产添加到GitHub发布中,应改为使用在此处描述的“softprops/action-gh-release”示例。我已修改示例以匹配您的特定情况:
on:
  push:
    # Sequence of patterns matched against refs/tags
    tags:
    - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10

name: Upload Release Asset

jobs:
  build:
    name: Upload Release Asset
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2
      - name: Build project
        run: |
          mkdir -p app/build/outputs/apk/release
          echo hello > app/build/outputs/apk/release/app-release-unsigned.apk
      - name: Release with Notes
        uses: softprops/action-gh-release@v1
        with:
          files: app/build/outputs/apk/release/app-release-unsigned.apk
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

你可以根据需要重复最后一步,使用不同的路径添加更多的构件到发布中。

7
注意:actions/upload-release-asset@v1目前没有维护。 - Till Friebe
4
我已经编辑了我的答案,使用了一个仍在积极维护并在已归档的actions/upload-release-asset README中推荐的不同操作。 - jidicula
关于您建议重复上一步以添加更多文件的问题,如果已经创建了发布版本,这个新操作是否有效呢? - unkulunkulu
@unkulunkulu 是的,您可以在创建后继续向发布中添加工件,或者您可以将文件路径数组传递给操作,它将在单个步骤中上传所有文件-请参见https://github.com/softprops/action-gh-release?tab=readme-ov-file#%EF%B8%8F-uploading-release-assets - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接