f6d1c4a575
Y* profile is the name pattern for p4 programs that developed for the current platform. The difference between them is features enabled and resource reservation. For this platform, it is expected to work on any Y profile. but after the latest changes, the first Y profile is always used.
30 lines
700 B
Bash
30 lines
700 B
Bash
#!/bin/bash
|
|
|
|
|
|
y_profile_set() {
|
|
P4_PROFILE=$(sonic-cfggen -d -v 'DEVICE_METADATA["localhost"]["p4_profile"]')
|
|
if [[ -n "$P4_PROFILE" || ( ! -L /opt/bfn/install && -e /opt/bfn/install ) ]]; then
|
|
return
|
|
fi
|
|
|
|
if [[ $(readlink /opt/bfn/install) =~ "install_y" ]]; then
|
|
echo "/opt/bfn/install is a link to Y profile"
|
|
return
|
|
fi
|
|
|
|
Y_PROFILE=$(ls -d /opt/bfn/install_y*_profile 2> /dev/null | head -1)
|
|
if [[ -z $Y_PROFILE ]]; then
|
|
echo "No P4 profile found for Newport"
|
|
return
|
|
fi
|
|
|
|
echo "Link /opt/bfn/install to $Y_PROFILE"
|
|
ln -srfn $Y_PROFILE /opt/bfn/install
|
|
}
|
|
|
|
(
|
|
unset PYTHONPATH
|
|
unset PYTHONHOME
|
|
y_profile_set
|
|
)
|