Continuous Integration (CI/CD)
Welcome to HexDroid CI/CD, a powerful automation system designed to streamline your software development lifecycle, with specialized capabilities tailored for projects using AOSP (Android Open Source Project) development.
What is CI/CD?
CI/CD stands for Continuous Integration and Continuous Delivery/Deployment.
It's a set of practices and tools designed to automate the building, testing, and deployment of software.
- Continuous Integration (CI): Regularly merging code changes from all developers into a central repository, followed by automated builds and tests. This helps catch integration issues early.
- Continuous Delivery (CD): Automating the release process so that validated code can be reliably released to users at any time.
What HexDroid CI/CD Does?
HexDroid CI/CD automates your development pipeline through workflows defined in simple YAML configuration files. Key functionalities include:
- AOSP-Specific Steps: Leverage built-in steps designed for common AOSP tasks like
repo sync
,lunch
,make
, signing, and release management. - Release Management: Tight integration with HexDroid Update Management (OTA) for distribution.
- Automated Triggers: Launch pipelines automatically based on Git events (pushes, pull requests, comments) or scheduled times (cron).
- Workflow Definition: Define complex pipelines with multiple stages and steps within each stage.
- Environment Management: Easily configure build environments using container images.
- Multi-Repository Handling: Natively supports workflows that involve checking out and building code from multiple repositories, crucial for AOSP.
Why HexDroid CI/CD?
While generic CI/CD solutions exist, developing complex projects like those based on AOSP presents unique challenges:
- Multi-Repository Complexity: AOSP often involves changes spanning multiple Git repositories, which need to be built and tested together.
- Complex Build Environment: Setting up the correct AOSP build environment can be intricate and resource-intensive.
- Vendor Customizations: Managing device-specific customizations and vendor adaptations requires specialized handling.
- Large Source Code: AOSP codebases are typically very large, demanding efficient checkout and build processes.
HexDroid CI/CD was purpose-built to address these challenges head-on. It provides a robust, efficient, and streamlined platform specifically optimized for AOSP workflows, offering features and integrations that simplify tasks often cumbersome in other systems.
Getting Started
To start automating your workflows, explore the Workflow Syntax documentation to learn how to define your pipelines.
If you are working with AOSP, the Setting up AOSP CI/CD Pipeline guide provides specific examples and best practices.
VCS Integration
HexDroid CI/CD system needs to be integrated with a Version Control System (e.g., GitHub) to listen for pull request events, run jobs to check out the source code, and build it.
To connect HexDroid to a VCS, navigate to your HexDroid project. Go to Project Settings > Integrations, click Add Integration and select your VCS from the list.
Supported VSC:
- GitHub
Other VCS Support
If your team is using a different version control system that is not currently supported, please reach out to our
support team at support@hexdroid.com.
We actively consider adding support for additional VCS platforms based on user needs and requirements.