name: Release assets when push tags on: push: tags: - v[0-9]+.* # roughly matching version numbers - release-* jobs: release: runs-on: ubuntu-latest steps: - name: Get the ref id: get_ref run: echo ::set-output name=VERSION::$(echo $GITHUB_REF | cut -d / -f 3) - uses: actions/checkout@v1 - name: Get yarn cache directory path id: yarn-cache-dir-path run: echo "::set-output name=dir::$(yarn cache dir)" - name: Cache deps uses: actions/cache@v1 id: yarn-cache with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | ${{ runner.os }}-yarn- - name: Retrieve vscode icons uses: actions/checkout@v2 with: repository: 'vscode-icons/vscode-icons' path: 'vscode-icons' - name: Build run: | yarn make build - name: Create Release id: create_release uses: actions/create-release@latest env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ steps.get_ref.outputs.VERSION }} release_name: ${{ steps.get_ref.outputs.VERSION }} draft: false prerelease: false - name: Generate release zip run: | make compress - name: Upload Release Asset id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./dist/Gitako.zip asset_name: Gitako.zip asset_content_type: application/zip