diff --git a/.github/workflows/anki_artifacts.yml b/.github/workflows/anki_artifacts.yml new file mode 100644 index 00000000000..14f80ed4eca --- /dev/null +++ b/.github/workflows/anki_artifacts.yml @@ -0,0 +1,34 @@ +name: Build web/build artifacts from upstream +on: + workflow_dispatch: + push: + schedule: + - cron: "0 0 * * *" + pull_request: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + timeout-minutes: 80 + steps: + - uses: actions/checkout@v2 + + # todo: cache bazel folder + + - name: Build artifacts + run: | + curl -L https://github.com/bazelbuild/bazelisk/releases/download/v1.10.1/bazelisk-linux-amd64 -o ./bazel + chmod +x bazel + export PATH=$(pwd):"$PATH" + ./tools/build-ankidroid-artifacts.sh + + - name: Upload artifacts + uses: actions/upload-artifact@v2 + with: + name: anki_artifacts + if-no-files-found: error + path: anki_artifacts.zip diff --git a/tools/build-ankidroid-artifacts.sh b/tools/build-ankidroid-artifacts.sh new file mode 100755 index 00000000000..cee014a79ac --- /dev/null +++ b/tools/build-ankidroid-artifacts.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -e + +bazel build buildinfo.txt ts/... +rm -rf droid +mkdir -p droid/web +rsync -a .bazel/bin/buildinfo.txt droid +for i in card-info graphs deck-options change-notetype congrats; do + cp -av .bazel/bin/ts/$i/$i.{html,js,css} droid/web/ +done +cd droid +chmod -R a+w * +zip -r ../anki_artifacts.zip * +