Versioning & Release StrategyΒΆ
OverviewΒΆ
Bunker-Centric Architecture uses a multi-dimensional versioning strategy that abstracts complexity across three key axes:
Yocto LTS Version: Long-term support Yocto releases (e.g., scarthgap, wrynose)
BCA Release Version: Semantic versioning tied to Yocto LTS support
Build Configuration: Development, production, and custom flavors
Platform Support: Hardware-specific support
This approach allows Bunker-Centric Architecture to:
Abstract vendor BSP versions and updates
Maintain stable, production-ready releases only
Support multiple Yocto LTS versions simultaneously
Provide clear upgrade paths
Semantic VersioningΒΆ
Bunker-Centric Architecture follows Semantic Versioning (SemVer):
X.Y.Z
Where:
X = MAJOR: New Yocto LTS support
Y = MINOR: New features, platform support, vendor BSP updates
Z = PATCH: Bug fixes, security patches
MAJOR (X) - New Yocto LTS Support:
Triggered when supporting a new Yocto LTS release
May include significant infrastructure or architecture changes
Example: scarthgap-1.x.x β wrynose-2.x.x
Devices can update, but careful planning recommended
MINOR (Y) - Platform and Feature Updates:
New hardware platform support
Vendor BSP updates (e.g., Vendor releases BSP x.x)
New features compatible with current Yocto LTS
Security enhancements
Example: scarthgap-1.5.0 β scarthgap-1.6.0
PATCH (Z) - Bug Fixes and Security Patches:
Security vulnerability fixes
Bug fixes
No feature additions
Fully backward compatible
Example: scarthgap-1.5.0 β scarthgap-1.5.1
Repository StructureΒΆ
Branch Naming Convention: {yocto-name}-{major}.x.y
Examples:
scarthgap-1.x.y # Current development branch for scarthgap support
wrynose-2.x.y # Next Yocto LTS (wrynose) support
Tag Naming Convention: {version}
Examples:
1.0.0 # Release on scarthgap (from branch scarthgap-1.x.x)
1.1.0 # New platform support
1.1.1 # Patch release
2.0.0 # New major version (next Yocto LTS)
Yocto LTS Compatibility MatrixΒΆ
BCA officially supports Yocto LTS releases only. This ensures production-grade stability and long-term maintenance.
Yocto LTS |
BCA Version |
Release Date |
EOL (Life Cycle) |
|---|---|---|---|
scarthgap (current) |
1.x.y |
Q1 2026 |
2028-04 |
wrynose (upcoming) |
2.x.y |
Q3 2026 |
2030-04 |
older LTS |
0.x.y (archived) |
Pre-2026 |
No longer supported |
Yocto Schedule Reference:
For Yocto LTS release dates and support timelines, see the Yocto Project roadmap.
Build System IntegrationΒΆ
KAS Configuration:
KAS (Kas Automated Setup) manages the build configuration matrix. Each BCA release includes KAS recipes for supported platforms and configurations:
# Build production image for 'machine'
kas build <machine-conf-yml>
# Build custom QEMU image
kas build qemu.yml
Version Locking:
All versions are pinned in the repository to ensure reproducible builds:
# kas/common.yml
repos:
meta-bunker:
url: <git-remote>/meta-bunker.git
branch: scarthgap-1.x.y
commit: abc123def456
meta-openembedded:
url: https://github.com/openembedded/meta-openembedded.git
branch: scarthgap
commit: xyz789uvw012
Software Bill of Materials (SBOM) & CVE AnalysisΒΆ
Each BCA release includes comprehensive vulnerability and supply chain information.
SBOM (Software Bill of Materials):
Complete list of all software components, versions, and licenses included in your build.
CVE (Common Vulnerabilities and Exposures):
Analysis of known vulnerabilities in dependencies with:
Severity level
Mitigation status
Patch availability
Generating SBOM and CVE Analysis:
Use Yocto tools and Accelerat utilities. For detailed instructions, see SBOM Generation and CVE Analysis
Getting Access to ReleasesΒΆ
Public Releases:
General documentation and architecture guides are publicly available in this documentation.
Customer Releases:
Stable releases, build systems, and proprietary BSPs are available through the Customer Hub (requires account).
Next StepsΒΆ
Ready to build? See Building Custom Images
Need vendor-specific guidance? Check AMD UltraScale+ Family, NXP i.MX93 Family or ST STM32MP2 Family
Interested in SBOM Generation and CVE tracking? See SBOM Generation and CVE Analysis