Skip to content

Release packages

Release packages #13

Workflow file for this run

name: Release packages
on:
# 手動ビルド
workflow_dispatch:
# tagがpushされた場合
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
jobs:
release:
runs-on: ubuntu-latest
outputs:
upload_url: ${{ steps.create_release.outputs.upload_url }}
steps:
- name: Create release on GitHub
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: latest #${{ github.ref_name }}
release_name: latest #${{ github.ref_name }}
body: If you want, please see tests [tests](https://github.com/u1and0/jtr/blob/master/tests)
draft: false
prerelease: false
build:
needs: release
runs-on: ${{ matrix.vm }}
strategy:
matrix:
include:
- name: linux
vm: ubuntu-latest
# - name: macosx
# vm: macos-latest
# - name: windows
# vm: windows-latest
steps:
- name: Setup repo
uses: actions/checkout@v4
- name: Cache Nim resources
id: cache_nim
uses: actions/cache@v3
with:
path: |
~/.choosenim
~/.nimble
key: nimcaches--${{ matrix.vm }}
- uses: jiro4989/setup-nim-action@v1
with:
nim-version: 2.0.x
- name: Run main
run: nimble build -d:release --verbose
- name: Package(unix)
if: runner.os != 'Windows'
uses: thedoctor0/[email protected]
with:
type: tar
filename: jtr-${{ matrix.name }}.tar.gz
exclusions: '*.git*'
- name: Package(win)
if: runner.os == 'Windows'
uses: thedoctor0/[email protected]
with:
type: zip
directory: jtr-${{ github.ref_name }}/
filename: ../jtr-${{ github.ref_name }}_${{ matrix.name }}.zip
- name: Upload to release(unix)
if: runner.os != 'Windows'
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.release.outputs.upload_url }}
asset_path: jtr-${{ github.ref_name }}_${{ matrix.name }}.tar.gz
asset_name: jtr-${{ github.ref_name }}_${{ matrix.name }}.tar.gz
asset_content_type: application/gzip
# - name: Upload to release(win)
# if: runner.os == 'Windows'
# uses: actions/upload-release-asset@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ needs.release.outputs.upload_url }}
# asset_path: jtr-${{ github.ref_name }}_${{ matrix.name }}.zip
# asset_name: jtr-${{ github.ref_name }}_${{ matrix.name }}.zip
# asset_content_type: application/zip