Skip to content

Prep for v1 release. #18

Prep for v1 release.

Prep for v1 release. #18

Workflow file for this run

name: Release
on:
push:
tags:
- "v*"
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Release Build
uses: ./.github/workflows/build.yml
- name: Download build artifacts
id: download
uses: actions/download-artifact@v2
with:
path: ./artifacts
- name: Create MacOS artifact
working-directory: ${{ steps.download.outputs.download-path}}/Diskuto-macos-latest
run: zip -9 release.zip diskuto
- name: Create Linux artifact
working-directory: ${{ steps.download.outputs.download-path}}/Diskuto-ubuntu-20.04
run: zip -9 release.zip diskuto
- name: Create Windows artifact
working-directory: ${{ steps.download.outputs.download-path}}/Diskuto-windows-latest
run: zip -9 release.zip diskuto.exe
# github.ref gives us something like refs/tags/v1.2.3, but we just want v1.2.3
- name: Get tag name
id: tag-name
uses: actions/github-script@v3
with:
result-encoding: string
script: |
return "${{ github.ref }}".replace("refs/tags/", "")
- name: Create the release
id: release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ steps.tag-name.outputs.result }}
prerelease: contains(github.ref, '-rc')
body: |
See [CHANGELOG.md] for release notes.
[CHANGELOG.md]: https://github.com/diskuto/diskuto-api/blob/${{ steps.tag-name.outputs.result }}/CHANGELOG.md
- name: Attach MacOS Release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: ${{ steps.download.outputs.download-path}}/Diskuto-macos-latest/release.zip
asset_name: diskuto-api-macos-${{ steps.tag-name.outputs.result }}.zip
asset_content_type: application/zip
- name: Attach Linux (Ubuntu) Release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: ${{ steps.download.outputs.download-path}}/Diskuto-ubuntu-20.04/release.zip
asset_name: diskuto-api-linux-${{ steps.tag-name.outputs.result }}.zip
asset_content_type: application/zip
- name: Attach Windows Release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.release.outputs.upload_url }}
asset_path: ${{ steps.download.outputs.download-path}}/Diskuto-windows-latest/release.zip
asset_name: diskuto-api-windows-${{ steps.tag-name.outputs.result }}.zip
asset_content_type: application/zip