From 2f8cd1f3585a89782d1bcc55234ff263458c6f59 Mon Sep 17 00:00:00 2001 From: Cecile Tonglet Date: Sat, 28 Nov 2020 13:54:24 +0100 Subject: [PATCH] Manually deploy using GitHub Actions build (#70) Also added API ref doc --- .github/workflows/main.yml | 51 ++++++++++++++++++++++++++ .github/workflows/{rust.yml => pr.yml} | 32 ++++++---------- README.md | 2 +- netlify.toml | 3 -- 4 files changed, 64 insertions(+), 24 deletions(-) create mode 100644 .github/workflows/main.yml rename .github/workflows/{rust.yml => pr.yml} (85%) delete mode 100644 netlify.toml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..d96d69f --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,51 @@ +name: Main Workflow + +on: + push: + branches: [ main ] + schedule: + - cron: 0 0 1 * * + +env: + CARGO_TERM_COLOR: always + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - run: cargo test --all-features --verbose + + site: + runs-on: ubuntu-latest + if: ${{ github.event_name == 'push' }} + steps: + - uses: actions/checkout@v2 + - name: Install wasm-pack + run: | + curl -sSL https://github.com/rustwasm/wasm-pack/releases/download/v0.9.1/wasm-pack-v0.9.1-x86_64-unknown-linux-musl.tar.gz \ + | tar xzO wasm-pack-v0.9.1-x86_64-unknown-linux-musl/wasm-pack \ + > $HOME/.cargo/bin/wasm-pack + chmod +x $HOME/.cargo/bin/wasm-pack + - run: cargo doc --verbose --all-features + - name: Deploy doc + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./target/doc + - name: Build (Release) + run: "./build.sh --release" + - name: Move doc to public/api + run: mv ./target/doc ./public/api + - name: Deploy to Netlify + uses: nwtgck/actions-netlify@v1.1 + with: + publish-dir: './public' + github-token: ${{ secrets.GITHUB_TOKEN }} + deploy-message: ${{ github.event.head_commit.message }} + production-deploy: true + production-branch: main + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} + timeout-minutes: 5 diff --git a/.github/workflows/rust.yml b/.github/workflows/pr.yml similarity index 85% rename from .github/workflows/rust.yml rename to .github/workflows/pr.yml index 3a12630..8f10fd0 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/pr.yml @@ -1,24 +1,18 @@ -name: Rust +name: PR Workflow on: - push: - branches: [ main ] pull_request: branches: [ main ] - schedule: - - cron: 0 0 1 * * env: CARGO_TERM_COLOR: always jobs: + build: - runs-on: ubuntu-latest - outputs: size: ${{ steps.build.outputs.size }} - steps: - uses: actions/checkout@v2 - name: Install wasm-pack @@ -28,19 +22,24 @@ jobs: > $HOME/.cargo/bin/wasm-pack chmod +x $HOME/.cargo/bin/wasm-pack - run: cargo test --all-features --verbose - - run: cargo doc --verbose --all-features - name: Build (Release) id: build run: "./build.sh --release && echo ::set-output name=size::`cat public/wasm_bg.wasm | wc -c`" + - name: Deploy to Netlify + uses: nwtgck/actions-netlify@v1.1 + with: + publish-dir: './public' + github-token: ${{ secrets.GITHUB_TOKEN }} + deploy-message: ${{ github.event.pull_request.title }} + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }} + timeout-minutes: 1 build-main: - runs-on: ubuntu-latest - if: ${{ github.event_name == 'pull_request' }} - outputs: size: ${{ steps.build.outputs.size }} - steps: - uses: actions/checkout@v2 with: @@ -56,10 +55,7 @@ jobs: run: "./build.sh --release && echo ::set-output name=size::`cat public/wasm_bg.wasm | wc -c`" checks: - runs-on: ubuntu-latest - if: ${{ github.event_name == 'pull_request' }} - steps: - uses: actions/checkout@v2 - run: rustup install --profile default nightly @@ -73,13 +69,9 @@ jobs: report-wasm-size: runs-on: ubuntu-latest - needs: - build - build-main - - if: ${{ github.event_name == 'pull_request' }} - steps: - uses: mshick/add-pr-comment@v1 env: diff --git a/README.md b/README.md index 5d7c0e8..c68d4ef 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Yewprint ![Rust](https://github.com/cecton/yewprint/workflows/Rust/badge.svg) [![Netlify Status](https://api.netlify.com/api/v1/badges/17f076ed-49e5-4185-921e-5c5759de2fdb/deploy-status)](https://app.netlify.com/sites/epic-poincare-f8adaa/deploys) [![Discord](https://img.shields.io/discord/701068342760570933)](https://discord.gg/NAFcwhp) +# Yewprint ![Rust](https://github.com/cecton/yewprint/workflows/Rust/badge.svg) [![Netlify Status](https://api.netlify.com/api/v1/badges/17f076ed-49e5-4185-921e-5c5759de2fdb/deploy-status)](https://app.netlify.com/sites/epic-poincare-f8adaa/deploys) [![Discord](https://img.shields.io/discord/701068342760570933)](https://discord.gg/NAFcwhp) [![API Docs](https://img.shields.io/badge/docs.rs-yewprint-green)](https://yewprint.rm.rs/api/yewprint/) It's [Blueprint](https://blueprintjs.com), but for diff --git a/netlify.toml b/netlify.toml deleted file mode 100644 index e8c21e5..0000000 --- a/netlify.toml +++ /dev/null @@ -1,3 +0,0 @@ -[build] -publish = "public" -command = "curl -sSL https://sh.rustup.rs | sh -s -- -q -y --profile minimal && source $HOME/.cargo/env && curl -sSL https://github.com/rustwasm/wasm-pack/releases/download/v0.9.1/wasm-pack-v0.9.1-x86_64-unknown-linux-musl.tar.gz | tar xzO wasm-pack-v0.9.1-x86_64-unknown-linux-musl/wasm-pack > $HOME/.cargo/bin/wasm-pack && chmod +x $HOME/.cargo/bin/wasm-pack && ./build.sh"