Commit Graph

20 Commits

Author SHA1 Message Date
Damien Elmes
742e4a5cd2 Make build step optional in Linux docker containers 2022-03-09 18:20:13 +10:00
Damien Elmes
776631bbf5 Automatically clean up stale files on TS build error 2022-02-25 12:25:55 +10:00
Damien Elmes
95dbf30fb9 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
f4ec3bb84a move wheel build test into mac CI; enable symlinks in Linux CI 2022-01-23 19:18:46 +10:00
Damien Elmes
4f64494573 fix linkchecker invocation in CI 2021-12-20 17:41:13 +10:00
Damien Elmes
b714974464 tweak mac CI state folder 2021-12-13 13:12:59 +10:00
Damien Elmes
1fb026cce9 remove superfluous label in Windows CI 2021-12-10 10:50:57 +10:00
Damien Elmes
c51b1c7180 skip superfluous build step in CI; it should be moderately faster 2021-12-09 18:55:19 +10:00
Damien Elmes
46b80ca773 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
d73852f272 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
be140a833a add header check to Linux CI 2021-04-13 23:08:57 +10:00
Damien Elmes
7fbd7ec763 build wheels in Linux CI 2020-12-21 19:31:15 +10:00
Damien Elmes
c72e3987d3 add missing '-' to section marker 2020-12-16 12:02:49 +10:00
Damien Elmes
dcb85a9bb8 remove set -x from Buildkite scripts 2020-12-16 12:01:21 +10:00
Damien Elmes
ed607782de add section markers to Buildkite 2020-12-16 11:59:07 +10:00
Damien Elmes
46b3b1938d add disk and repo cache to Linux CI 2020-12-10 08:49:37 +10:00
Damien Elmes
dffbe2bfdf move author check to top; add hint about GitHub UI 2020-12-09 21:15:38 +10:00
Damien Elmes
f2db4f4996 move contributor check into Buildkite 2020-12-09 21:01:11 +10:00
Damien Elmes
f42ea874fb tweak Windows CI entrypoint 2020-12-09 20:09:07 +10:00
Damien Elmes
0afdbdf7e0 move Linux & Mac tests to Buildkite 2020-12-08 22:23:27 +10:00