Skip to content

RDKOSS-602: RDKE][Middleware][All components] Use IPK instead of build from source#488

Open
Shalini1516 wants to merge 1 commit intodevelopfrom
feature/rdkoss-602
Open

RDKOSS-602: RDKE][Middleware][All components] Use IPK instead of build from source#488
Shalini1516 wants to merge 1 commit intodevelopfrom
feature/rdkoss-602

Conversation

@Shalini1516
Copy link

Reason For Change: To Reduce the build time ,Added some extra lines in this rdk.conf file which helps to enable the ipk mode for both middleware components and Oss Components to fetch the ipk from artifactory.

Test Procedure: None
Risks: low

build from source

Reason For Change: To Reduce the build time ,Added some extra lines in
this rdk.conf file which helps to enable the ipk mode for both middleware components and Oss Components to
fetch the ipk from artifactory.

Test Procedure: None
Risks: low

Signed-off-by: ss127 <[email protected]>
@Shalini1516 Shalini1516 requested review from a team as code owners January 27, 2026 06:22
Copilot AI review requested due to automatic review settings January 27, 2026 06:22
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds IPK (Itsy Package) mode configuration to enable fetching pre-built packages from Artifactory instead of building from source, with the goal of reducing build time. The changes configure middleware and OSS component package feeds for the RDK build system.

Changes:

  • Added MW IPK MODE configuration to set up middleware package feed URIs
  • Added OSS IPK MODE configuration to set up OSS component package feed URIs
  • Configured release number, architecture settings, and IPK server paths

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

PREFERRED_PROVIDER_virtual/firebolt ?= "ripple"

include conf/distro/rdk-cpc.conf
#MW IPK MODE
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment style here uses a single '#' at the beginning of the line. While this is technically valid, the file contains other section comments (like lines 56-58) that use a more structured format with separator lines. Consider using a more consistent comment format to match the rest of the file, or at least add a blank line before this comment to visually separate the new IPK MODE sections from the previous content.

Copilot uses AI. Check for mistakes.
MW_IPK_SERVER_PATH ?= "${RDK_ARTIFACTS_BASE_URL}/${MW_IPK_PATH}/${RDK_MW_ARCH}/ipks/${BUILD_VARIANT}"
IPK_FEED_URIS += " \
${STACK_LAYER_EXTENSION}##${MW_IPK_SERVER_PATH} "

Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line contains tab characters for indentation instead of spaces. The rest of the file uses spaces for indentation. This inconsistency could cause issues with Yocto/BitBake parsing and should be replaced with spaces to match the file's convention.

Suggested change

Copilot uses AI. Check for mistakes.
IPK_FEED_URIS += " \
${STACK_LAYER_EXTENSION}##${MW_IPK_SERVER_PATH} "

#OSS IPK MODE
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The function 'get_oss_arch' is called here but is not defined anywhere in the codebase. This will cause a build error when BitBake evaluates this variable. You need to either define this function in a Python block or use an existing variable instead.

Suggested change
#OSS IPK MODE
#OSS IPK MODE
def get_oss_arch(d):
"""
Return the architecture string used for OSS middleware packages.
Prefer RDK_MW_ARCH if set, otherwise fall back to TARGET_ARCH,
and finally to 'all' as a safe generic default.
"""
arch = d.getVar('RDK_MW_ARCH')
if arch:
return arch
arch = d.getVar('TARGET_ARCH')
if arch:
return arch
return 'all'

Copilot uses AI. Check for mistakes.
MIDDLEWARE_ARCH = "${RDK_MW_ARCH}-middleware"
STACK_LAYER_EXTENSION = "${MIDDLEWARE_ARCH}"
RELEASE_NUM = "8.4.1.0"

Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable 'RDK_ARTIFACTS_BASE_URL' is referenced but never defined in this file or elsewhere in the codebase. This variable needs to be defined or set as a default value (using ?= operator), otherwise the IPK server paths will be incomplete and package fetching will fail.

Suggested change
RDK_ARTIFACTS_BASE_URL ?= ""

Copilot uses AI. Check for mistakes.
MIDDLEWARE_ARCH = "${RDK_MW_ARCH}-middleware"
STACK_LAYER_EXTENSION = "${MIDDLEWARE_ARCH}"
RELEASE_NUM = "8.4.1.0"

Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The variable 'BUILD_VARIANT' is referenced but never defined in this file or elsewhere in the codebase. This variable needs to be defined or set as a default value (using ?= operator), otherwise the IPK server paths will be incomplete and package fetching will fail.

Suggested change
BUILD_VARIANT ?= "default"

Copilot uses AI. Check for mistakes.

MIDDLEWARE_ARCH = "${RDK_MW_ARCH}-middleware"
STACK_LAYER_EXTENSION = "${MIDDLEWARE_ARCH}"
RELEASE_NUM = "8.4.1.0"
Copy link

Copilot AI Jan 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The RELEASE_NUM is hardcoded to a specific version "8.4.1.0". This should use the ?= operator instead of = to allow it to be overridden by local.conf or other configuration files. Hardcoding the release number makes it difficult to work with different release versions without modifying the distro configuration.

Suggested change
RELEASE_NUM = "8.4.1.0"
RELEASE_NUM ?= "8.4.1.0"

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant