Skip to content
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

[test] Adding platform.json configuration file test #13

Merged

Conversation

samaity
Copy link
Collaborator

@samaity samaity commented Dec 4, 2019

- What I did
In order to allow the SONiC community to check in platform capability file i.e. platform.json
file directly under device folder. We need to add this test to make sure the contents of the this file is compliant with platform capability design specified in DPB HLD doc

- How I did it
Added platformJson_checker.py file in Test folder.

- How to verify it
With the change as-is, build passes, the built image executed on the target platform, the configuration was applied properly.

Snapshot of success Build

samaity@43b85cf2e5e7:/sonic$ BLDENV=stretch make -f slave.mk target/debs/stretch/sonic-device-data_1.0-1_all.deb
SONiC Build System
 
Build Configuration
"CONFIGURED_PLATFORM"             : "vs"
"CONFIGURED_ARCH"                 : "amd64"
"SONIC_CONFIG_PRINT_DEPENDENCIES" : ""
"SONIC_BUILD_JOBS"                : "1"
"SONIC_CONFIG_MAKE_JOBS"          : "24"
"SONIC_USE_DOCKER_BUILDKIT"       : ""
"USERNAME"                        : "admin"
"PASSWORD"                        : "admin123"
"ENABLE_DHCP_GRAPH_SERVICE"       : ""
"SHUTDOWN_BGP_ON_START"           : ""
"ENABLE_PFCWD_ON_START"           : ""
"INSTALL_DEBUG_TOOLS"             : ""
"ROUTING_STACK"                   : "frr"
"FRR_USER_UID"                    : "300"
"FRR_USER_GID"                    : "300"
"ENABLE_SYNCD_RPC"                : ""
"ENABLE_ORGANIZATION_EXTENSIONS"  : "y"
"HTTP_PROXY"                      : ""
"HTTPS_PROXY"                     : ""
"ENABLE_SYSTEM_TELEMETRY"         : "y"
"SONIC_DEBUGGING_ON"              : ""
"SONIC_PROFILING_ON"              : ""
"KERNEL_PROCURE_METHOD"           : "build"
"BUILD_TIMESTAMP"                 : ""
"BLDENV"                          : "stretch"
"VS_PREPARE_MEM"                  : "yes"
"ENABLE_SFLOW"                    : "y"
 
samaity@43b85cf2e5e7:/sonic$ ls -la target/debs/stretch/sonic-device-data_1.0-1_all.deb*
-rw-r--r-- 1 samaity gsamaity 5806088 Dec  4 01:29 target/debs/stretch/sonic-device-data_1.0-1_all.deb
-rw-r--r-- 1 samaity gsamaity   27553 Dec  4 01:29 target/debs/stretch/sonic-device-data_1.0-1_all.deb.log

 

Snapshot of target/debs/stretch/sonic-device-data_1.0-1_all.deb.log

File ../../../device/dell/x86_64-dellemc_z9264f_c3538-r0/media_settings.json passed validity check
File ../../../device/celestica/x86_64-cel_seastone-r0/platform.json passed validity check
/sonic/src/sonic-device-data/src
 

Created a few bad platform.json files to test. Build got failed for all the bad platform capability file.
Build hit following failure:

index value is missing

Error: index of Ethernet0 has no value.
File ../../../device/celestica/x86_64-cel_seastone-r0/Seastone-DX010-25-50/platform.json failed validity check
Makefile:6: recipe for target 'test' failed
make[3]: *** [test] Error 255
make[3]: Leaving directory '/sonic/src/sonic-device-data/src'

interface name is wrong in this case.

Error: Unknown Interface Esthernet8s at top level
File ../../../device/celestica/x86_64-cel_seastone-r0/Seastone-DX010-10-50/platform.json failed validity check
Makefile:6: recipe for target 'test' failed
make[3]: *** [test] Error 255
make[3]: Leaving directory '/sonic/src/sonic-device-data/src'

brakout_modes is not the correct port attribute. syntax Error

File ../../../device/dell/x86_64-dellemc_z9264f_c3538-r0/media_settings.json passed validity check
Error: brakout_modes is not the correct Port attribute.
File ../../../device/celestica/x86_64-cel_seastone-r0/Seastone-DX010-50-40/platform.json failed validity check
Makefile:6: recipe for target 'test' failed
make[3]: *** [test] Error 255

some of the port Attribute is missing

File ../../../device/celestica/x86_64-cel_seastone-r0/platform.json passed validity check
Error: index, default_brkout_mode of Ethernet16 is/are missing
File ../../../device/celestica/x86_64-cel_seastone-r0/Seastone-DX010/platform.json failed validity check
Makefile:6: recipe for target 'test' failed
make[3]: *** [test] Error 255

Signed-off-by: Sangita Maity <sangitamaity0211@gmail.com>
Signed-off-by: Sangita Maity <sangitamaity0211@gmail.com>
@samaity samaity requested a review from zhenggen-xu December 5, 2019 02:30
@zhenggen-xu zhenggen-xu merged commit 1963fc2 into zhenggen-xu:sonic-cfg-mgmt Dec 5, 2019
@samaity samaity deleted the config_checker_platform branch December 15, 2019 13:39
zhenggen-xu pushed a commit that referenced this pull request Jan 10, 2020
* [test] Adding platform.json configuration file test

Signed-off-by: Sangita Maity <sangitamaity0211@gmail.com>

* Addressed review comments

Signed-off-by: Sangita Maity <sangitamaity0211@gmail.com>
praveen-li pushed a commit to praveen-li/sonic-buildimage that referenced this pull request May 8, 2020
* src/sonic-utilities 7ce5b62...3471926 (4):
  > Make `config` command support abbreviation. (sonic-net#893)
  > [fwutil]: Fix firmware update command. (sonic-net#895)
  > [doc]: ZTP configuration and show commands (sonic-net#866)
  > Allow show ztp to display non-sensitive information visible to
  > non-root user (sonic-net#872)

* src/sonic-ztp 374c9e8...c959371 (2):
  > Fix ztp profile unit test (zhenggen-xu#14)
  > Create a shadow ZTP data json file accessible to non-root user (zhenggen-xu#13)
praveen-li pushed a commit to praveen-li/sonic-buildimage that referenced this pull request Aug 12, 2020
* src/sonic-telemetry fa8d498...3bd7ca3 (4):
  > Update gnmi deps (zhenggen-xu#40)
  > [testdata] Update SFP keys to align with new standard (zhenggen-xu#39)
  > Fixed the parameters for subscribe APIs (zhenggen-xu#38)
  > Azure ro mode (zhenggen-xu#34)

* src/sonic-mgmt-common 444aa9a...cc01ce4 (4):
  > Make gnmi dep version the same as in telemetry repo (zhenggen-xu#17)
  > Cleanup translib and cvl go test cases (zhenggen-xu#13)
  > Package update and enhancements/fixes in YGOT, and Request Binder (zhenggen-xu#12)
  > Translib phase I changes (zhenggen-xu#11)

Note: sonic-telemetry submodule update is dependent upon sonic-mgmt-common submodule update, thus updating both in this patch
li-pingmao pushed a commit to li-pingmao/sonic-buildimage that referenced this pull request Feb 23, 2022
* [BFN] Updated platform APIs impl

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* Extended BFN platform SFP APIs implementation

* Update sfp.py

* [BFN] Extended SFP platform plugin implementation

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* [BFN] Extended Fans platform plugin implementation

* [BFN] divided classes Fan and  FanDrawer into 2 files

* Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>

What I did
	Add get_model() function
	Add get_low_critical_threshold() function
	Change __get(...) function.
How I did it
	Differnece from previous implementation of __get(...) function is return real value or -9999.9 if value is not provided by thrift API

* Add get_presence() function and revised __get() function

Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>

* [BFN] Updated PSU platform APIs impl

Signed-off-by: Dmytro Lytvynenko <dmytrox.lytvynenko@intel.com>

* Added BFN PSU cache (zhenggen-xu#9)

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* [BFN]  Fans and Fantray platform APIs update (zhenggen-xu#7)

* [BFN] Updated SFP platform APIs (zhenggen-xu#10)

Signed-off-by: Volodymyr Boyko <volodymyrx.boiko@intel.com>

* [BFN] Updated platform API for thermal (zhenggen-xu#8)

* Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>

* Revert "[BFN]  Fans and Fantray platform APIs update (zhenggen-xu#7)" (zhenggen-xu#11)

This reverts commit c62a733.

* Add support health monitor system (zhenggen-xu#15)

Signed-off-by: Petro Bratash <petrox.bratash@intel.com>

* Update chassis.py

* [BFN] Updated FANs and FAN Tray platform API (zhenggen-xu#14)

* Fix fix_alignment (zhenggen-xu#17)

Signed-off-by: Petro Bratash <petrox.bratash@intel.com>

* [BFN] Improvement show environment (zhenggen-xu#16)

* Added PSU temperature skip into platform.json (zhenggen-xu#18)

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* Do not skip psud on Newport

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* [BFN] fix fan status from Not OK to Ok (zhenggen-xu#19)

* [BFN] Updated SFP platform plugin (zhenggen-xu#13)

Signed-off-by: Volodymyr Boyko <volodymyrx.boiko@intel.com>

* [DPB] Fix typo for Ethernet0 2x200G[100G,40G] breakout mode (zhenggen-xu#21)

Signed-off-by: Mykola Gerasymenko <mykolax.gerasymenko@intel.com>

* [barefoot] Tmp fix vendor_rev (zhenggen-xu#22)

Signed-off-by: Volodymyr Boyko <volodymyrx.boiko@intel.com>

* Fixed python issues in sonic_platform/fan_drawer.py

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* Updated fan_drawer.py

* Fixing trailing white spaces in fan_drawer.py

* [BFN] Fix thrift for SFPs API

Signed-off-by: Volodymyr Boyko <volodymyrx.boiko@intel.com>

* In platform.json, replaced 'false' with '0' to workaround ast.literal_eval() issue

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* [Newport] Thermal manager  (zhenggen-xu#23)

* Signed-off-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>

* Revert "In platform.json, replaced 'false' with '0' to workaround ast.literal_eval() issue"

This reverts commit 1e73127.

* Removed 'controllable' options from platform.json to fix factory default config generation

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* Update thermal_manager.py

* Migrated SFP plugin to sonic_xcvr API (zhenggen-xu#30)

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

Co-authored-by: KostiantynYarovyiBf <kostiantynx.yarovyi@intel.com>
Co-authored-by: Vadym Yashchenko <vadymx.yashchenko@intel.com>
Co-authored-by: Dmytro Lytvynenko <dmytrox.lytvynenko@intel.com>
Co-authored-by: Volodymyr Boiko <volodymyrx.boiko@intel.com>
Co-authored-by: Petro Bratash <petrox.bratash@intel.com>
Co-authored-by: Mykola Gerasymenko <mykolax.gerasymenko@intel.com>
li-pingmao pushed a commit to li-pingmao/sonic-buildimage that referenced this pull request Feb 23, 2022
[sonic-linkmgrd][master] submodule update

Commits added:
0c23756 Jing Zhang      2022-01-19      Linkmgrd subscribing State DB route event  (zhenggen-xu#13)
12b9951 Longxiang Lyu   2021-12-13      Add TLV support to ICMP payload (zhenggen-xu#11)
3eedda3 Longxiang Lyu   2022-01-06      Add missing intermediate states (zhenggen-xu#16)
8da4982 Ying Xie        2022-01-04      [linkmgrd] update README, set coding style guidance (zhenggen-xu#15)
a897cf8 Longxiang Lyu   2021-12-13      Improve PR template (zhenggen-xu#16)
6fec701 Jing Zhang      2021-12-06      Add pull request template for linkmgrd repo (zhenggen-xu#9)


signed-off-by: Jing Zhang zhangjing@microsoft.com
praveen-li pushed a commit to praveen-li/sonic-buildimage that referenced this pull request Oct 27, 2022
#### Why I did it
Update sonic-host-services submodule to include below commits:
```
bc8698d Merge pull request zhenggen-xu#21 from abdosi/feature
557a110 Fix the issue where if dest port is not specified in ACL rule than for multi-asic where we create NAT rule to forward traffic from Namespace to host fail with exception.
6e45acc (master) Merge pull request zhenggen-xu#14 from abdosi/feature
4d6cad7 Merge remote-tracking branch 'upstream/master' into feature
bceb13e Install libyang to azure pipeline (zhenggen-xu#20)
82299f5 Merge pull request zhenggen-xu#13 from SuvarnaMeenakshi/cacl_fabricns
15d3bf4 Merge branch 'master' into cacl_fabricns
de54082 Merge pull request zhenggen-xu#16 from ZhaohuiS/feature/caclmgrd_external_client_warning_log
b4b368d Add warning log if destination port is not defined
d4bb96d Merge branch 'master' into cacl_fabricns
35c76cb Add unit-test and fix typo.
17d44c2 Made Changes to be Python 3.7 compatible
978afb5 Aligning Code
1fbf8fb Merge remote-tracking branch 'upstream/master' into feature
7b8c7d1 Added UT for the changes
91c4c42 Merge pull request zhenggen-xu#9 from ZhaohuiS/feature/caclmgrd_external_client
7c0b56a Add 4 test cases for external_client_acl, including single port and port range for ipv4 and ipv6
b71e507 Merge remote-tracking branch 'origin/master' into HEAD
d992dc0 Merge branch 'master' into feature/caclmgrd_external_client
bd7b172 DST_PORT is configuralbe in json config file for EXTERNAL_CLIENT_ACL
f9af7ae [CLI] Move hostname, mgmt interface/vrf config to hostcfgd (zhenggen-xu#2)
70ce6a3 Merge pull request zhenggen-xu#10 from sujinmkang/cold_reset
29be8d2 Added Support to render Feature Table using Device running metadata. Also added support to render 'has_asic_scope' field of Feature Table.
3437e35 [caclmgrd][chassis]: Add ip tables rules to accept internal docker traffic from fabric asic namespaces.
8720561 Fix and add hardware reboot cause determination tests
0dcc7fe remove the empty bracket if no hardware reboot cause minor
e47d831 fix the wrong expected result comparision
ef86b53 Fix startswith Attribute error
8a630bb fix mock patch
8543ddf update the reboot cause logic and update the unit test
53ad7cd fix the mock patch function
7c8003d fix the reboot-cause regix for test
1ba611f fix typo
25379d3 Add unit test case
a56133b Add hardware reboot cause as actual reboot cause for soft reboot failed
c7d3833 Support Restapi/gnmi control plane acls
f6ea036 caclmgrd: Don't block traffic to mgmt by default
a712fc4 Update test cases
adc058b caclmgrd: Don't block traffic to mgmt by default
06ff918 Merge pull request zhenggen-xu#7 from bluecmd/patch-1
e3e23bc ci: Rename sonic-buildimage repository
e83a858 Merge pull request zhenggen-xu#4 from kamelnetworks/acl-ip2me-test
f5a2e50 [caclmgrd]: Tests for IP2ME rules generation
```
praveen-li pushed a commit to praveen-li/sonic-buildimage that referenced this pull request Dec 23, 2022
[sonic-linkmgrd][master] submodule update

Commits added:
0c23756 Jing Zhang      2022-01-19      Linkmgrd subscribing State DB route event  (zhenggen-xu#13)
12b9951 Longxiang Lyu   2021-12-13      Add TLV support to ICMP payload (zhenggen-xu#11)
3eedda3 Longxiang Lyu   2022-01-06      Add missing intermediate states (zhenggen-xu#16)
8da4982 Ying Xie        2022-01-04      [linkmgrd] update README, set coding style guidance (zhenggen-xu#15)
a897cf8 Longxiang Lyu   2021-12-13      Improve PR template (zhenggen-xu#16)
6fec701 Jing Zhang      2021-12-06      Add pull request template for linkmgrd repo (zhenggen-xu#9)


signed-off-by: Jing Zhang zhangjing@microsoft.com
zhenggen-xu pushed a commit that referenced this pull request May 24, 2024
sonic-dhcp-relay
5ae186f Yaqiang Zhu Tue Dec 19 12:05:15 2023 -0500 [counter] Clear counter table when init (#45)
40c6877 Jing Zhang Fri Nov 10 12:41:23 2023 -0800 [CodeQL] fix unmet dependency for build-swss-common (#44)

sonic-dhcpmon
7c55e50 StormLiangMS Thu Sep 14 09:57:06 2023 +0800 Merge pull request #13 from jcaiMR/dev/jcai_master_interface_counter
085a087 jcaiMR Mon Sep 11 09:17:03 2023 +0000 refine counting logic
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.

2 participants