Skip to content

DTS nightly build should use dts-configs from develop branch #1790

Description

@DaniilKl

Component

Dasharo Tools Suite

Device

other

Dasharo version

-

Dasharo Tools Suite version

v2.7.6

Test case ID

-

Brief summary

DTS nightly builds are built every week from develop branch of the meta-dts repository. The purpose of the nightly builds - to allow users to test and use the not released changes in DTS. The changes in DTS that are not yet released can have a dependency on the changes from develop branch of the dts-configs repository, because the develop branch of this repository contains the changes that are not production-ready too. So the nightly builds must use metadata from the dts-configs from the develop branch out of the box.

How reproducible

100%

How to reproduce

  1. Boot DTS using nightly.ipxe.
  2. Enter shell by pressing s.
  3. Execute command source /usr/sbin/dts-environment.sh; echo $DTS_CONFIG_REF.
  4. Observe output refs/heads/main.
  5. Boot DTS using dts.ipxe.
  6. Enter shell by pressing s.
  7. Execute command source /usr/sbin/dts-environment.sh; echo $DTS_CONFIG_REF.
  8. Observe output refs/heads/main.

Expected behavior

  1. Boot DTS using nightly.ipxe.
  2. Enter shell by pressing s.
  3. Execute command source /usr/sbin/dts-environment.sh; echo $DTS_CONFIG_REF.
  4. Observe output refs/heads/develop.
  5. Boot DTS using dts.ipxe.
  6. Enter shell by pressing s.
  7. Execute command source /usr/sbin/dts-environment.sh; echo $DTS_CONFIG_REF.
  8. Observe output refs/heads/main.

Actual behavior

Describe above in How to reproduce.

Screenshots

No response

Additional context

Originally reported here: #1041 (comment) :

The problem with nightly builds is that that it still uses main branch of https://github.com/Dasharo/dts-configs by default, while develop branch of meta-dts (nightly) is tested on develop branch of dts-configs.
It can be worked around manually, by entering shell in DTS, exporting DTS_CONFIG_REF variable: export DTS_CONFIG_REF=refs/heads/develop and then running DTS UI again: dts-boot.
But we might want to change this behaviour to be default one for nightly builds, especially if we want to add it to iPXE menu.

Ideas for the implementation:

The first thing that came to my mind was replasing the DTS_CONFIG_REF value via the dts-scripts_git.bb (e.g., by using sed). But I am not sure whether it is the optimal solution.

Do it in Makefile if some variable is set (then set it in EXTRA_OEMAKE in recipe). Or you could maybe just add this export to /etc/profile so it is set by default.

I agree with the propositions. Then we need to trigger it during Yocto build somehow. We can either do it by passing some variable to kas either by export The_VARIABLE ...; kas-container or modifying some kas/*.yml file using, for example, sed in CI. Or we can add a separate YAML file (for example kas-develop.yml) that will be used for building from develop branch.

The key idea here is to make sure the nightly DTS builds use develop branch of the dts-cofnigs out of the box.

Solutions you've tried

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions