|
5 | 5 | tags: |
6 | 6 | - 'v*' |
7 | 7 |
|
| 8 | +permissions: |
| 9 | + contents: write |
| 10 | + packages: write |
| 11 | + |
8 | 12 | env: |
9 | 13 | CARGO_TERM_COLOR: always |
10 | 14 |
|
@@ -33,41 +37,30 @@ jobs: |
33 | 37 |
|
34 | 38 | - name: Create Release |
35 | 39 | id: create_release |
36 | | - uses: actions/create-release@v1 |
37 | 40 | env: |
38 | 41 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
39 | | - with: |
40 | | - tag_name: ${{ github.ref }} |
41 | | - release_name: Release ${{ github.ref }} |
42 | | - body: | |
43 | | - ## What's Changed |
44 | | - ${{ steps.changelog.outputs.changelog }} |
45 | | -
|
46 | | - ## Installation |
47 | | -
|
48 | | - ### macOS/Linux |
49 | | - ```bash |
50 | | - curl -fsSL https://get.kanuni.dev | sh |
51 | | - ``` |
52 | | -
|
53 | | - ### Homebrew |
54 | | - ```bash |
55 | | - brew install v-lawyer/tap/kanuni |
56 | | - ``` |
57 | | -
|
58 | | - ### npm |
59 | | - ```bash |
60 | | - npm install -g kanuni-cli |
61 | | - ``` |
62 | | -
|
63 | | - ### Cargo |
64 | | - ```bash |
65 | | - cargo install kanuni |
66 | | - ``` |
67 | | -
|
68 | | - See full installation instructions in the [documentation](https://docs.v-lawyer.ai/docs/cli/installation). |
69 | | - draft: false |
70 | | - prerelease: false |
| 42 | + run: | |
| 43 | + gh release create "${{ github.ref }}" \ |
| 44 | + --title "Release v${{ steps.get_version.outputs.version }}" \ |
| 45 | + --notes "## Installation |
| 46 | +
|
| 47 | + ### Install via npm |
| 48 | + \`\`\`bash |
| 49 | + npm install -g @v-lawyer/kanuni |
| 50 | + \`\`\` |
| 51 | +
|
| 52 | + ### Install via Cargo |
| 53 | + \`\`\`bash |
| 54 | + cargo install kanuni |
| 55 | + \`\`\` |
| 56 | +
|
| 57 | + ### Download binaries |
| 58 | + See Assets below for platform-specific binaries. |
| 59 | +
|
| 60 | + ## What's New |
| 61 | + See [CHANGELOG.md](https://github.com/v-lawyer/kanuni-cli/blob/main/CHANGELOG.md) for details." |
| 62 | +
|
| 63 | + echo "upload_url=$(gh release view "${{ github.ref }}" --json uploadUrl -q .uploadUrl)" >> $GITHUB_OUTPUT |
71 | 64 |
|
72 | 65 | build-release: |
73 | 66 | name: Build Release |
@@ -144,25 +137,15 @@ jobs: |
144 | 137 | shasum -a 256 ${{ matrix.name }}.tar.gz > ${{ matrix.name }}.tar.gz.sha256 |
145 | 138 | fi |
146 | 139 |
|
147 | | - - name: Upload Release Asset (Archive) |
148 | | - uses: actions/upload-release-asset@v1 |
| 140 | + - name: Upload Release Assets |
149 | 141 | env: |
150 | 142 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
151 | | - with: |
152 | | - upload_url: ${{ needs.create-release.outputs.upload_url }} |
153 | | - asset_path: ${{ matrix.os == 'windows-latest' && format('{0}.zip', matrix.name) || format('{0}.tar.gz', matrix.name) }} |
154 | | - asset_name: ${{ matrix.os == 'windows-latest' && format('{0}.zip', matrix.name) || format('{0}.tar.gz', matrix.name) }} |
155 | | - asset_content_type: ${{ matrix.os == 'windows-latest' && 'application/zip' || 'application/gzip' }} |
156 | | - |
157 | | - - name: Upload Release Asset (Checksum) |
158 | | - uses: actions/upload-release-asset@v1 |
159 | | - env: |
160 | | - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
161 | | - with: |
162 | | - upload_url: ${{ needs.create-release.outputs.upload_url }} |
163 | | - asset_path: ${{ matrix.os == 'windows-latest' && format('{0}.zip.sha256', matrix.name) || format('{0}.tar.gz.sha256', matrix.name) }} |
164 | | - asset_name: ${{ matrix.os == 'windows-latest' && format('{0}.zip.sha256', matrix.name) || format('{0}.tar.gz.sha256', matrix.name) }} |
165 | | - asset_content_type: text/plain |
| 143 | + run: | |
| 144 | + if [[ "${{ matrix.os }}" == "windows-latest" ]]; then |
| 145 | + gh release upload "${{ github.ref }}" "${{ matrix.name }}.zip" "${{ matrix.name }}.zip.sha256" |
| 146 | + else |
| 147 | + gh release upload "${{ github.ref }}" "${{ matrix.name }}.tar.gz" "${{ matrix.name }}.tar.gz.sha256" |
| 148 | + fi |
166 | 149 |
|
167 | 150 | publish-crate: |
168 | 151 | name: Publish to crates.io |
|
0 commit comments