Electron37 cloud build#10
Merged
Merged
Conversation
79f7481 to
57c078f
Compare
- Add NFS egress rule (port 2049) to VPC security group in Terraform - Improve EFS mounting logic with DNS and IP fallback - Add better debugging and status indicators - Fix Yocto build environment setup for meta-chromium-test script - Install kas tool and set up proper directory structure - Use electron-master branch for chromium builds
- Fix corrupted YAML structure in build workflow - Add kas installation for Yocto builds - Improve EFS mounting with IP fallback and better error handling - Add proper directory structure setup for build script - Enhanced debugging and status reporting - Use electron-master branch for electron builds
Continue running jobs even if one fails
- Increase swap from 4GB to 128GB on NVMe SSD for memory-intensive Yocto builds - Add swap performance optimization (swappiness=10, vfs_cache_pressure=1) - Enhance S3 upload with detailed logging and error handling - Add pre-upload diagnostics (disk space, upload size, S3 access test) - Remove --quiet flag for better error visibility - Add post-upload verification and file listing - Improve timeout settings for reliable uploads
57c078f to
e1a18b7
Compare
Author
|
Build succeeded. I'll squash and merge. |
t-bashir-bs
reviewed
Aug 29, 2025
9efc58e to
c883ee8
Compare
t-bashir-bs
previously approved these changes
Aug 29, 2025
c883ee8 to
bbf490b
Compare
There was a problem hiding this comment.
Pull Request Overview
This PR introduces cloud-based Electron builds using AWS EC2 instances instead of only local runners. The changes implement an AWS EC2 build infrastructure with configurable instance types and automated cleanup, while maintaining backward compatibility with local runners.
- Adds AWS EC2 instance support with configurable instance types for Electron and Chromium builds
- Implements centralized EFS-based caching system for improved build performance
- Introduces EFS cache cleanup workflows for maintenance operations
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/electron.yml | Restructures workflow to support both AWS EC2 and local builds with configurable instance types |
| .github/workflows/chromium.yml | Mirrors electron.yml changes for Chromium builds with AWS EC2 support |
| .github/workflows/cleanup-efs-cache.yml | New workflow for managing EFS cache cleanup operations |
| .github/workflows/bs_meta_browser_ci_ec2.yml | New reusable workflow for orchestrating EC2 runner lifecycle |
| .github/workflows/bs_meta_browser_build_and_test.yml | New workflow containing the actual build and test logic for EC2 runners |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
t-bashir-bs
previously approved these changes
Sep 1, 2025
During development, I've used electron-master branch. electron-master is now merged to main. Switch to that branch
t-bashir-bs
approved these changes
Sep 1, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces major improvements to the GitHub Actions CI/CD workflows for the meta-browser project. The changes add support for running builds and tests on AWS EC2 instances for both Chromium and Electron, enable matrix builds across multiple configurations, and provide a new workflow for cleaning up EFS cache storage. The updates make the CI system more scalable, configurable, and better suited for large builds.
New EC2-based CI workflow and matrix build support:
bs_meta_browser_ci_ec2.ymlthat provisions EC2 runners, tags resources, and orchestrates build/test jobs for meta-browser on AWS, including automatic runner startup and cleanup.chromium.ymlandelectron.ymlto support matrix builds on AWS EC2, with configurable instance types, build parameters, and the option to fall back to local runners for manual dispatch. This enables parallel builds across Yocto versions, platforms, architectures, and libc flavors. [1] [2] [3] [4]Infrastructure and configuration enhancements:
id-token: write) to workflows for secure AWS credential management. [1] [2]EFS cache management:
cleanup-efs-cache.ymlto automate cleanup of Yocto downloads and sstate-cache directories on EFS using a temporary EC2 runner, with options for selective cleanup and disk usage reporting.Minor fixes and consistency: