Skip to content

[sonic-app-ext] support app extensions installation during build#7593

Merged
renukamanavalan merged 5 commits intosonic-net:masterfrom
stepanblyschak:app-ext-build
Jun 29, 2021
Merged

[sonic-app-ext] support app extensions installation during build#7593
renukamanavalan merged 5 commits intosonic-net:masterfrom
stepanblyschak:app-ext-build

Conversation

@stepanblyschak
Copy link
Collaborator

Signed-off-by: Stepan Blyschak stepanb@mellanox.com

Why I did it

To support building DHCP relay as extension and installing it during build time.

How I did it

Created infrastructure. Users need to define their packages in rules/sonic-packages.mk

How to verify it

Together with #6531

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012

Description for the changelog

A picture of a cute animal (not mandatory but encouraged)

Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
tahmed-dev
tahmed-dev previously approved these changes May 12, 2021
Copy link
Contributor

@tahmed-dev tahmed-dev left a comment

Choose a reason for hiding this comment

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

LGTM. just a minor comment

#!/bin/bash

DEPENDENT="radv dhcp_relay"
DEPENDENT="radv"
Copy link
Contributor

Choose a reason for hiding this comment

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

nit: dhcp_relay should be still in the DEPENDENT. It should be remove by the DHCP PR #6531

Copy link
Contributor

Choose a reason for hiding this comment

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

@stepanblyschak , can you please resolve this nit comment?

Copy link
Collaborator Author

@stepanblyschak stepanblyschak Jun 29, 2021

Choose a reason for hiding this comment

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

It is already resolved, forgot to put a comment about it.

@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liat-grozovik liat-grozovik added the appext Application Extension label May 23, 2021
@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liat-grozovik
Copy link
Collaborator

@stepanblyschak please handle conflicts and rerun tests.

…xt-build

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@stepanblyschak
Copy link
Collaborator Author

stepanblyschak commented Jun 11, 2021

There is some problem with build I doubt it is related to this change, VS build fails:

dpkg-checkbuilddeps: error: Unmet build dependencies: python3-pytest
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Makefile:11: recipe for target '/sonic/target/debs/stretch/frr_7.5.1-sonic-0_amd64.deb' failed

The same frr package has been built succsfully for mellanox and broadcom. Also, kvmtests just stuck and do not retrigger.

EDIT: fixed ptf docker build in latest commit.

…ic-utilities for dockers that dont need it

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@stepanblyschak
Copy link
Collaborator Author

tests/hostcfgd/hostcfgd_test.py:5: in <module>
    from parameterized import parameterized
E   ModuleNotFoundError: No module named 'parameterized'

Same build error observed in different PR - https://dev.azure.com/mssonic/build/_build/results?buildId=19675&view=logs&j=88ce9a53-729c-5fa9-7b6e-3d98f2488e3f&t=8d99be27-49d0-54d0-99b1-cfc0d47f0318

@liat-grozovik
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@liat-grozovik
Copy link
Collaborator

@stepanblyschak can you please handle the new conflict?
@tahmed-dev and @renukamanavalan could you please help to review?

@liat-grozovik
Copy link
Collaborator

@renukamanavalan and @tahmed-dev can you please approve?

@renukamanavalan
Copy link
Contributor

@tahmed-dev can you please approve?
I am good with this PR.

@renukamanavalan renukamanavalan merged commit 9de7e68 into sonic-net:master Jun 29, 2021
carl-nokia pushed a commit to carl-nokia/sonic-buildimage that referenced this pull request Aug 7, 2021
…ic-net#7593)

Signed-off-by: Stepan Blyschak stepanb@mellanox.com

Why I did it
To support building DHCP relay as extension and installing it during build time.

How I did it
Created infrastructure. Users need to define their packages in rules/sonic-packages.mk

How to verify it
Together with sonic-net#6531
$(eval export $(subst -,_,$(notdir $($*.gz_PATH)))_whls=$(shell printf "$(subst $(SPACE),\n,$(call expand,$($*.gz_PYTHON_WHEELS)))\n" | awk '!a[$$0]++'))
$(eval export $(subst -,_,$(notdir $($*.gz_PATH)))_dbgs=$(shell printf "$(subst $(SPACE),\n,$(call expand,$($*.gz_DBG_PACKAGES)))\n" | awk '!a[$$0]++'))
$(eval export $(subst -,_,$(notdir $($*.gz_PATH)))_pkgs=$(shell printf "$(subst $(SPACE),\n,$(call expand,$($*.gz_APT_PACKAGES)))\n" | awk '!a[$$0]++'))
if [ -d $($*.gz_PATH)/cli-plugin-tests/ ]; then pushd $($*.gz_PATH)/cli-plugin-tests; pytest-$($(SONIC_UTILITIES_PY3)_PYTHON_VERSION) -v $(LOG); popd; fi
Copy link
Collaborator

Choose a reason for hiding this comment

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

pytest

Could you move python unit test out of the process of building a docker image target? We should treat this package as a normal standalone python wheel target.

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

Labels

appext Application Extension

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants