-
-
Couldn't load subscription status.
- Fork 186
Work CI-CD #2983
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Work CI-CD #2983
Conversation
- Replace deprecated CMake API. ***NO_CI***
WalkthroughThe recent updates focus on enhancing build performance across various target platforms by integrating caching mechanisms for Changes
Sequence Diagram(s)sequenceDiagram
participant CI as CI/CD Pipeline
participant Cache as Cache System
participant Build as Build Environment
CI->>Cache: Cache ccache files
Cache->>CI: Cache available
CI->>Build: Start build with ccache
Build->>Cache: Restore ccache files
Cache-->>Build: Provide cached files
Build->>CI: Complete build
CI->>Cache: Save ccache files
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (8)
- .gitignore (1 hunks)
- azure-pipelines-templates/build-azurertos-targets.yml (1 hunks)
- azure-pipelines-templates/build-chibios-stm32-targets.yml (1 hunks)
- azure-pipelines-templates/build-espressif-esp32-targets.yml (2 hunks)
- azure-pipelines-templates/build-freertos-nxp-targets.yml (2 hunks)
- azure-pipelines-templates/build-ti-simplelink-targets.yml (2 hunks)
- azure-pipelines-templates/download-ccache.yml (1 hunks)
- azure-pipelines.yml (7 hunks)
Files skipped from review due to trivial changes (1)
- .gitignore
Additional context used
yamllint
azure-pipelines-templates/download-ccache.yml
[error] 1-1: wrong new line character: expected \n
(new-lines)
Additional comments not posted (31)
azure-pipelines-templates/download-ccache.yml (4)
5-10: LGTM!The caching step for
ccacheis correctly configured with the appropriate key and path.
12-22: LGTM!The PowerShell step to download
ccacheis correctly configured with the appropriate URL and download logic.
24-29: LGTM!The extraction step for
ccacheis correctly configured with the appropriate archive file patterns and destination folder.
31-33: LGTM!The script step to add
ccacheto the PATH is correctly configured with the appropriate script and condition.azure-pipelines-templates/build-ti-simplelink-targets.yml (3)
14-19: LGTM!The caching step for
ccachefiles is correctly configured with the appropriate key and path.
23-23: LGTM!The CMake step for setting up the build with
ccacheas the compiler launcher is correctly configured with the appropriate CMake arguments.
33-37: LGTM!The step for saving
ccachefiles is correctly configured with the appropriate key and path.azure-pipelines-templates/build-freertos-nxp-targets.yml (3)
14-19: LGTM!The caching step for
ccachefiles is correctly configured with the appropriate key and path.
23-23: LGTM!The CMake step for setting up the build with
ccacheas the compiler launcher is correctly configured with the appropriate CMake arguments.
33-37: LGTM!The step for saving
ccachefiles is correctly configured with the appropriate key and path.azure-pipelines-templates/build-chibios-stm32-targets.yml (3)
14-20: LGTM! The caching task forccachefiles is correctly configured.The
Cache@2task is well-integrated to cacheccachefiles before the build process, which should help in reducing build times.
25-46: LGTM! ThecmakeArgsmodifications are consistent and correctly integrated.The inclusion of
-DCMAKE_C_COMPILER_LAUNCHER=ccacheand-DCMAKE_CXX_COMPILER_LAUNCHER=ccachein thecmakeArgsparameters across multiple CMake tasks is consistent and should enhance build efficiency.
55-59: LGTM! The caching task for savingccachefiles is correctly configured.The
Cache@2task is well-integrated to saveccachefiles after the build process, which should help in reducing build times for subsequent builds.azure-pipelines-templates/build-azurertos-targets.yml (3)
14-20: LGTM! The caching task forccachefiles is correctly configured.The
Cache@2task is well-integrated to cacheccachefiles before the build process, which should help in reducing build times.
25-46: LGTM! ThecmakeArgsmodifications are consistent and correctly integrated.The inclusion of
-DCMAKE_C_COMPILER_LAUNCHER=ccacheand-DCMAKE_CXX_COMPILER_LAUNCHER=ccachein thecmakeArgsparameters across multiple CMake tasks is consistent and should enhance build efficiency.
55-59: LGTM! The caching task for savingccachefiles is correctly configured.The
Cache@2task is well-integrated to saveccachefiles after the build process, which should help in reducing build times for subsequent builds.azure-pipelines-templates/build-espressif-esp32-targets.yml (5)
17-23: LGTM! The caching task for IDF components is correctly configured.The
Cache@2task is well-integrated to cache IDF components before the build process, which should help in reducing build times.
24-30: LGTM! The caching task forccachefiles is correctly configured.The
Cache@2task is well-integrated to cacheccachefiles before the build process, which should help in reducing build times.
35-35: LGTM! ThecmakeArgsmodification is correctly integrated.The inclusion of
-DCMAKE_C_COMPILER_LAUNCHER=ccacheand-DCMAKE_CXX_COMPILER_LAUNCHER=ccachein thecmakeArgsparameter should enhance build efficiency.
115-120: LGTM! The caching task for saving IDF components is correctly configured.The
Cache@2task is well-integrated to save IDF components after the build process, which should help in reducing build times for subsequent builds.
121-125: LGTM! The caching task for savingccachefiles is correctly configured.The
Cache@2task is well-integrated to saveccachefiles after the build process, which should help in reducing build times for subsequent builds.azure-pipelines.yml (10)
417-417: LGTM! SettingCCACHE_DIRfor STM32 targets.The
CCACHE_DIRvariable is correctly set to improve build performance by caching compilation results.
426-426: LGTM! Addingccachedownload template for STM32 targets.The template to download
ccacheis correctly added, which will help in caching compilation results and improving build performance.
568-568: LGTM! Enablingccachefor ESP32 targets.The
IDF_CCACHE_ENABLEvariable is correctly set to "1", enablingccachefor ESP32 targets to improve build performance.
569-569: LGTM! SettingCCACHE_DIRfor ESP32 targets.The
CCACHE_DIRvariable is correctly set to improve build performance by caching compilation results.
652-652: LGTM! SettingCCACHE_DIRfor FreeRTOS targets.The
CCACHE_DIRvariable is correctly set to improve build performance by caching compilation results.
660-660: LGTM! Addingccachedownload template for FreeRTOS targets.The template to download
ccacheis correctly added, which will help in caching compilation results and improving build performance.
732-732: LGTM! SettingCCACHE_DIRfor TI SimpleLink targets.The
CCACHE_DIRvariable is correctly set to improve build performance by caching compilation results.
739-739: LGTM! Addingccachedownload template for TI SimpleLink targets.The template to download
ccacheis correctly added, which will help in caching compilation results and improving build performance.
805-805: LGTM! SettingCCACHE_DIRfor Azure RTOS targets.The
CCACHE_DIRvariable is correctly set to improve build performance by caching compilation results.
814-814: LGTM! Addingccachedownload template for Azure RTOS targets.The template to download
ccacheis correctly added, which will help in caching compilation results and improving build performance.
- Add ccache to all platforms. - Adjust AZDO pipeline yamls. - Add PS1 to install install ccache.
2430ce5 to
a17508e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (9)
- .gitignore (1 hunks)
- azure-pipelines-nightly.yml (5 hunks)
- azure-pipelines-templates/build-azurertos-targets.yml (1 hunks)
- azure-pipelines-templates/build-chibios-stm32-targets.yml (1 hunks)
- azure-pipelines-templates/build-espressif-esp32-targets.yml (2 hunks)
- azure-pipelines-templates/build-freertos-nxp-targets.yml (2 hunks)
- azure-pipelines-templates/build-ti-simplelink-targets.yml (2 hunks)
- azure-pipelines-templates/download-ccache.yml (1 hunks)
- azure-pipelines.yml (7 hunks)
Files skipped from review as they are similar to previous changes (7)
- .gitignore
- azure-pipelines-templates/build-azurertos-targets.yml
- azure-pipelines-templates/build-chibios-stm32-targets.yml
- azure-pipelines-templates/build-espressif-esp32-targets.yml
- azure-pipelines-templates/build-freertos-nxp-targets.yml
- azure-pipelines-templates/build-ti-simplelink-targets.yml
- azure-pipelines.yml
Additional context used
yamllint
azure-pipelines-templates/download-ccache.yml
[error] 1-1: wrong new line character: expected \n
(new-lines)
Additional comments not posted (10)
azure-pipelines-templates/download-ccache.yml (4)
4-10: LGTM! Caching step is correctly configured.The
Cache@2task is properly set up to cacheccacheusing the specified key and path.
12-22: LGTM! Download step is correctly configured.The
PowerShell@2task is properly set up to downloadccacheif it is not restored from the cache. The script handles errors witherrorActionPreference: "stop"andfailOnStderr: true.
24-29: LGTM! Extraction step is correctly configured.The
ExtractFiles@1task is properly set up to extract the downloadedccachezip file to the specified destination folder.
31-33: LGTM! PATH addition step is correctly configured.The script correctly adds
ccacheto the PATH if the previous steps succeed.azure-pipelines-nightly.yml (6)
299-299: LGTM!CCACHE_DIRvariable is correctly defined.The
CCACHE_DIRvariable is properly set up to specify the directory forccachestorage for STM32 targets.
308-308: LGTM!download-ccache.ymltemplate is correctly integrated.The
download-ccache.ymltemplate is properly integrated to download and installccachefor STM32 targets.
551-552: LGTM!IDF_CCACHE_ENABLEandCCACHE_DIRvariables are correctly defined.The
IDF_CCACHE_ENABLEvariable is properly set up to enableccacheand theCCACHE_DIRvariable specifies the directory forccachestorage for ESP32 targets.
636-636: LGTM!download-ccache.ymltemplate is correctly integrated.The
download-ccache.ymltemplate is properly integrated to download and installccachefor ESP32 targets.
636-636: LGTM!download-ccache.ymltemplate is correctly integrated.The
download-ccache.ymltemplate is properly integrated to download and installccachefor TI SimpleLink targets.
690-690: LGTM!download-ccache.ymltemplate is correctly integrated.The
download-ccache.ymltemplate is properly integrated to download and installccachefor Azure RTOS targets.
288fd6f to
c6dee33
Compare
f1c86c5 to
449142a
Compare
eeab92b to
1da6e94
Compare
Description
Motivation and Context
How Has This Been Tested?
Screenshots
Types of changes
Checklist
Summary by CodeRabbit
New Features
ccachefiles, optimizing build performance.Bug Fixes
Documentation