Integrate gitlab-ci/lpag/fix_integration_branch_name and 19 more
[FIX][INTEGRATION] Bug fix in merging integration MR
- The integration branch name when a new MR is created actually contains the repository name, while the script that is performing the merging of the branch was using the recipe name. Aligning the behaviour of the two scripts.
- Handle GitLab exception when no MR pipeline is created.
- Insert Mediatek handling in pipeline retriggering function.
--
[TOKEN] Insert separated token to fetch LAVA test cases
- Use a dedicated token with higher restrictions to be used when triggering LAVA tests
- Jira bug reference: SW-2172
--
[FIX] Bug fix on MRs failing to be merged for 422
- Sometimes the error ‘422: Branch cannot be merged’ has been noted in cases where the automation fails to rebase (despite no conflicts) and then automatically merge an MR.
- This commit circumvents the problem by trying to rebase when such an error occurs and then trying again to merge.
- Jira bug reference: SW-1555
--
[THINGS] Fix in manifest pipeline template file
- The fix allows to perform build also on Edgehog Things images
--
[C57] Fix in MACHINE and PROCESSOR variable values
- Cleanup of the code part for compiling the different machines for Intel (x86) CPU-based boards
--
[BITBAKE] Handle custom Edgehog distros
In order to handle the scenarios where bitbake needs to compile an image different from the standard ones we introduce the possibility to have a custom DISTRO variable value. However, the variable shall follow the following convention:
- The first part of the string shall indicate the standard Edgehog OS distro, i.e. 'things' or 'embedded' as of now
- The second part of the string shall be the custom Edgehog OS image distro with at maximum a '-' as a separator, e.g. 'custom-image'
- The two parts of the string shall be separated by a '-'
An example could be 'embedded-custom-image'.
--
[TEST] Allow Edgehog Things LAVA test on Intel
- The 'apollolake' machine is no longer used since a single Intel image is released
--
[RELEASE] Fix on the software artifact name
- This commit removee the read-only SAS token from the name of the artifact
--
[KERNEL][VERSION] Update preferrred version for C31
- Update preferred kernel version to 5.10 for C31
- Add comment to make the kernel version forcing reason for some of the boards more explanatory
--
[INTEGRATION] Fix on integration branch name
Since now, the integration branch name created by a MR on the BSP into the layer was formed by the BB_RECIPE_NAME followed by the name of merge request source branch. Changing the BB_RECIPE_NAME with the CI_PROJECT_PATH variable to fix a bug in the build process when integration is performed and the integration branch is not found and also for consistency reasons.
--
[SRCREV] Improve search for recipe names
Since now, when searching for a recipe name, if the line in the SRCREV.conf file was matched, a break occurred, and all the lines with the same commit SHA of that line were updated. This could be the case of the SRCREV.conf file for meta-seco-rk layer where there need to be two recipes (one for u-boot and one for fw-sysdata) pointing to the same commit SHA. In that case, if both recipes had the same commit SHA, the script could handle it and update both lines. However, if a misalignment occured by any chance, the script could not handle it. For this reason we search for all occurrencies of the same recipe name in the SRCREV.conf and update separately each occurrency.
--
[NOTIFY] Include SAS token in Teams notifications
- Since now the links available in the notification message displayed in Teams channel with the link, changelog and job results report were broken for software artifacts in private container.
- Introducing the creation of read-only SAS token with 6-months expiration policy also for reports.
- Fix in deploy stage for software artifact URL generation in case of public containers.
--
[ARTIFACTS][URL] Insert blob SAS token in URL
- For software artifacts that are saved within private Azure container it is necessary to add a blob SAS token in order for the URL to correctly work. For such purpose we include the generation of a 6-months duration read-only SAS token to be attached to the URL.
- Add AZURE_STORAGE_KEY among necessary CI/CD variables.
--
[CHANGELOG] Improve search for MRs to be collected
- Since now, for each project, the script was searching only for MRs that were merged into branches having the same name of the manifest main branch.
- In order to correct this approach, we define a function that searches for the INTEGRATION variable in each project and get the name of the branch whose changes are integrated into the manifest main branch. If more than one branch integrates into the manifest one, all of them are considered in the search for MRs to be inserted in the changelog.
- Include BSP repositories and new meta-layers in CHANGELOG_PROJECTS variable
--
[C72n] Fix in machine configuration
- This commit fixes the build not working for C72nl device due to bug in logic of code creating gitlab-ci configuration file for each machine.
--
[NOTIFY] Increase timeout for notify job
- The notify job needs to pull the artifacts from all previous jobs and as the number of boards increase the timeout needs to increase accordingly.
--
[SHA] Insert SHA of the manifest in artifacts name
- Instead of inserting the "weekly" string in the artifacts name, which is already defined in the Azure path, we insert the short SHA for not tagged version of Edgehog.
- Remove TAG_NAME variable from "latest" tagged artifacts
--
[KERNEL] Get main kernel version from bitbake
- Instead of setting the kernel version by variable, the kernel main version is derived from the PREFERRED_VERSION of virtual/kernel used by Yocto using bitbake commands.
- The following algorithm does not actually apply on the 'c31' and 'tanaro' boards, for which a different handling is applied.
--
[ARTIFACTS][NAME] Handle equal variables
- Since for Intel boards the PROCESSOR and BOARD variable values coincides, it is necessary to handle this case and remove one of the two variables from the artifact name.
--
[INTEL] Add "intel" generic machine handling
- From now on, the compiled image for all Intel CPU-based SECO boards will be unique and not separate for different processor generations/flavours.
- Bump of the kernel version for all Intel architectures to rel. 6.1.
- Set KERNEL variable separately for each board and avoid the override of the value set in the generic yocto variables.