windows_continuous #11675
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: windows_continuous | |
on: | |
schedule: | |
- cron: "10 3 * * *" | |
push: | |
branches: | |
- main | |
paths: | |
- "**/*.rs" | |
- "**/Cargo.lock" | |
- "**/Cargo.toml" | |
- ".github/workflows/gen_windows_continuous.yml" | |
- "assets/fonts/**/*" | |
- "assets/icon/*" | |
- "assets/windows/**/*" | |
- "ci/deploy.sh" | |
- "ci/windows-installer.iss" | |
jobs: | |
build: | |
runs-on: "windows-latest" | |
env: | |
BUILD_REASON: "Schedule" | |
steps: | |
- name: "checkout repo" | |
uses: actions/checkout@v3 | |
with: | |
submodules: "recursive" | |
- name: "Install Rust" | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
target: "x86_64-pc-windows-msvc" | |
- name: "Cache cargo" | |
uses: Swatinem/rust-cache@v2 | |
with: | |
key: "windows-x86_64-pc-windows-msvc-2-${{ runner.os }}-cargo" | |
- name: "Build (Release mode)" | |
shell: cmd | |
run: | | |
PATH C:\Strawberry\perl\bin;%PATH% | |
cargo build --all --release | |
- name: "Install cargo-nextest from Cargo" | |
uses: baptiste0928/cargo-install@v2 | |
with: | |
crate: "cargo-nextest" | |
cache-key: "windows" | |
- name: "Test (Release mode)" | |
shell: bash | |
run: "cargo nextest run --all --release --no-fail-fast" | |
- name: "Package" | |
shell: bash | |
run: "bash ci/deploy.sh" | |
- name: "Upload artifact" | |
uses: actions/upload-artifact@v3 | |
with: | |
name: "windows" | |
path: | | |
WezTerm-*.zip | |
WezTerm-*.exe | |
retention-days: 5 | |
upload: | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: "checkout repo" | |
uses: actions/checkout@v3 | |
- name: "Download artifact" | |
uses: actions/download-artifact@v3 | |
with: | |
name: "windows" | |
- name: "Checksum" | |
shell: bash | |
run: "for f in WezTerm-*.zip WezTerm-*.exe ; do sha256sum $f > $f.sha256 ; done" | |
- name: "Upload to Nightly Release" | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
shell: bash | |
run: "bash ci/retry.sh gh release upload --clobber nightly WezTerm-*.zip WezTerm-*.exe *.sha256" |