Commit graph

20 commits

Author SHA1 Message Date
Damien Elmes
ebe37791b5 Make build step optional in Linux docker containers 2022-03-09 18:20:13 +10:00
Damien Elmes
80b455c8c6 Automatically clean up stale files on TS build error 2022-02-25 12:25:55 +10:00
Damien Elmes
d6b72645c8 updates to the build process and binary bundles
All platforms:

- rename scripts/ to tools/: Bazelisk expects to find its wrapper script
(used by the Mac changes below) in tools/. Rather than have a separate
scripts/ and tools/, it's simpler to just move everything into tools/.
- wheel outputs and binary bundles now go into .bazel/out/dist. While
not technically Bazel build products, doing it this way ensures they get
cleaned up when 'bazel clean' is run, and it keeps them out of the source
folder.
- update to the latest Bazel

Windows changes:

- bazel.bat has been removed, and tools\setup-env.bat has been added.
Other scripts like .\run.bat will automatically call it to set up the
environment.
- because Bazel is now on the path, you can 'bazel test ...' from any
folder, instead of having to do \anki\bazel.
- the bat files can handle being called from any working directory,
so things like running "\anki\tools\python" from c:\ will work.
- build installer as part of bundling process

Mac changes:

- `arch -arch x86_64 bazel ...` will now automatically use a different
build root, so that it is cheap to switch back and forth between archs
on a new Mac.
- tools/run-qt* will now automatically use Rosetta
- disable jemalloc in Mac x86 build for now, as it won't build under
Rosetta (perhaps due to its build scripts using $host_cpu instead of
$target_cpu)
- create app bundle as part of bundling process

Linux changes:

- remove arm64 orjson workaround in Linux bundle, as without a
readily-available, relatively distro-agonstic PyQt/Qt build
we can use, the arm64 Linux bundle is of very limited usefulness.
- update Docker files for release build
- include fcitx5 in both the qt5 and qt6 bundles
- create tarballs as part of the bundling process
2022-02-10 19:23:07 +10:00
Damien Elmes
e3918b8110 move wheel build test into mac CI; enable symlinks in Linux CI 2022-01-23 19:18:46 +10:00
Damien Elmes
02195ffd3a fix linkchecker invocation in CI 2021-12-20 17:41:13 +10:00
Damien Elmes
14b1d7d77e tweak mac CI state folder 2021-12-13 13:12:59 +10:00
Damien Elmes
34586d1930 remove superfluous label in Windows CI 2021-12-10 10:50:57 +10:00
Damien Elmes
1bb2c1f6ab skip superfluous build step in CI; it should be moderately faster 2021-12-09 18:55:19 +10:00
Damien Elmes
f209a72b7c move node_modules into root folder [action required]
Recommend removing ts/node_modules folder before attempting to
build after this update.

This moves ts/node_modules into the root of the project to work around
https://github.com/ankitects/anki/pull/1405#issuecomment-936213861

Also fixes the sass errors shown when running scripts/svelte-check
2021-10-07 11:42:27 +10:00
Damien Elmes
b90388bee2 use separate integration test for links
If we run into issues with unreliable network connections in the future,
we'll be able to mark the test as flaky so Bazel can retry it multiple
times.
2021-07-24 10:12:25 +10:00
Damien Elmes
3376d72eb4 add header check to Linux CI 2021-04-13 23:08:57 +10:00
Damien Elmes
425a4dff70 build wheels in Linux CI 2020-12-21 19:31:15 +10:00
Damien Elmes
985124f470 add missing '-' to section marker 2020-12-16 12:02:49 +10:00
Damien Elmes
9563d0d2a1 remove set -x from Buildkite scripts 2020-12-16 12:01:21 +10:00
Damien Elmes
724b6cd1c8 add section markers to Buildkite 2020-12-16 11:59:07 +10:00
Damien Elmes
9d3b876429 add disk and repo cache to Linux CI 2020-12-10 08:49:37 +10:00
Damien Elmes
ef3f9dd306 move author check to top; add hint about GitHub UI 2020-12-09 21:15:38 +10:00
Damien Elmes
2d2733222b move contributor check into Buildkite 2020-12-09 21:01:11 +10:00
Damien Elmes
5ddfa4d733 tweak Windows CI entrypoint 2020-12-09 20:09:07 +10:00
Damien Elmes
e4f2586091 move Linux & Mac tests to Buildkite 2020-12-08 22:23:27 +10:00