| name: Windows Release | |
| permissions: | |
| contents: write | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| name: | |
| description: 'reason' | |
| required: false | |
| push: | |
| tags: | |
| - '*' | |
| - '!*-alpha*' | |
| jobs: | |
| release: | |
| runs-on: windows-latest | |
| defaults: | |
| run: | |
| shell: bash | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v3 | |
| with: | |
| fetch-depth: 0 | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Build Frontend | |
| env: | |
| CI: "" | |
| run: | | |
| cd web | |
| bun install | |
| DISABLE_ESLINT_PLUGIN='true' VITE_REACT_APP_VERSION=$(git describe --tags) bun run build | |
| cd .. | |
| - name: Set up Go | |
| uses: actions/setup-go@v3 | |
| with: | |
| go-version: '>=1.18.0' | |
| - name: Build Backend | |
| run: | | |
| go mod download | |
| go build -ldflags "-s -w -X 'one-api/common.Version=$(git describe --tags)'" -o one-api.exe | |
| - name: Release | |
| uses: softprops/action-gh-release@v1 | |
| if: startsWith(github.ref, 'refs/tags/') | |
| with: | |
| files: one-api.exe | |
| draft: true | |
| generate_release_notes: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |