filename=$(find . -type f \( -iname \*.deb -o -iname \*.rpm \) -exec basename {} \;)
sha256sum $filename > $filename.$SHA_EXT
echo "::set-output name=tag::$tag"
echo "::set-output name=filepath::$CPACK_OUTPUT_DIR/$filename"
echo "::set-output name=shafilepath::$CPACK_OUTPUT_DIR/$filename.$SHA_EXT"
shell: bash
- name: upload release asset
run: |
./ci/scripts/upload-github-release-asset.sh github_token=${{ secrets.GITHUB_TOKEN }} repo=${{ github.repository }} tag=${{ steps.vars.outputs.tag }} filepath=${{ steps.vars.outputs.filepath }}
./ci/scripts/upload-github-release-asset.sh github_token=${{ secrets.GITHUB_TOKEN }} repo=${{ github.repository }} tag=${{ steps.vars.outputs.tag }} filepath=${{ steps.vars.outputs.shafilepath }}
上述残缺的 workflow 文件见 release.yaml。
https://github.com/vesoft-inc/nebula/blob/master/.github/workflows/release.yaml
5. 命令GitHub Action 为 workflow 提供了一些 命令 方便在 shell 中停止调用,来更精细地控制和调试每个步骤的执行。常用的命令如下:
set-output
有时在 job 的 steps 之间需求传递一些结果,这时就可以经过 echo "::set-output name=output_name::output_value" 的命令方式将想要输入的 output_value 值设置到 output_name 变量中。
在接上去的 step 中,可以经过 $ {{steps.step_id.outputs.output_name}} 的方式援用上述的输入值。
上节中上传 asset 的 job 中就运用了上述的方式来传递文件称号。一个步骤可以经过屡次执行上述命令来设置多个输入。
set-env
同 set-output 一样,可以为后续的步骤设置环境变量。语法:echo "::set-env name={name}::{value}" 。
add-path
将某途径参加到 PATH 变量中,为后续步骤运用。语法:echo "::add-path::{path}" 。
6. Self-Hosted Runner (责任编辑:admin)