diff --git a/.github/workflows/draft-release.yml b/.github/workflows/draft-release.yml new file mode 100644 index 00000000..266314c8 --- /dev/null +++ b/.github/workflows/draft-release.yml @@ -0,0 +1,38 @@ +name: draft-release + +on: + push: + tags: '*' + +env: + CARGO_TERM_COLOR: always + +jobs: + release: + runs-on: windows-latest + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup npm + uses: actions/setup-node@v4 + - name: Setup rust + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + target: x86_64-pc-windows-msvc + override: true + + - name: Build with Cargo + run: cargo build --release --target=x86_64-pc-windows-msvc + + - name: Pack the client + run: cargo xtask package . + + - name: Create draft release + uses: ncipollo/release-action@v1 + with: + artifacts: "*.vsix" + draft: true + generateReleaseNotes: true \ No newline at end of file diff --git a/xtask/README.md b/xtask/README.md index 2c98dd73..708d7ee4 100644 --- a/xtask/README.md +++ b/xtask/README.md @@ -2,4 +2,6 @@ This crate provides automation scripts for the repo. They are OS-agnostic as they don't directly use any specific shell. All you need is the `cargo xtask` command. +Beware, these tasks are used in github workflows, so make sure any breaking changes are also reflected in `.github/workflows`. + More about xtask workflow [here](https://github.com/matklad/cargo-xtask). \ No newline at end of file