blob: d8a11edb64539dbe23a864bb3e9d4dce66cbbe63 [file] [log] [blame]
Jan Kundrát2f100fc2020-11-02 22:10:16 +01001#!/bin/bash
2
3set -ex
4
Jan Kundrát2f100fc2020-11-02 22:10:16 +01005YANG_ROADM=0
6YANG_COHERENT=0
7YANG_INLINE=0
8YANG_CALIBRATION=0
9
Jan Kundrát9b2aab82021-04-14 01:14:44 +020010CLA_YANG=/usr/share/cla-sysrepo/yang
11VELIA_YANG=/usr/share/velia/yang
Jan Kundrát2f100fc2020-11-02 22:10:16 +010012
13for ARG in $(cat /proc/cmdline); do
14 case "${ARG}" in
15 czechlight=*)
16 CZECHLIGHT="${ARG:11}"
17 ;;
18 esac
19done
20
Jan Kundrát811c0b02021-02-05 19:16:43 +010021INITIAL_DATA=${CZECHLIGHT%%-g2}
22
Jan Kundrát2f100fc2020-11-02 22:10:16 +010023case "${CZECHLIGHT}" in
Jan Kundrát811c0b02021-02-05 19:16:43 +010024 sdn-roadm-line*)
Jan Kundrát2f100fc2020-11-02 22:10:16 +010025 YANG_ROADM=1
26 WITH_FEATURE=hw-line-9
Jan Kundrát2f100fc2020-11-02 22:10:16 +010027 ;;
Jan Kundrát811c0b02021-02-05 19:16:43 +010028 sdn-roadm-add-drop*)
Jan Kundrát2f100fc2020-11-02 22:10:16 +010029 YANG_ROADM=1
30 WITH_FEATURE=hw-add-drop-20
Jan Kundrát2f100fc2020-11-02 22:10:16 +010031 ;;
Jan Kundrát811c0b02021-02-05 19:16:43 +010032 sdn-roadm-hires-add-drop*)
33 YANG_ROADM=1
Jan Kundrát9cccf702021-12-03 11:09:07 +010034 WITH_FEATURE="hw-add-drop-20 pre-wss-ocm"
Jan Kundrát811c0b02021-02-05 19:16:43 +010035 INITIAL_DATA=sdn-roadm-add-drop
36 ;;
37 sdn-roadm-coherent-a-d*)
Jan Kundrát2f100fc2020-11-02 22:10:16 +010038 YANG_COHERENT=1
39 ;;
Jan Kundrát811c0b02021-02-05 19:16:43 +010040 sdn-inline*)
Jan Kundrát2f100fc2020-11-02 22:10:16 +010041 YANG_INLINE=1
42 ;;
43 calibration-box)
44 YANG_CALIBRATION=1
45 ;;
46esac
47
Jan Kundrát9b2aab82021-04-14 01:14:44 +020048sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/iana-hardware@2018-03-13.yang
49sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/ietf-hardware@2018-03-13.yang
Tomáš Peckad3861ce2022-05-11 11:51:30 +020050sysrepoctl --change ietf-hardware --permissions 0660 --enable-feature hardware-sensor
Tomáš Peckac34a5452020-12-16 21:29:09 +010051
Jan Kundrátb41f0082021-03-09 22:20:35 +010052if [[ ${YANG_ROADM} == 1 ]]; then
Václav Kubernát8cd61562021-12-08 13:27:31 +010053 FEATURE_ARGS=""
Jan Kundrát2f100fc2020-11-02 22:10:16 +010054 if [[ ${WITH_FEATURE} ]]; then
Jan Kundrát9cccf702021-12-03 11:09:07 +010055 for FEATURE in ${WITH_FEATURE}; do
Václav Kubernát8cd61562021-12-08 13:27:31 +010056 FEATURE_ARGS="${FEATURE_ARGS} --enable-feature ${FEATURE}"
Jan Kundrát9cccf702021-12-03 11:09:07 +010057 done
Jan Kundrát2f100fc2020-11-02 22:10:16 +010058 fi
Tomáš Peckad3861ce2022-05-11 11:51:30 +020059 sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/czechlight-roadm-device@2021-03-05.yang ${FEATURE_ARGS} --permissions 0660
Jan Kundrát9b2aab82021-04-14 01:14:44 +020060 sysrepocfg --datastore=startup --format=json --module=czechlight-roadm-device --import="${CLA_YANG}/${INITIAL_DATA}.json"
Jan Kundrát2f100fc2020-11-02 22:10:16 +010061fi
62
Jan Kundrátb41f0082021-03-09 22:20:35 +010063if [[ ${YANG_COHERENT} == 1 ]]; then
Tomáš Peckad3861ce2022-05-11 11:51:30 +020064 sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/czechlight-coherent-add-drop@2021-03-05.yang --permissions 0660
Jan Kundrát9b2aab82021-04-14 01:14:44 +020065 sysrepocfg --datastore=startup --format=json --module=czechlight-coherent-add-drop --new-data="${CLA_YANG}/${INITIAL_DATA}.json"
Tomáš Peckad3861ce2022-05-11 11:51:30 +020066 sysrepoctl --change czechlight-coherent-add-drop --permissions 0660
Jan Kundrát2f100fc2020-11-02 22:10:16 +010067fi
68
Jan Kundrátb41f0082021-03-09 22:20:35 +010069if [[ ${YANG_INLINE} == 1 ]]; then
Tomáš Peckad3861ce2022-05-11 11:51:30 +020070 sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/czechlight-inline-amp@2021-03-05.yang --permissions 0660
Jan Kundrát9b2aab82021-04-14 01:14:44 +020071 sysrepocfg --datastore=startup --format=json --module=czechlight-inline-amp --import="${CLA_YANG}/${INITIAL_DATA}.json"
Jan Kundrát2f100fc2020-11-02 22:10:16 +010072fi
73
Jan Kundrátb41f0082021-03-09 22:20:35 +010074if [[ ${YANG_CALIBRATION} == 1 ]]; then
Tomáš Peckad3861ce2022-05-11 11:51:30 +020075 sysrepoctl --search-dirs ${CLA_YANG} --install ${CLA_YANG}/czechlight-calibration-device@2019-06-25.yang --permissions 0660
Jan Kundrát9b2aab82021-04-14 01:14:44 +020076 sysrepocfg --datastore=startup --format=json --module=czechlight-calibration-device --import="${CLA_YANG}/${INITIAL_DATA}.json"
Jan Kundrát2f100fc2020-11-02 22:10:16 +010077fi
78
Tomáš Peckad3861ce2022-05-11 11:51:30 +020079sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-system@2014-08-06.yang --permissions 0660
Tomáš Pecka01df8482021-01-13 18:04:19 +010080
Tomáš Peckad3861ce2022-05-11 11:51:30 +020081sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/czechlight-lldp@2020-11-04.yang --permissions 0660
Jan Kundrát2f100fc2020-11-02 22:10:16 +010082
Tomáš Peckad3861ce2022-05-11 11:51:30 +020083sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/czechlight-system@2021-01-13.yang --permissions 0660
Tomáš Pecka25aae682021-01-27 14:45:57 +010084
Tomáš Pecka5a030092021-04-14 00:36:40 +020085sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/iana-if-type@2017-01-19.yang
Tomáš Peckad3861ce2022-05-11 11:51:30 +020086sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-interfaces@2018-02-20.yang --permissions 0660
87sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-ip@2018-02-22.yang --permissions 0660
88sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-routing@2018-03-13.yang --permissions 0660
89sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-ipv4-unicast-routing@2018-03-13.yang --permissions 0660
90sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/ietf-ipv6-unicast-routing@2018-03-13.yang --permissions 0660
91sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/czechlight-network@2021-02-22.yang --permissions 0660
Tomáš Pecka5a030092021-04-14 00:36:40 +020092
Tomáš Peckad3861ce2022-05-11 11:51:30 +020093sysrepoctl --search-dirs ${VELIA_YANG} --install ${VELIA_YANG}/czechlight-firewall@2021-01-25.yang --permissions 0600
Jan Kundrát8ee8b3b2022-02-17 19:03:14 +010094sysrepoctl --change ietf-access-control-list --enable-feature match-on-eth --enable-feature eth --enable-feature match-on-ipv4 --enable-feature ipv4 --enable-feature match-on-ipv6 --enable-feature ipv6 --enable-feature mixed-eth-ipv4-ipv6
95
Jan Kundrát34d2f482021-01-11 19:24:09 +010096# If not do not copy here from startup -> running, running might be stale.
97sysrepocfg -C startup