Commit graph

348 commits

Author SHA1 Message Date
Timothy Flynn
b36ab480bf Meta+Toolchain+CI: Add a script to bootstrap vcpkg
And hook it into ladybird.sh for convenience. The script will set up
PATH and other environment variables automatically.

On CI, vcpkg is theoretically already installed on Linux machines, but
not with the right environment variables, and not on macOS. So this also
makes CI use this script to bootstrap vcpkg.
2024-06-06 11:27:03 -04:00
Andreas Kling
d0afc3e643 CI: Remove "label pull requests" action 2024-06-05 10:49:45 +02:00
Andrew Kaster
e8b6de51fe CI: Adapt to new top-level CMakeLists 2024-06-04 13:44:22 -06:00
Andreas Kling
baf7a2dee7 CI: Update lint-commits workflow to say Ladybird 2024-06-04 09:32:07 +02:00
Timothy Flynn
bdbe2fdcc5 Everywhere: Replace SERENITY_SOURCE_DIR with LADYBIRD_SOURCE_DIR
In order to have checkouts of both SerenityOS and Ladybird, we need to
use a different environment variable for Ladybird.
2024-06-03 15:57:59 +02:00
Tim Ledbetter
319496eb70 Meta/CI: Remove unnecessary github-token usage from lintcommits script 2024-06-03 13:31:15 +02:00
Andrew Kaster
d334b2b57f CI: Work around unexpected GCC WPT failures 2024-06-03 10:55:04 +02:00
Andreas Kling
e70d96e4e7 Everywhere: Remove a lot more things we don't need 2024-06-03 10:53:53 +02:00
Andreas Kling
2936a9a45e Meta/CI: Give actions/github-script access to ladybird-bot token 2024-06-03 10:53:53 +02:00
Andreas Kling
4907eb1950 Meta/CI: Use LADYBIRD_BOT_TOKEN to post as ladybird-bot on GitHub 2024-06-03 10:53:53 +02:00
Andrew Kaster
72cdd1892b CI: Remove remnants of old setup action that was preventing macOS builds 2024-06-03 10:53:53 +02:00
Tim Ledbetter
5863ef852d Meta: Remove references to unused utilities 2024-06-03 10:53:53 +02:00
Tim Ledbetter
3e56835611 Everywhere: Remove references to non-existent paths 2024-06-03 10:53:53 +02:00
Andrew Kaster
6d3a54e4a8 Meta: Update Documentation and CI for repo move 2024-06-03 10:53:53 +02:00
dependabot[bot]
6d0aa7e64e CI: Bump JamesIves/github-pages-deploy-action from 4.6.0 to 4.6.1
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-05-23 00:54:43 -06:00
Timothy Flynn
daa9e852c9 Toolchain+CI: Remove unused TRY_USE_LOCAL_TOOLCHAIN parameter
This was used to create a .tar of the built Clang toolchain, but now we
just upload the built toolchain artifacts (same as the GNU toolchain).
2024-05-15 15:20:29 -06:00
Timothy Flynn
5e34a41f06 CI: Be a bit less paranoid about old compiler versions existing
We explicitly tell CMake what compiler to use. No need to remove older
versions, which was just one extra thing we needed to maintain.
2024-05-15 15:20:29 -06:00
Timothy Flynn
18f9efe92d CI: Explicitly install gcc-13 on CI
We're now getting errors on CI due to gcc-13 being missing. We can
probably be smarter about what packages we install, depending on the
workflow being run. But let's first unblock CI.

The error we get is a bit strange and inconsistent. Some CI runners seem
to already have gcc-13 installed. Others don't and can't find the gcc-13
package without the test Ubuntu toolchain PPA.
2024-05-15 15:20:29 -06:00
Liav A
5b34b4af14 Utilities: Merge the gunzip utility with gzip
Now both /bin/zcat and /bin/gunzip are symlinks to /bin/gzip, and we
essentially running it in decompression mode through these symlinks.

This ensures we don't maintain 2 versions of code to decompress Gzipped
data anymore, and handle the use case of gzipped-streaming input only
once in the codebase.
2024-05-14 12:35:25 -06:00
Timothy Flynn
0d7ea1bd2f CI: Remove the Sonar Cloud and PVS Studio workflow
Static analysis is great, but these workflows have not worked in a long
time, and no one was looking at the results. Our PVS Studio license and
our Sonar Cloud token have expired. Remove the workflows (at least for
now) so we don't waste CI runners and cache space. If someone is
motivated to revive these, they can revert this commit.
2024-05-11 15:43:18 -04:00
Timothy Flynn
9e22d9d957 CI: Update tool versions for the Sonar Cloud workflow
Upate to the latest version of the Sonar Cloud CLI. Update Java to a
recent version (the CLI currently complains about Java 11 being too
old).
2024-05-11 15:43:18 -04:00
Timothy Flynn
2f295f2174 CI: Exclude LibJS tests from Sonar Cloud's sources
Sonar Cloud throws an exception analyzing some of our test sources,
particularly ones that are meant to test invalid syntax.
2024-05-11 15:43:18 -04:00
Timothy Flynn
1f5d30cc83 CI: Use the correct output variable for skipping the toolchain build 2024-05-11 15:43:18 -04:00
Timothy Flynn
fffa4ef250 CI: Move the nightly Android CI to GitHub actions 2024-05-10 16:07:23 -04:00
Timothy Flynn
0887dbfd80 CI: Move the nightly Lagom GCC CI to GitHub actions 2024-05-10 16:07:23 -04:00
Timothy Flynn
7276d52a0e CI: Move the nightly Serenity code coverage CI to GitHub actions 2024-05-10 16:07:23 -04:00
Timothy Flynn
18b857fb64 CI: Convert the Lagom workflow into a reusable workflow
This will allow using the lagom-template.yaml file as a template for
the nightly GCC pipeline.
2024-05-10 16:07:23 -04:00
Timothy Flynn
ae6025987d CI: Convert the SerenityOS workflow into a reusable workflow
This will allow using the serenity-template.yaml file as a template for
the nightly code coverage pipeline.
2024-05-10 16:07:23 -04:00
Timothy Flynn
b3f43f330e CI: Inform the Lagom build where the UCD/CLDR/TZDB caches are downloaded 2024-05-10 16:07:23 -04:00
Timothy Flynn
a447b9bffd CI: Explicitly enable audio access on macOS 14
On the macOS 14 runners on GitHub actions, attempting to play audio (by
way of AudioOutputUnitStart) will open a pop-up asking for microphone
permission. This prevents any calling test to hang until they error out
with MACH_SEND_TIMED_OUT. This works around the issue by explicitly
enabling microphone access to all applications.
2024-05-08 14:46:39 -06:00
Timothy Flynn
b9210a757e CI: Move the Lagom CI to GitHub actions 2024-05-08 14:46:39 -06:00
Timothy Flynn
660e3ccb1c CI: Rename cmake.yml to serenity.yml
Just calling it "cmake" doesn't really describe what it is for, and a
future commit will add a lagom.yml. So let's call this serenity.yml to
make it clear that it tests SerenityOS itself.

This also renames the workflow, and updates some matrix orderings, to be
easier to distinguish between this job and the upcoming lagom.yml,
2024-05-08 14:46:39 -06:00
Timothy Flynn
ac8d5cce3c CI: Move the clang toolchain CI to GitHub actions 2024-05-08 14:46:39 -06:00
Timothy Flynn
c7828b0640 CI: Remove custom python setup
The only python on the CI machines is now python3. The python installed
by setup-python (which is CPython) seems to have issues running WPT.
2024-05-08 14:46:39 -06:00
Timothy Flynn
520667bda0 CI: Install the six python package
Needed for WPT.
2024-05-08 14:46:39 -06:00
Timothy Flynn
d7dc279ba8 CI: Add the extracted wabt package to the PATH
Unlike Azure, we can't just set the PATH environment variable in GitHub
Actions. We must add it using a special GITHUB_PATH file.
2024-05-08 14:46:39 -06:00
Timothy Flynn
d67b52853a CI: Use the correct value for the save-cache architecture on Lagom 2024-05-08 14:46:39 -06:00
Timothy Flynn
33cf9e68dd CI: Use the correct value for the toolchain ccache primary key 2024-05-08 14:46:39 -06:00
Dan Klishch
8d3eb937c8 Meta: Remove check-symbols.sh
check-symbols.sh had been dealing with libc.a which we don't provide
anymore.
2024-05-08 09:54:41 -06:00
Andrew Kaster
e5f361500e CI: Use common cache restore and cache save action on GitHub Actions
Unfortunately a composite action cannot have a `post:` step like
JavaScript actions are allowed to have, so we need to explicitly call
the post/save actions ourselves from the workflow file when we want to
save Toolchain/QEMU/ccache caches.

Co-Authored-By: Timothy Flynn <trflynn89@pm.me>
2024-05-07 15:28:46 -06:00
Timothy Flynn
3d6d2b2589 CI: Use the Setup action for the WASM REPL
This ensures we install ccache, for example.
2024-05-07 15:28:46 -06:00
Timothy Flynn
4f62066ad0 CI: Run brew update before installing macOS packages
This is needed to update brew's internal list of formulae, otherwise it
does not know about llvm-18.
2024-05-06 09:31:55 -06:00
Andrew Kaster
5aa28c31d5 CI: Use a local GitHub Action to setup installed packages 2024-05-02 06:22:10 -06:00
Timothy Flynn
823fdb83db Meta: Switch to clang-format-18 as the standard formatter 2024-04-24 16:50:01 -04:00
Timothy Flynn
90fcfca6f6 CI: Configure ccache before modifying its contents (if any)
If there is a cache miss while downloading the ccache from GitHub/Azure,
the .ccache directory won't exist when we try to update the modification
time of its contents. Configure the ccache size first, which will create
the .ccache directory if it doesn't exist.
2024-04-24 09:16:41 -04:00
Tim Schumacher
5f088f3233 Meta: Trim the CI ccache down to files used in the current build 2024-04-23 22:00:07 -04:00
Andrew Kaster
c5cd1ad737 CI: Use macOS 14 Apple Silicon runner to create js package for esvu 2024-04-23 15:37:07 -06:00
Andrew Kaster
2e385e4c12 CI: Bump Lagom CI builds to gcc-13 and clang-18
This includes Lagom Tools for Serenity builds, and the Lagom builds on
Azure.
2024-04-23 15:37:07 -06:00
dependabot[bot]
4eee9ee132 CI: Bump JamesIves/github-pages-deploy-action from 4.5.0 to 4.6.0
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/jamesives/github-pages-deploy-action/releases)
- [Commits](https://github.com/jamesives/github-pages-deploy-action/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: JamesIves/github-pages-deploy-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-23 10:32:46 -06:00
Andrew Kaster
2a48eff2d6 CI: Enable KVM on Github Actions runners
https://github.blog/changelog/2024-04-02-github-actions-hardware-accelerated-android-virtualization-now-available/
2024-04-18 18:26:36 -06:00