Commit Graph

1045 Commits

Author SHA1 Message Date
Joe LeVeque
f938f3ecaf [docker-platform-monitor]: Prevent supervisor from logging unexpected exits from processes known to exit in < 1 second (#889) 2017-08-15 10:38:22 -07:00
Shu0T1an ChenG
e13789c5af Merge remote-tracking branch 'github/master' into v1.0.3
Conflicts:
	platform/mellanox/mlnx-fw-upgrade.sh
	src/sonic-sairedis
	src/sonic-swss
2017-08-10 18:52:01 -07:00
Taoyu Li
a2fe0212be [ConfigDB] Move all BGP configuration into DB (#861)
- BGP data read from minigraph.py now match DB schema
- BGP templates are updated
- bgpcfgd can now deal with runtime neighbor create/delete
2017-08-08 16:23:58 -07:00
Qi Luo
e1f2a2dd75 [lldp] No need to config on port with no minigraph_neighbor, such as port in vlan (#864) 2017-08-02 20:28:00 -07:00
Qi Luo
618b25f18c Squash merge v1.0.3 branch onto master 2017-08-02 22:28:17 +00:00
Taoyu Li
b6efe438b5 Introduce ConfigDB (#808)
* [cfggen] Support reading from and writing to configdb
* [bgp] Move bgp_admin_state to configdb, support dynamic admin state change
* [sonic-utilities] Adapt configDB for admin status, support config save and config load
2017-08-01 19:02:00 -07:00
Oleksandr Ivantsiv
c1fd0b1ae5 [orchagent]: Export platform information before orchagent run. (#835)
Export platform information in environment to be able to write vendor
specific code.
2017-07-25 10:05:27 +03:00
pavel-shirshov
d898011b2e [docker-ptf]: Update entrypoint entry for docker-ptf (#836)
* Updated entrypoint for docker-ptf container

* Add main supervisord.conf file under /etc/supervisor. Run supervisord with option -c
2017-07-24 13:36:40 -07:00
pavel-shirshov
2201bf3496 [docker-ptf]: Install yaml module for python (#821)
* Install yaml python module in docker-ptf container
2017-07-19 23:21:03 -07:00
lguohan
3fd2014e93 [sonic-mgmt]: move sonic-mgmt docker build into sonic-slave (#819)
need to install sonic-device-data into sonic-mgmt docker
2017-07-19 08:10:45 -07:00
sihuihan88
1176508858 [bgpd]: support multiple peer range in single peer group (#807) 2017-07-13 15:03:10 -07:00
Joe LeVeque
f49cac086f Remove extra trailing newlines at EOF (#804)
Files now end with a single newline
2017-07-12 20:54:37 -07:00
Oleksandr Ivantsiv
96fe120265 [mlnx]: Add support of Mellanox SN2740 platform. (#786)
- Update SAI (added support of SN2740 profile).
- Update SDK to version 4.2.3130.
- Update FW to version 13.1224.0140.
- Update HW MGMT to version 1.0.0160.
2017-07-07 14:26:53 +03:00
Shuotian Cheng
a74b3a1eb7 [teamd]: Fix Jinja2 template for calculating min_ports (#791)
In Jinja2, '|' cannot be treated directly as piping operator. The
operator precedence of '|' is higher than '*'. The filter only applies
to the value just before it. Group the expression to make sure that the
filter is applied to the outcome of the expression.

Update the unit test to add such case.
2017-07-06 16:33:24 -07:00
Joe LeVeque
a697e8efcf [docker-base]: Build supervisor package from source in order to update to v3.3.2 (#777)
- Resolves issue #762
2017-07-06 10:32:27 -07:00
pavel-shirshov
7792f09437 [docker-ptf]: Install python modules from pypi (#788) 2017-07-06 02:27:05 -07:00
Joe LeVeque
bce5446dc4 [LLDP]: Port description (TLV 4) now contains '<neighbor_host_name>:<port_name>' (#772) 2017-06-29 16:37:37 -07:00
Joe LeVeque
3798262c1a [DHCP Relay]: Fix Option 82 string - Remove quotes; add MAC address of receiving port as remote_id (#763) 2017-06-27 17:59:36 -07:00
Joe LeVeque
017eea8a87 [DHCP Relay]: Add support for custom Option 82 circuit_id of the form '<hostname>:<portname>' (#747)
* Add docker-dhcp-relay/Dockerfile to .gitignore

* Add isc-dhcp-relay .deb package to image build process, along with my Option 82 patch

* Install custom isc-dhcp-relay in dhcp_relay docker

* Install isc-dhcp-relay build dependencies in sonic-slave Docker container

* Copy the built .deb package to the destination directory

* Add dependencies for isc-dhcp-relay

* Change Option 82 string to '<hostname>:<portname>'

* Install dependencies of .deb files implicitly in Dockerfile

* Remove unused line

* Remove unnecessary space
2017-06-24 12:05:04 -07:00
Joe LeVeque
22819d9983 [docker-platform-monitor]: Add fancontrol (#735) 2017-06-23 15:23:00 -07:00
Shuotian Cheng
d1b12dc0ca [swss]: Sleep 5 min regardless of arp_update return code (#743)
- arp_update return code is not guaranteed to be true/false.
  When there is no VLAN, arp_update will return true.
  When there are VLANs, arp_update will return false because the
  command arping returns 1 due to the option '-w 0'.
- This script should be run every 5 minutes regardless of the return
  code.
2017-06-22 21:26:33 -07:00
lguohan
4bdcac8e4f [bgp]: move allowas-in into ipv6 section to enable allowas-in for ipv6 (#741) 2017-06-22 19:50:24 -07:00
sihuihan88
3268946de5 [BGPD]: add bgp dynamic neighbor configuration (#708)
* add bgp dynamic neighbor configuration

* [bgpd]: update as comments

* update as comment

* update to deployment_id_asn_map

* minor change
2017-06-21 18:52:50 -07:00
Taoyu Li
95906a6490 [installer] Copy old config files rather than only minigraph (#730) 2017-06-21 11:02:25 -07:00
sihuihan88
6867458058 [docker-ptf]: Install exabgp in docker ptf (#709) 2017-06-16 07:25:40 -07:00
Taoyu Li
5e6620e19e [bgp] Save bgp admin state (#690)
* [bgp] Save admin state and set default state to shutdown

* Set default behavior to no shutdown

* Add build option SHUTDOWN_BGP_ON_START

* Script change for default admin state to be on

* Address CR comments to bgp_neighbor script

* Fix script bug
2017-06-12 11:05:22 -07:00
Joe LeVeque
d094ceecc2 [docker-platform-monitor]: Add LED control daemon and plugin for x86_64-arista_7050_qx32 platform (#691)
* Add files for building ledd package; add ledd to docker-platform-monitor; Control platform monitor docker using supervisord

* Add sonic-platform-daemons submodule

* Rename ledd.mk -> sonic-ledd.mk

* Add led_control.py plugin for x86_64-arista_7050_qx32 platform

* Rename Dockerfile -> Dockerfile.j2

* Fix build

* Remove blank line
2017-06-10 22:05:11 -07:00
pavel-shirshov
390591de90 [docker-bgp]: Use address-family ipv6 for ipv6 vlan addresses (#692)
* Fix SAI submodule id

* Fix bgpd template. Use v6 address family for vlan ipv6 addr
2017-06-10 17:05:48 -07:00
lguohan
bc5bca66cc [dockerbase]: remove apt-get clean (#685) 2017-06-08 02:47:53 -07:00
Marian Pritsak
3903b45d41 [teamd.sh]: Remove LAG interfaces on exit (#643)
Use -k option for teamd to properly remove LAG interfaces when docker is
exiting.

Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-06-08 01:53:51 -07:00
lguohan
a7de6ebe24 [dockerbase]: make sure /var/cache/apt/archives directory exists (#684) 2017-06-08 00:26:42 -07:00
Qi Luo
ec273c8892 Disable snmpd native ipCidrRouteTable implementation (#675)
The SNMP subagent implements ipCidrRouteTable. If there is no nexthops
for default route, ie. switch isolated, the SNMP subagent will response
'no instance'. Then snmpd will response kernel routes, which include
non-front panel interfaces. To remove snmpd native implementation, we
only expose SNMP subagent's implementation.
2017-06-06 22:58:58 -07:00
Marian Pritsak
820e7aafd0 [docker-teamd]: Explicitly set LAG hwaddr (#664)
* [docker-teamd]: Explicitly set LAG hwaddr

Team device is initially created without any members and has a random HW
address, which is later changed to port's address. This configuration
sets team device's address explicitly to base MAC to avoid reassignment.

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Update teamd config tests with hwaddr

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Align HW addr byte for Centec and Mellanox

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Change HW addr to unicast in config tests

Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-06-06 16:13:38 -07:00
Shuotian Cheng
d8c55840d0 [swss]: Update swss/common and add --batch_size 8192 option to orchagent (#668) 2017-06-04 01:35:47 -07:00
Shuotian Cheng
c3aa513dae [swss]: Update orchagent.sh script to use asic_type to add arguments (#667)
- Right now Broadcom and Cavium platforms need to set MAC address when
  starting orchagent daemon.
2017-06-03 13:49:33 -07:00
Shuotian Cheng
8944ee64f5 [Facebook]: Add Facebook Wedge 100 support (#666)
- Add a sample minigraph and Facebook-W100-C32 HWSKU
- update orchagent.sh script
2017-06-03 12:44:34 -07:00
Joe LeVeque
e0d22acc9e [DHCP Relay]: Wait for all interfaces to come up before starting DHCP relay (#660) 2017-06-01 18:38:33 -07:00
Shuotian Cheng
8adc490fe6 [swss]: Exiting orchagent with unsupported HWSKU (#650)
Echo error message to stderr and exit orchagent.sh starting script
2017-05-31 10:57:31 -07:00
lguohan
26f98559b0 [docker-ptf]: add hping3 into docker-ptf (#651) 2017-05-31 10:49:31 -07:00
Joe LeVeque
b8c11bccf2 [DHCP Relay]: Listen on all front panel, VLAN and PortChannel interfaces with IPv4 addresses (#645)
* DHCP relay now listens on all front panel, VLAN and PortChannel interfaces with IPv4 addresses
* Add sample isc-dhcp-relay output file
2017-05-30 18:29:18 -07:00
pavel-shirshov
122c03caee [docker-ptf]: Overwrite ubuntu scapy with version from p4lang (#639)
* Install scapy from p4lang

* Overwrite standard scapy version
2017-05-26 18:32:52 -07:00
Shuotian Cheng
e6bb4b20a1 [swss]: Update submodules and mount /var/log to swss docker (#636)
- [swss]: Update sairedis/swss/common submodules
- [orchagent]: Mount /var/log folder and use the folder to save recording files
- [orchagent]: Use -d to specify the folder path
2017-05-26 17:56:29 -07:00
pavel-shirshov
f3312b8e0b [docker-ptf-*]: Use buildimage infrastructure to build docker-ptf-* (#638)
* Add files to build docker-ptf-{platform}
2017-05-26 17:18:11 -07:00
pavel-shirshov
edab38e321 Install ipython from packages (#637) 2017-05-26 13:31:33 -07:00
sihuihan88
13c18ed045 [device]: Add support for SKU Force10-S6000-Q32 (#624) 2017-05-24 11:59:01 -07:00
pavel-shirshov
519802ec09 [docker-swss]: Restore FDB and ARP entries after fast reboot (#621)
* Restore FDB and ARP entries right after fast reboot to minimize traffic corruption

* Fix typo
2017-05-24 11:57:33 -07:00
pavel-shirshov
867670665f [docker-ptf]: Add less, ipython, and python ssh libraries (#625) 2017-05-24 01:34:37 -07:00
wadelnn
fb4cd63ac5 [Ingrasys] Add Ingrasys S8900 series platform (#569)
* Add Ingrasys S8900 series platform

* Add Ingrasys S8900-54XC platform driver
* Add Ingrasys S8900-64XC platform driver
* Reorganized Ingrasys debian package
* Move fancontrol config to device-specific file directory
* QSFP transceivers init on S9100-32X
* Update Thermal Policy in sensors.conf
* Add new Ingrasys S8900 series platform for docker-orchagent/orchagent.sh

Signed-off-by: Wade He <chihen.he@gmail.com>
2017-05-18 11:05:49 -07:00
Qi Luo
d70e973496 snmpd ignores unavailable disks (#607) 2017-05-16 16:46:30 -07:00
Samuel Angebault
cb969fc843 [platform] Add Arista DCS-7050QX-32S and missing plugins (#597)
* Update sonic-platform-modules-arista submodule

* Add sensors.conf for Arista DCS-7050QX-32S

* Add plugin/eeprom.py for Arista DCS-7050QX-32S

* Add plugin/sfputil.py for Arista DCS-7050QX-32S

* Add port_config.ini for Arista DCS-7050QX-32S

* Add plugin/sfputil.py for Arista DCS-7060CX-32S

* Add plugin/eeprom.py for Arista DCS-7060CX-32S

* Update plugin/eeprom.py for Arista DCS-7050QX-32
2017-05-16 08:07:47 -07:00
Shuotian Cheng
8af03fd0f9 [orchagent]: Add ARP update script to maintain VLAN neighbors (#401)
- Extend ARP reachable time to 30min
- Add arping to docker-swss
- Add arp_update script to routinely probe neighbors

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-05-15 17:06:19 -07:00
pavel-shirshov
b26ec863e8 [docker-base]: Add less, strace, and configuration for vim (#591)
* Add less in docker-base. Add strace in docker_base_dbg.
* Make link vim to vim.tiny and have vim config file
2017-05-11 18:46:11 -07:00
Joe LeVeque
6e45307a49 [docker-orchagent]: Properly manage with supervisord (#589) 2017-05-11 11:18:10 -07:00
Joe LeVeque
d5c13c0a83 [dockers]: Disable autorestart on all supervisor processes inside containers (#580) 2017-05-09 17:37:08 -07:00
Joe LeVeque
8f348399f5 [Dockers]: Manage all Docker containers with Supervisord (#573)
- Consolidate config.sh and start.sh scripts into one script (start.sh)
 - Solve issue #435 - All dockers now run supervisord as their ENTRYPOINT
 - All stdout/stderr output from processes managed by supervisord is now sent to syslog instead of their own files
 - Supervisord log messages are now also sent to syslog
 - Removed unused smartmontools package from docker-platform-monitor
2017-05-08 15:43:31 -07:00
maggiemsft
4dfe2a26f3 [docker-ptf]replace ping utility from inetutils-ping to iputils-ping (#523)
* replace ping utility from inetutil-ping to iputils-ping

* fix dup typo

* change from package installing to using apt install

* remove unnecessary package handling line
2017-05-01 18:47:29 -07:00
Shuotian Cheng
c7d540cb2f [ptf]: Add pip install pysubnettree (#554)
>> import SubnetTree

This module is used for PTF FIB test to build LPM
2017-04-29 00:15:12 -07:00
pavel-shirshov
d083d7e79c [database]: Remove hard/soft limits for client-output-buffer in redis (#539)
* Remove hard/soft limits for client-output-buffer in redis

Otherwise when we have a lot of updates from orchagent to syncd latter
one can't process queues fast enough and redic-database disconnect both
orchagent and syncd. orchagent and syncd doesn't have logic to deal with
it and just crash
2017-04-26 12:07:18 -07:00
Oleksandr Ivantsiv
c7ea3470ed [swss]: Generate config files for Everflow and IPinIP from minigraph (#507)
[swss]: Generate config files for Everflow and IPinIP from minigraph
 - Add Everflow DST IP to minigraph file
 - Extend minigraph.py to support Everflow
 - Add templates file for Everflow and IPinIP configuration
 - Add config.sh for swss docker to generate config files
2017-04-21 14:28:29 -07:00
Joe LeVeque
6c202919b3 [System logs]: Eliminate duplicate log messages and attempt rotation more frequently (#520)
* Rename 'ACSFileFormat' -> 'SONiCFileFormat'

* Rename '00-acs.conf' -> '00-sonic.conf'

* Add logrotate.d and systemd-journald config files to image

* Log all SONiC process messages to /var/log/syslog; prevent duplicate logging to /var/log/messages

* Do not redirect cron and daemon logs to their own files, let them log to /var/log/syslog

* Log all teamd messages to /var/log/teamd.log; Add more SONiC program names to SONiC rules clause

* Remove duplicate code by condensing quagga programs into a list; Fix teamd log rule

* Kernel and LPR messages no longer getting duplicated to their own log files

* Now calling logrotate every minute via cron job

* Need full path to logrotate in cron job

* Add '.log' suffix to wildcards, otherwise logrotate will rotate already-rotated logs (e.g., bgpd.log.1.1.1.1.1...)

* Add microsecond granularity to syslog messages

* Don't overwrite system crontab, instead, install additional logrotate crontab file into /etc/cron.d

* Removed incomplete concept of per-process SONiC logs. We can revisit again later
2017-04-21 08:22:44 -07:00
Shuotian Cheng
7dc1045c26 [swss]: Export platform as env variable in docker-swss (#524)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-04-21 08:21:41 -07:00
Rodny Molina
d30fbf1d72 [build]: Adding support for Free-Range-Routing stack. (#510)
- Extending SONiC building infrastructure to provide users
           with greater flexibility, by allowing them to elect a
           routing-stack different than the default one (quagga). The desired
           routing-stack will be defined in rules/config file.

         - As part of these changes I'm adding support for
           Free-Range-Routing (FRR) stack. Quagga will continue to be
           the default routing-stack.

Signed-off-by: Rodny Molina <rodny@linkedin.com>
2017-04-20 09:12:27 -07:00
lguohan
b3e10d2093 [vas]: remove docker-vas (#499) 2017-04-13 06:08:28 -07:00
Marian Pritsak
6dbe979e5f [build]: Include SONiC version into installer. (#472)
* [build]: Include SONiC version into installer.

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Append dirty if contains local changes

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Update config

* Use correct name for kernel version field

* Update sysDescription.j2
2017-04-05 16:14:41 -07:00
Taoyu Li
8391d7f8b5 [snmp] Fix a bug in SNMP alias mapping (#473)
* [snmp] Fix a bug in SNMP alias mapping Which was introduced in #448.
2017-04-03 21:34:18 -07:00
Taoyu Li
8c76556efb Re-commit PR #432 (SHA 4546372) (#474)
* [config/acl] Get ACL config from DHCP and load it in swss container (#432)
* Temporarily disable DHCP option 226
2017-04-03 16:12:32 -07:00
Shuotian Cheng
9841f8338b [redis]: Disable snapshotting completely (#463)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-31 23:51:31 -07:00
Joe LeVeque
5604b59be5 Remove deprecated docker-bgp (#465) 2017-03-31 15:51:38 -07:00
pavel-shirshov
823bc36bd9 Enable graceful restart feature for ToR router (#466) 2017-03-31 13:25:39 -07:00
Taoyu Li
fed908fc6b [config-engine] minigraph.py refactoring (#448)
* Refactor minigraph.py
See description in https://github.com/Azure/sonic-buildimage/pull/448 for detail
2017-03-30 15:25:31 -07:00
Joe LeVeque
71d299bed4 [swsssdk]: Update nomenclature: 'sswsdk' -> 'swsssdk' (#445) 2017-03-30 11:51:05 -07:00
lguohan
94934f7b3b Revert 432 taoyl/acl dhcp (#457)
* Revert "[config/acl] Get ACL config from DHCP and load it in swss container (#432)"

This reverts commit 4546372f48.
2017-03-29 20:11:46 -07:00
pavel-shirshov
814fd87e63 Remove /var/run/rsyslogd.pid bofore starting rsyslog (#453) 2017-03-29 18:07:25 -07:00
Shuotian Cheng
7f703a9c8f [docker-lldp]: Do not use TTY mode on lldpctl command (#454)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-29 17:47:21 -07:00
Taoyu Li
4546372f48 [config/acl] Get ACL config from DHCP and load it in swss container (#432)
Get ACL config from DHCP and load it in swss container
2017-03-29 13:33:54 -07:00
Shuotian Cheng
27dae90726 [docker-teamd]: Clean /etc/teamd/ folder before adding new configurations (#451)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-28 15:49:48 -07:00
Qi Luo
7a2a374917 [docker-snmp]: Disable snmpd IP module and use snmp subagent implementation (#447)
* Disable snmpd ip module, will use snmp subagent implementation
* Update git submodule
2017-03-28 15:48:29 -07:00
pavel-shirshov
70cc4994ef Fix qos configuration for TD2 platform (#439) 2017-03-27 16:38:18 -07:00
Joe LeVeque
fcaba688f7 [database]: Fix ENTRYPOINT for docker-database to ensure redis-server starts as PID 1 (#442) 2017-03-27 15:27:20 -07:00
Nadiya
713f6fc318 [sonic-cfggen] Add check to generate valid bgpconfig (#440)
* [sonic-cfggen]Add check to generate valid bgpconfig

Signed-off-by: Nadiya.Stetskovych <Nadiya.Stetskovych@cavium.com>

* Use builtin none instead of None

Signed-off-by: Nadiya.Stetskovych <Nadiya.Stetskovych@cavium.com>
2017-03-27 14:22:04 -07:00
pavel-shirshov
5314230980 [docker-syncd-%-rpc]: Integrate syncd dockers with rpc (#431)
* Build docker-syncd-*-rpc for brcm and mlnx

* Fix errors

* Update make files for rpc

* Fix mistypes
2017-03-24 18:36:56 -07:00
Taoyu Li
f08874db36 [platform-monitor]: Fix sensors.conf file path (#426)
sensors.conf file was moved in #316.
2017-03-22 16:59:12 -07:00
pavel-shirshov
91cca8966d [docker-syncd-*-rpc]: Fix build (#423)
* Fix docker-syncd-brcm-rpc build
* Fix docker-syncd-mlnx-rpc build

* Rename docker-syncd-rpc to docker-syncd-brcm-rpc

* Add fix for mlnx platform too
2017-03-22 16:38:51 -07:00
Shuotian Cheng
6a6bc88dcb [interfaces]: Remove bridge-utils from swss docker and add it to base image (#417)
The reason is that /etc/network/interfaces file is in base image. After booting,
docker-swss is not ready and thus the empty VLAN interfaces cannot be created
when the brctl is pointing to the binary inside the swss docker.

Add the bridge-utils into the base image and add bridge_ports none to the
/etc/network/interfaces file so that after boot-up the empty VLAN interfaces
will be created to let the members to join later.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-20 21:39:09 -07:00
Shuotian Cheng
7b7a61693a [sonic-cfggen]: Add -p option and add teamd.j2 test (#414)
- Add -p --port-config option to feed sonic-cfggen with port_config.ini
  file when necessary.
- Update minigraph.py file to accept the -p option
- Add test_j2files.py test to test config.sh and all .j2 templates
  * Currently test_teamd is added to test both the config.sh and teamd.j2
    file works well with the t0 sample minigraph and sample port config
    file
  * The sample output is added to the folder sample_output for comparison

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-17 21:38:20 -07:00
Shuotian Cheng
783be14a5d [minigraph]: Add portchannels/vlans dictionary and update teamd templates (#408)
- minigraph_portchannel_interfaces and minigraph_vlan_interfaces are lists
  of interfaces and the name could duplicate due to multiple IPs
- Add minigraph_portchannels and minigraph_vlans dictionaries to support
  querying port channels and vlans via the name
- Update teamd.j2 template and config.sh file in docker-teamd
- Update zebra.conf.j2 template to add port channel interfaces

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-17 16:48:13 -07:00
Taoyu Li
3643281594 [cfggen] Add tool to translate openconfig acl into sonic format (#388)
* Build sonic-config-engine as whl instead of deb package
* Add tool to translate openconfig acl into sonic format
2017-03-17 14:51:42 -07:00
Shuotian Cheng
05e6b3611d [interfaces]: Combine vlan_interfaces and lag_interfaces file and add allow-hotplug (#381)
* [files]: Add allow-hotplug stanza to interfaces files

- start interface <interface_name> when the kernel detects
a hotplug event from the interface

ref: https://www.debian.org/doc/manuals/debian-reference/ch05.en.html

* [interfaces]: Combine vlan_interfaces and lag_interfaces file and add allow-hotplug

1. Remove vlan_interfaces and lag_interfaces file and members in teamd.j2
2. Add all interfaces to /etc/network/interfaces file
3. Add allow-hotplug stanza
4. Add up <command> to automatically add interfaces to VLAN and LAG
5. Add unique_name filter to minigraph.py to remove duplicate interface names
6. Add brctl to base image
7. Update sonic-swss submodule

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-16 11:22:40 -07:00
Joe LeVeque
d6bfa505b3 Wait for VLAN interface to come up before starting DHCP relay (#399) 2017-03-16 10:40:33 -07:00
Marian Pritsak
4c65682478 [orchagent]: Add swssloglevel shortcut in base image (#386)
Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-03-07 23:00:58 -08:00
Taoyu Li
bd6bf1ff9a [config] [oneimage & dhcp relay docker] Move ntp, rsyslog, and dhcp server information into minigraph (#374)
Move DHCP, rsyslog, and NTP server information into minigraph


* Fix dhcp relay template according to CR
2017-03-06 12:41:26 -08:00
Joe LeVeque
5dafa907b2 [dockers]: Add base image files to syncd-brcm, database and teamd (#380) 2017-03-06 12:22:42 -08:00
Min Yao
b9c624520e Support centec platform (#376) 2017-03-04 02:17:38 -08:00
Nadiya
701d5ddb8a Add cavm saiserver (#137) 2017-03-04 01:56:41 -08:00
lguohan
80e3dc0df7 [device]: add missing sai profile and minigraph for the supported devices (#362)
change orchagent start.sh to use mounted hwsku directory
2017-03-02 23:53:20 -08:00
Shuotian Cheng
f9d8137975 [teamd]: Add redis-tools as the dependency of docker-teamd and fix bugs (#363)
- Fix the if condition bug to wait till PORT_TABLE:ConfigDone before start

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-02 18:07:43 -08:00
Shuotian Cheng
f06dc5d3f9 [teamd]: Update the start.sh script to clean up the docker state (#351)
This change should be temporary because the current teamd cannot
re-create net devices acrosss restart. Basically, it will fail
when there're files in /var/run/teamd/ folder or the previously
created net devices are still there. Thus, the current workaround
is to remove the obsolete files to restart the docker-teamd.

This workaround cannot resolve the swss restart issue. Before
restarting swss, docker teamd needs to be stopped manually. After
swss starts, docker teamd needs to be restarted manually.

This change will only make sure that rebooting the switch will
make the switch at the correct state.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-02 15:59:16 -08:00
pavel-shirshov
bac738f91f Add bgp container with gobgp (#358)
* Add go-1.7 into docker-slave

* Create container docker-fpm-gobgp with gobgpd inside
2017-03-02 11:33:46 -08:00
Shuotian Cheng
2a2af6a44e [orchagent]: Update start.sh to combine td2 qos/buffers config (#344)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-01 18:23:28 -08:00
Taoyu Li
903499000f [docker-teamd] fix a config bug introduced in #345 (#353) 2017-03-01 14:32:52 -08:00
Shuotian Cheng
ad1b581111 [docker]: Add -c option in teamd docker Dockerfile (#348)
CMD is not longer a file name but a command that needs to be executed,
thus /bin/bash is not enough for the entrypoint and -c is needed.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-28 13:36:59 -08:00
Taoyu Li
d9b1000e6c [cfggen] Add support in -v for jinja2 expression (#345)
* Add support in -v for jinja2 expression
* Format json output
2017-02-28 10:52:56 -08:00
lguohan
b21d26dfe0 [platform]: add support for Force10-Z9100 32x100G (#332)
* [platform]: add support for Force10-Z9100 32x100G

* update sonic-swss submodule

* [broadcom]: update broadcom sai/sdk
2017-02-24 08:35:11 -08:00
Taoyu Li
a16c780285 [teamd] Fix a bug in #305 that will break teamd (#329) 2017-02-23 14:47:51 -08:00
pavel-shirshov
151a7d2a90 Apply buffer/qos configuration for mlnx platform (#321) 2017-02-23 11:21:11 -08:00
Taoyu Li
95ad5c79fd Fix the reference in docker-snmp-sv2 to deprecated alias_map.json (#320) 2017-02-22 14:28:37 -08:00
kaiyu22
b5f9fcae99 [platform]: ingrasys-s9100: Add ingrasys switch s9100 (#318)
Signed-off-by: Sam Yang <yang.kaiyu@gmail.com>
2017-02-22 02:15:39 -08:00
antonpatenko
a2b4bcbb61 [docker-base]: Enabled common debug packages installation. (#292) 2017-02-21 19:04:43 -08:00
Samuel Angebault
f57fd0bee8 [platform] Add support configurations files for DCS-7060CX-32S (#313) 2017-02-21 13:37:07 -08:00
Taoyu Li
073c28bf15 Move template files to /usr/share/sonic/templates (#305) 2017-02-18 17:50:29 -08:00
pavel-shirshov
a845740543 [All Dockerfiles]: Prevent apt asking questions on the console (#300)
Add noninteractive setting into every Dockerfile in the repo

Signed-off-by: Pavel Shirshov pavelsh@microsoft.com
2017-02-16 21:48:49 -08:00
Shuotian Cheng
877291ae91 [docker-teamd]: Automatically start the processes after host interfaces are created (#278)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-15 08:54:10 -08:00
Taoyu Li
7e9f6b4e12 Remove /etc/default/snmpd from snmp docker (#294) 2017-02-13 17:52:29 -08:00
Taoyu Li
ecc9f0c6d8 Properly pull vlan subnet from minigraph when writing bgpd.conf (#293) 2017-02-13 14:17:22 -08:00
antonpatenko
6a6f5a66a8 [docker-base]: unsubmodule docker-base. (#275)
Convert docker-base from submodule into a regular directory.
2017-02-12 18:02:04 -08:00
Qi Luo
815bf53de7 snmpd disables inetCidrRouteTable module (#286) 2017-02-10 10:40:09 -08:00
Qi Luo
822680d21b Build python3.6 deb packages and install them into docker-snmp-sv2 (#245) 2017-02-08 22:02:21 -08:00
lguohan
b6753e7960 [docker-config-engine]: introduce docker sonic config engine (#274)
* [docker-config-engine]: introduce docker sonic config engine

sonic config engine provide the sonic configure engine for all sonic
dockers that rely on the engine to generate runtime configuration.
2017-02-07 18:11:19 -08:00
Oleksandr Ivantsiv
53a9792014 [Makefile]: Add possibility for docker containers to install files to base image (#240)
- Add vtysh/lldpctl/sensors to baseimage
2017-02-07 00:33:20 -08:00
Joe LeVeque
522585aadf [docker-fpm]: T0 devices receive routes containing one occurrence of their own ASN (#271) 2017-02-07 00:28:30 -08:00
Joe LeVeque
12fa107645 Revert "Revert "Conform with new Docker build method"" (#264) 2017-02-06 08:40:57 -08:00
Taoyu Li
b2e44834f1 SNMP will now bind on 0.0.0.0 if mgmt ip not specified in minigraph (#253)
Fix an issue that snmp will fail to start if mgmt ip is not specified in minigraph (e.g. default graph in oneimage where mgmt ip is from DHCP)
2017-02-03 21:01:34 -08:00
lguohan
68270f36df [build break]: Revert "Conform with new Docker build method" (#257) 2017-02-03 20:15:55 -08:00
Shuotian Cheng
00fe0784b4 [Broadcom]: Update Broadcom debian packages and m3000-r0 m3000-r1 config.bcm files (#251)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-03 19:44:00 -08:00
Taoyu Li
6f5262bc2c Fix config bug in snmp (#252)
1. Modify snmp user to Debian-snmp to fit snmpd 5.7.3
2. Fix a bug that cause sysLocation to be missing from snmpd.conf
2017-02-03 17:39:09 -08:00
Joe LeVeque
76cfd672d1 Conform with new Docker build method (#250) 2017-02-03 14:21:57 -08:00
Joe LeVeque
b85c8dc89e Fix isc-dhcp-relay template (#246) 2017-02-02 21:10:07 -08:00
Taoyu Li
60e1fc3c98 ONEImage - Read all platform dependent information from sonic-config-engine (#238)
Read all platform dependent information from sonic-config-engine
2017-02-02 20:34:34 -08:00
Joe LeVeque
4cd3d31946 Update APT package lists before first attempt to install (#241)
* Update APT package lists before first attempt to install
* Move setting of environment variable before first call to apt-get
2017-02-02 11:12:04 -08:00
Joe LeVeque
61d4509f0b Add new sonic-config dependencies to dhcp_relay Dockerfile (#237) 2017-02-01 21:29:50 -08:00
Andriy Moroz
ddbda4ce2e docker: Add ipaddress python module to the PTF docker (#231)
Needed for the FIB test
2017-02-01 12:49:43 -08:00
Taoyu Li
1c074367a1 Add daemon file which was missing in docker-fpm (#229) 2017-02-01 00:10:40 -08:00
Taoyu Li
be8ed80554 teamd: Use 75% links upperbound as min-links (#224) 2017-01-30 17:33:03 -08:00
Oleksandr Ivantsiv
f2eed8f8a0 Added support of ONIE version 2016.11-5.1.0001 for Mellanox platforms. (#218) 2017-01-29 11:34:12 -08:00
Oleksandr Ivantsiv
34ea91349c one image implementation (#215)
* Single image

* Fix review comments

* Update syncd service. Add HW mgmt to Mellanox single image.

* Add single image template for Broadcom platform.

SKU should be provided during configure:
make configure PLATFORM=broadcom SKU=Force10-S6000

* Add single image template for Cavium platform.

SKU should be provided during configure:
make configure PLATFORM=cavium SKU=AS7512

* Add description to sonic_debian_extension.j2 file.
2017-01-29 11:33:33 -08:00
Joe LeVeque
c18b65bc16 Refactor DHCP relay docker in sonicv2 style (#217)
* Refactor DHCP relay docker in sonicv2 style
2017-01-26 23:36:58 -08:00
Joe LeVeque
608980524f [docker]: Install dpkt Python package in PTF docker (#216) 2017-01-25 18:19:15 -08:00
Taoyu Li
e87498d16d Add platform config for 7050 and 6100 (#212)
* Add platform config for 7050 and 6100

* allow certain platform to have no sensors.conf file in sonic-cfggen
2017-01-25 18:18:25 -08:00
Taoyu Li
1b49499b65 [docker]: Add a status file to mark that the file is generated by sonic-config-engine (#211) 2017-01-24 19:16:55 -08:00
Taoyu Li
9b940c3b3d Remove apt purge which wrongly remove sonic-config-engine (#204) 2017-01-21 10:30:39 -08:00
Joe LeVeque
78f11a7ff3 [docker]: Make line breaks consistent in DHCP relay Dockerfile (#203) 2017-01-20 22:33:11 -08:00
Oleksandr Ivantsiv
ea65962fe4 Fix compilation issue. (#198)
Fix docker-platform-monitor compilation issue.
Update .gitignore file
2017-01-20 13:55:42 -08:00
Taoyu Li
4fe1bdcf87 sonic-cfggen with sonicv2 dockers (#190)
Add a sonic-config-engine to help generate config file based on minigraph and other data on runtime. Modify fpm, teamd, lldp, snmp, and platform-monitor docker to use sonic-config-engine to generate config in docker upon load.
2017-01-19 20:56:26 -08:00
Oleksandr Ivantsiv
80d0d2d43b Reduce docker images size. (#196)
* Reduce docker images size.

Install only required dependencies.

* Update Dockerfile.j2
2017-01-19 12:19:21 -08:00
Pavel Shirshov
86f5c19643 [docker]: docker-ptf doesn't wait until eth3 is up
This is done inside ptf agent now
2017-01-17 14:40:35 -08:00
marian-pritsak
43b0e502de Add recipe for ptf docker 2017-01-05 14:39:07 -08:00
Marian Pritsak
61496a5959 [docker]: Remove obsolete dockers (#175)
docker-syncd-mlnx and docker-syncd-cavm were moved
to platform directories
2016-12-30 13:35:04 -08:00
Marian Pritsak
cb13166596 [docker-teamd]: rename docker-team to docker-teamd (#174) 2016-12-30 13:34:38 -08:00
Marian Pritsak
66aebb329c [docker]: Change templating method to jinja2 (#115) (#153)
Move from sed to jinja2 for more readability.
2016-12-23 15:22:06 -08:00
Qi Luo
a01d484087 [docker-base] Update git submodule hash (#150) 2016-12-21 20:30:26 -08:00
Qi Luo
2380359059 Add apt update in Dockerfile, since cached lists file may be obsoleted (#149)
[docker]: Add apt update in Dockerfile, since cached lists file may be obsoleted
2016-12-21 18:20:46 -08:00
lguohan
c07e54c3e1 [platform-monitor] update apt cache (#148) 2016-12-21 15:16:18 -08:00
lguohan
3c01b398f4 [docker]: add support for Force10-S6100 (#145) 2016-12-20 13:29:00 -08:00
Qi Luo
8886fc8286 Fix build: install libjemalloc1 when build docker images (#128)
* Fix build: install libjemalloc1 when build docker images

* (comment)
2016-12-15 16:48:22 -08:00
lguohan
98e3479e26 build orchagent and syncd docker on broadcom platform (#118)
* build orchagent and syncd docker on broadcom platform
2016-12-14 14:33:07 -08:00
Marian Pritsak
e6aadeb9f8 Update Dockerfile.template (#95) 2016-12-06 06:32:12 -08:00
Marian Pritsak
e9098b99fb Build improvements (#80)
* Build improvements

Fix dependencies
Add configuration options
Automatically build sonic-slave

* Set default number of jobs to 1

* Auto generate target/debs directory

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Automatically remove sonic-slave container after exit

* Silence clean-logs

* Add SONIC_CLEAN_TARGETS to clean

* Use second expansion for clean dependencies

* Avoid creating empty log files

Remove log file on flush instead of writing empty string

* Put dpkg install inside lock

Use same lock as debian install targets do to avoid
race condition in dpkg installation

* Remove redirect to log from docker save

* Add .platform dependency to all and clean targets

* Remove header and footer from clean targets

* Disable messages for SONIC_CLEAN_TARGETS

* Exit with error if dpkg-buildpackage fails

* Set new location for debs in build_debian.sh

* Add recipe for docker-database

* Update redis version to 3.2.4

* Add support for p4 platform

* Add recipe for snmpd

* Add slave targets to phony and make all target default

* Remove build.sh from thrift

* Add versioning to team, nl, hiredis and initramfs

* Change sonic-slave to support snmpd build from sources

* Remove src/tenjin

* Add recipe for lldpd

* Add recipe for mpdecimal

* Remove hiredis directory on rebuild

* Add recipe for Mellanox hw management

* Remove generic image from all targets for Mellanox

* Add support for python wheels

* Add lldp and snmp dockers

* Sync docker-database to include libjemalloc

* Fix asyncsnmp variable name

* Change default build configuration

Redirect output to log files by default
Set number of jobs to nproc value
Do not print dependencies
Fix logging to print log of failed job into console

* Use docker inspect to check if sonic-slave image exists

* Use config in slave.mk directly

* Disable color output by default

* Remove sswsdk dependency from lldp and snmp dockers

* Fix comment in py wheels install targets

* Add dependency between two versions of sswsdk

* Add containers to mellanox platform

lldp, snmp and database containers

* Add recipe for team docker

* Add team docker to mellanox platform

* Encrypt password passed to build_debian.sh

* Update mellanox SAI version

Make version and revision setting only in main recipe

* Fix error handling in makefiles

As makefiles use .ONESHELL we should add -e
option to shell options in order to exit after any command fails

* Add recipe for platform monitor image

* Add platfotm monitor to mellanox targets

* Ignore submodules when building base image
2016-12-05 11:12:19 -08:00
Taoyu Li
55ee247f02 Change to thrift 0.9.3 for docker-mlnx-sswstncd-rpc, docker-syncd-mlnx-rpc, and docker-syncd-rpc (#86) 2016-11-29 17:39:30 -08:00
Taoyu Li
c3257e1a9c Modify docker_ptf and docker_saiserver_mlnx to use libthrift0.9.3 (#84) 2016-11-29 14:16:55 -08:00
Denys Haryachyy
57ff53ea60 docker-syncd-cavm : Added synchronization between syncd and redis (#79) 2016-11-28 12:14:27 -08:00
mbrar
691b787811 dockers: Add DHCP Relay docker (#38) 2016-11-23 16:09:43 -08:00
Qi Luo
5621082dbb LLDP docker: Remove outdated dependency (#73) 2016-11-21 17:44:16 -08:00
Pavel Shirshov
af5c61c73a Add set rcv buffer for syncd rpc (#64) 2016-11-14 12:03:56 -08:00
Qi Luo
21c8322055 Change redis conf: listen on unix socket (#66)
By default, redis-server is listening on localhost TCP port. This
change will make it also listen to the domain socket (unix socket),
which will have better client-server performance.
2016-11-14 11:29:31 -08:00
Qi Luo
f8524e74f5 Fix dependencies in Dockerfiles (#65) 2016-11-11 12:09:25 -08:00
lguohan
5c44521c5f update asic firmware version to 13.1200.0116 2016-11-09 19:50:53 -08:00
Oleksandr Ivantsiv
0d10feca11 Added libteam5 package to orchagent docker to resolve instalation dependencies. (#62) 2016-11-07 08:57:59 -08:00
Oleksandr Ivantsiv
0b80c625c4 Fix issue with team docker build (#59)
Added required docker-team dependency to Makefile to copy dep packages
to dockers/docker-team/deps/ directory. Changed order of deb packages
installation to fix dependency issue.
2016-11-04 10:17:12 -07:00
Taoyu Li
ce895ee228 Add ptf docker with saithrift installed (#58) 2016-11-03 14:11:11 -07:00
Pavel Shirshov
aed2ab5b7a Install supervisor to docker-ptf 2016-11-02 18:27:27 -07:00
Qi Luo
e89c7be76d Install redis-server>=3.2.4 in docker-database image (#46)
* Install redis-server>=3.2.4

* Reformat

* Build redis from source code

* Add Makefile var: REDIS_VERSION
2016-10-31 21:50:59 -07:00
Pavel Shirshov
ac64c1c29b Address CR suggestions 2016-10-31 14:48:27 -07:00
Pavel Shirshov
62af66a1f0 Add a pause before pushing port configuration 2016-10-31 14:48:27 -07:00
Pavel Shirshov
30438bb987 update port configurations in lldpd as soon as port created 2016-10-31 14:48:27 -07:00
Taoyu Li
b2322d1748 Modification to saiserver-brcm/Dockerfile (#45) 2016-10-28 15:19:51 -07:00
thomasbo
135ba232ca SNMP/LLDP Containers: Sonic V2 Support (#41)
* Adding support for V2 in SNMP/LLDP (-sv2 postfix)
* Fixes for V1 containers: logging
* Fixes for V1 LLDP: limit LLDP to Front-panel or MGMT interfaces.
2016-10-28 15:19:29 -07:00
Taoyu Li
23542f3e02 Add docker configuration for saiserver-brcm (#44) 2016-10-27 18:02:32 -07:00
Shuotian Cheng
c4630f54c7 Dockerfile: Add bridge-utils to p4 docker (#43) 2016-10-26 21:27:31 -07:00
Shuotian Cheng
515346abf4 Dockerfile: Add libsaimetadata dependency (#42)
* Dockerfile: Add libsaimetadata dependency
* Makefile: Add saimetadata
2016-10-26 15:19:41 -07:00
pavel-shirshov
293db92550 Apply swss configuration in a deterministic way (#39)
* Apply swss configuration in determine way
* Apply configs in small chunks
* Add qos settings for Arista
2016-10-24 14:05:56 -07:00
Shuotian Cheng
93852194eb start.sh: Remove rsyslogd.pid file on mlnx syncd docker (#35) 2016-10-19 14:39:44 -07:00
Marian Pritsak
51fa77fa8d Automatic fw upgrade for mlnx platform (#31)
* Automatic fw upgrade for mlnx platform

Implement script for firmware upgrade to required version
Add firmware binary and script to ops-syncd-mlnx container
Add pciutils and usbutils to sonic-generic.bin

* Update firmware installation message

It is possible to do both upgrade and downgrade
Change "Upgrading" to "Installing compatible version"

Signed-off-by: marian-pritsak <marianp@mellanox.com>
2016-10-18 11:40:20 -07:00
lguohan
d5696f742d Add support for Arista a7050 qx32 platform (#30) 2016-10-09 18:05:24 -07:00
Shuotian Cheng
dcf691ecaa Add libnl-nf-3-200 to docker-team (#28) 2016-10-09 14:40:55 -07:00
Shuotian Cheng
4373c518cf libteam: Adding build.sh script and docker-team (#18) 2016-10-07 10:41:44 -07:00
Oleksandr Ivantsiv
28fa109e42 Changed docker-syncd-mlnx docker-saiserver-mlnx dependencies to use libnl provided by build system instead of sx-libnl. (#26) 2016-10-05 11:18:37 -07:00
Pavel Shirshov
94ae04d2a7 Use cffi version 1.7.0. Newest versions doesn't work with nanomsg 2016-10-04 16:36:02 +00:00
Denys Haryachyy
144114c301 Makefile : Added swss and libnl into cavm orchagent dependencies (#24)
* Makefile : Added swss and libnl into cavm orchagent dependencies

* docker-orchagent/start.sh : Removed Cavium specific copp config
2016-10-02 19:25:58 -07:00
lguohan
8bf3ae9ae9 Chang port_config.ini directory for s6000 (#19) 2016-09-30 04:20:17 +00:00
lguohan
7c0ff3e9e3 build p4-based sonic docker (#14)
* add docker-sonic for p4 switch

* update build instructions
2016-09-28 11:15:02 -07:00
Denys Haryachyy
9c3b7ccaf7 Add support for cavium SAI (#5) 2016-09-25 21:48:25 -07:00
lguohan
146c88100b add saiserver docker for mlnx sn2700 platform (#12)
* add saiserver docker for mlnx sn2700 platform
2016-09-23 21:23:43 -07:00
Shuotian Cheng
623fdbf7f6 Updating docker-orchagent/syncd Dockerfile and start.sh (#9) 2016-09-22 16:16:26 -07:00
Qi Luo
cc7f15094c Squashed merge master 2016-09-09 17:53:41 -07:00
Qi Luo
e4bd20c18a Squash merge master (11de390) 2016-08-04 10:39:33 -07:00