Skip to content

Praqma/vendor-integration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vendor Integration - Airoha SDK

Repository Structure

├── 00-definitions.sh              # Configuration and variable definitions
├── 01-import-release.sh           # Import a new SDK release
├── 02-merge-release-target-branch.sh  # Merge release into target branch
├── 99-run-import-n-merge.sh       # Run full import and merge workflow
├── create-patch-branch.sh         # Create a patch branch from a release
├── delete-references.sh           # Delete tags/branches for a release
├── delete-references-integration-branch.sh
├── get-references.sh              # List tags/branches for a release
├── push_releases.sh               # Push release refs to remote
├── _lib/                          # Shared functions
├── _resources/                    # .gitattributes / .gitignore templates
├── source_releases/               # Extracted SDK releases (input)
└── beo-airoha/                    # Target repository (submodule)

Prerequisites

Place the extracted SDK release folder(s) in source_releases/ with naming matching V<major>.<minor>.<patch> (e.g. V5.9.0).

Import a new release

release=V5.9.0 \
issue_reference=SDK-1234 \
debug=true \
bash ./01-import-release.sh

Environment variables

Variable Default Description
release auto-detected from source_releases/ Release version to import
issue_reference (none) Issue/ticket reference for commit messages
debug false Enable verbose output (set -x)
git_push_release true Push release branch/tags to remote
copy_gitfiles true Copy .gitattributes/.gitignore from _resources/
append_mode false Append to existing content instead of replacing
duplicate_ref_designs false Duplicate ab159x reference designs for ab158x

Merge release into a target branch

release=V5.9.0 \
target_branch=main \
commit_merge=false \
debug=false \
bash ./02-merge-release-target-branch.sh

This will leave the repo in an unmerged state so you can resolve conflicts locally.

To auto-commit the merge (conflicts included):

release=V5.9.0 \
target_branch=main \
commit_merge=true \
git_push_release=true \
bash ./02-merge-release-target-branch.sh

Additional merge variables

Variable Default Description
target_branch master Branch to merge the release into
commit_merge true Commit the merge result (even with conflicts)
integration_branch <release>-<target_branch> Name of the integration branch
target_repo origin Remote to use

Run full import and merge

Imports all releases found in source_releases/ sequentially, then merges the last one into target branches:

debug=false \
issue_reference=SDK-1234 \
target_branch=main \
bash ./99-run-import-n-merge.sh

Create a patch branch

release=V5.9.0 \
issue_reference=SDK-1234 \
bash ./create-patch-branch.sh

Get references for a release

List all local/remote branches and tags associated with a release:

[ release=V5.9.0 ] bash ./get-references.sh

Delete references for a release

Delete all branches and tags for a release (local and remote):

[ release=V5.9.0 ] [ dryrun=true ] bash ./delete-references.sh

Push releases

Push release branches and tags to remote:

[ release=V5.9.0 ] [ dryrun=true ] bash ./push_releases.sh

About

Repeated Import zip/7z to git with .gitignore and LFS/.gitattributes config and final merge to target branch

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages