如何在另一个工作流中下载构件/发布资产 [英] How to download artifact/release-asset in another workflow

查看:12
本文介绍了如何在另一个工作流中下载构件/发布资产的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Github Actions是否可以在发布分支上载用于提交的生成项目,然后让另一个工作流使用该项目下载&;?

name: Deploy release to UAT & archive artifact
on:
  release:
    types: [published]
jobs:
  package:
    name: package and archive
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: '12'
      - name: serverless package
        uses: serverless/github-action@master
        with:
          args: package --stage=prod
      - name: Upload Release Asset
        uses: actions/upload-release-asset@v1
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          upload_url: ${{ github.event.release.upload_url }}
          asset_path: .serverless
          asset_name: release-asset-${{ github.event.release.name }}.zip
          asset_content_type: application/zip
      - name: Upload Artifact
        uses: actions/upload-artifact@v2
        with:
          name: release-artifact-${{ github.event.release.name }}
          path: .serverless

...但是如何下载资产/构件呢?我认为up/download-artifact仅用于从相同的工作流中使用,并且似乎没有用于下载发布资产的操作。

name: Deploy to production
on:
  workflow_dispatch:
    inputs:
      release:
        description: Name of release to deploy
        required: true
        default: v1.0.0

jobs:
  deploy:
    name: deploy
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-node@v1
      with:
        node-version: '12'
    - run: npm ci --only=prod
    - name: Download the release artifact
      uses: actions/download-artifact@v2
      with:
        name: release-${{ github.event.inputs.release }}
        path: .serverless
    - name: serverless deploy
      uses: serverless/github-action@master
      with:
        args: deploy --stage=prod --package=.serverless
      env:
        AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
        AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}

推荐答案

您可以使用download-workflow-artifact action

这篇关于如何在另一个工作流中下载构件/发布资产的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆