Skip to content

CI: Add Robrix build CI configuration.#522

Merged
kevinaboos merged 11 commits into
project-robius:mainfrom
tyreseluo:add_robrix_build_ci_conifg
Jun 27, 2025
Merged

CI: Add Robrix build CI configuration.#522
kevinaboos merged 11 commits into
project-robius:mainfrom
tyreseluo:add_robrix_build_ci_conifg

Conversation

@tyreseluo

@tyreseluo tyreseluo commented Jun 18, 2025

Copy link
Copy Markdown
Member

PR content

Add a matrix of build passes for the 3 main host platforms for the 5 main target platforms

Build Matrix Coverage

Host OS Target Build Tool
Ubuntu Latest Linux x86_64 cargo build
macOS 13 Intel macOS x86_64 cargo build
macOS 14 ARM64 macOS ARM64 cargo build
Windows 2022 Windows x86_64 cargo build
macOS 14 iOS aarch64 cargo-makepad
macOS 14 Android cargo-makepad
Ubuntu Latest Android cargo-makepad
Windows 2022 Android cargo-makepad

Related PR

@tyreseluo

tyreseluo commented Jun 25, 2025

Copy link
Copy Markdown
Member Author

Do we need to create a new develop branch for code merge and review. The latest Robrix is built weekly through the main branch, and the whole build will take a lot of build time if we do frequent related builds directly on main. At the same time it would be better to release the latest Robrix.

Note: Currently we don't have a CI configuration for Release.

@tyreseluo tyreseluo changed the title Upload the initial version of the Robrix build CI configuration. CI: Upload the initial version of the Robrix build CI configuration. Jun 25, 2025
@tyreseluo tyreseluo changed the title CI: Upload the initial version of the Robrix build CI configuration. CI: Add Robrix build CI configuration. Jun 25, 2025
@tyreseluo
tyreseluo marked this pull request as ready for review June 25, 2025 05:02
@tyreseluo tyreseluo self-assigned this Jun 25, 2025
@tyreseluo tyreseluo added the waiting-on-review This issue is waiting to be reviewed label Jun 25, 2025
@kevinaboos

Copy link
Copy Markdown
Member

Do we need to create a new develop branch for code merge and review.

I don't understand what this means. The CI should be run on new PRs as a prerequisite check before a PR is allowed to be merged in.

The latest Robrix is built weekly through the main branch, and the whole build will take a lot of build time if we do frequent related builds directly on main. At the same time it would be better to release the latest Robrix.

For now, we don't need to automatically build Robrix every X days or something. We should just have the CI infrastructure for doing so, such that I can roll out builds whenever we want to build a new release.

Note: Currently we don't have a CI configuration for Release.

You mean for building artifacts for a new github release? That's fine, you can add it next. Moly has already done part of that, so you can borrow their implementation.

@kevinaboos kevinaboos left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Here are a few changes that pertain to multiple CI jobs:

  • Please remove the --all-targets and --release args from each build. We definitely do not want to build in --release mode; in fact, we want the opposite, as we just want the fastest possible builds.
  • We are now tracking the dev branch of makepad, not rik.
  • For all of the "Verify Android/iOS build artifacts" jobs, the find command doesn't really do what you want it to do. That sequence of commands (and the windows Get-ChildItem command) should end with returning an error if those files don't exist, but find doesn't do that.
    • Also, the find || echo "error" sequence doesn't work on macOS.
  • The android builds for Robrix don't need --full-ndk to be installed, you can remove that.
  • We should skip all CI jobs if the PR is in draft mode:
    if: github.event.pull_request.draft == false
    

Comment thread .github/workflows/build.yml Outdated
Comment thread .github/workflows/build.yml Outdated
Comment thread .github/workflows/build.yml Outdated
Comment thread .github/workflows/build.yml
Comment thread .github/workflows/build.yml
Comment thread .github/workflows/build.yml Outdated
Comment thread .github/workflows/build.yml Outdated
@kevinaboos kevinaboos added waiting-on-author This issue is waiting on the original author for a response and removed waiting-on-review This issue is waiting to be reviewed labels Jun 25, 2025
@tyreseluo
tyreseluo force-pushed the add_robrix_build_ci_conifg branch from 4bbb723 to 617466d Compare June 26, 2025 05:55
@tyreseluo tyreseluo added waiting-on-review This issue is waiting to be reviewed and removed waiting-on-author This issue is waiting on the original author for a response labels Jun 26, 2025

@kevinaboos kevinaboos left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just two small things:

  • please address the exclude paths (see my latest comment)
  • please fix the README here based on your comment about not needing the full-ndk arg.

@kevinaboos kevinaboos added waiting-on-author This issue is waiting on the original author for a response and removed waiting-on-review This issue is waiting to be reviewed labels Jun 26, 2025
tyreseluo and others added 2 commits June 27, 2025 11:10
- Rename build.yml to builds.yml for clarity
- Add ignore patterns for markdown and license files in CI triggers
- Remove --full-ndk flag from Android toolchain installation
@tyreseluo tyreseluo added waiting-on-review This issue is waiting to be reviewed and removed waiting-on-author This issue is waiting on the original author for a response labels Jun 27, 2025
@tyreseluo
tyreseluo requested a review from kevinaboos June 27, 2025 06:05
@kevinaboos kevinaboos removed the waiting-on-review This issue is waiting to be reviewed label Jun 27, 2025

@kevinaboos kevinaboos left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent, thanks!

@kevinaboos
kevinaboos merged commit 81217a1 into project-robius:main Jun 27, 2025
11 checks passed
@tyreseluo
tyreseluo deleted the add_robrix_build_ci_conifg branch June 28, 2025 02:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants