Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1038 commits
Select commit Hold shift + click to select a range
8866258
Code cleanup.
guoshiuan May 31, 2024
203d118
Revise ports tests.
guoshiuan May 31, 2024
a5f186c
Merge pull request #422 from openconfig/vlan
guoshiuan May 31, 2024
c2ed89b
Fake qos (#424)
DanG100 Jun 5, 2024
b9b0d01
Add layer2 multicast and multicast group servers.
guoshiuan Jun 5, 2024
b548015
Merge pull request #425 from openconfig/l2mc
guoshiuan Jun 6, 2024
31d51e7
debug.
guoshiuan Jun 6, 2024
c6c7f5e
Update pathz.go (#426)
marcushines Jun 6, 2024
41b73cf
Make BGP prefix checking less flaky (#423)
wenovus Jun 6, 2024
1c4ad92
Allow to remove default VLAN and its members.
guoshiuan Jun 11, 2024
6917ed4
Remove/revise code.
guoshiuan Jun 11, 2024
71cf66a
Update ondatra and others (#427)
DanG100 Jun 11, 2024
a6d6190
Refactor policytest to have one test case per prefix rather than (pre…
wenovus Jun 11, 2024
d13b9d0
Merge branch 'main' into refactor-policytest
wenovus Jun 11, 2024
8fa75f7
Keep default VLAN.
guoshiuan Jun 11, 2024
6c64f68
Merge branch 'main' into vlan
guoshiuan Jun 11, 2024
451672d
[lint] use NewClient instead of deprecated grpc.Dial/DialContext
wenovus Jun 11, 2024
7ce02f2
convert more to grpc.NewClient
wenovus Jun 11, 2024
cba0e46
remove unused ctx timeout
wenovus Jun 11, 2024
e60fbff
Increase timeout for ZAPI test
wenovus Jun 11, 2024
1179512
Update GoBGP
wenovus Jun 12, 2024
021b040
lint and timeout (#432)
DanG100 Jun 12, 2024
fd11acb
Merge pull request #428 from openconfig/vlan
guoshiuan Jun 12, 2024
d2cad2b
keep sysrib on grpc.Dial
wenovus Jun 12, 2024
5944104
Merge branch 'main' into dial-newclient
wenovus Jun 12, 2024
7edf8c9
remove an exclusion
wenovus Jun 12, 2024
9b6e2c7
Make exclude rule more specific
wenovus Jun 12, 2024
683cacf
Merge pull request #430 from openconfig/dial-newclient
wenovus Jun 12, 2024
2b3b9f5
Merge branch 'main' into refactor-policytest
wenovus Jun 12, 2024
fc2158c
Merge branch 'refactor-policytest' into update-gobgp
wenovus Jun 12, 2024
8f9b06f
Support BGP policy's origin attributes
wenovus Jun 13, 2024
8e263de
Support BGP policy's set-next-hop and next-hop-in leaves
wenovus Jun 14, 2024
8ecb34c
Merge pull request #429 from openconfig/refactor-policytest
wenovus Jun 17, 2024
8b01965
Merge pull request #431 from openconfig/update-gobgp
wenovus Jun 17, 2024
6985ec8
Merge branch 'main' into support-origin-attributes
wenovus Jun 17, 2024
2b57113
Bulk remove and implement more remove RPC (#436)
DanG100 Jun 17, 2024
51f604f
Merge pull request #434 from openconfig/support-origin-attributes
wenovus Jun 18, 2024
bebb61a
Merge pull request #435 from openconfig/support-set-nexthop
wenovus Jun 18, 2024
f6658ca
Deinternalize kernel package (#437)
DanG100 Jun 18, 2024
8c5e900
Do not rely on enum values in c++ conversion code (#438)
DanG100 Jun 20, 2024
3b41cb0
ACL code gen enhancements (#439)
DanG100 Jun 24, 2024
7aae358
UDF ACL impl (#440)
DanG100 Jun 26, 2024
aa1b8e1
Add documentation for BGP support
wenovus Jun 27, 2024
270454a
Try to disable indenting lint
wenovus Jun 27, 2024
407ec33
Merge pull request #441 from openconfig/bgp-readme
wenovus Jun 27, 2024
b341d30
Add support for AS path options
tiborschneider Jul 2, 2024
99ad603
Implement own AS path test case
tiborschneider Jul 2, 2024
f7f15d5
Fix format and buildfile
tiborschneider Jul 3, 2024
eb45b9f
Add missing commas, fix formatting
tiborschneider Jul 3, 2024
268cb75
Merge pull request #443 from tiborschneider/main
wenovus Jul 3, 2024
93e2826
Implement bulk remove (#442)
DanG100 Jul 8, 2024
af0bd5b
Improve GoBGP documentation and add comments on how to run specific p…
wenovus Jul 9, 2024
5ecb95b
fix lint
wenovus Jul 9, 2024
86991a3
Merge pull request #444 from openconfig/bgp-readme
wenovus Jul 9, 2024
ca98ad8
Set PortVlanId port attribute and use it for VLAN tagging.
guoshiuan Jul 10, 2024
0625e1f
Bump google.golang.org/grpc from 1.64.0 to 1.64.1 (#445)
dependabot[bot] Jul 10, 2024
8d57bb3
Merge pull request #446 from openconfig/vlan-dbg
guoshiuan Jul 10, 2024
79a8bf0
Quick findtrace script (#447)
DanG100 Jul 11, 2024
412064a
Update pipeline and fix trap (#448)
DanG100 Jul 11, 2024
d411abf
Add support for plumbing gRIBI server options through lemming.
robshakir Jul 12, 2024
39507a1
Move to development gribigo commit.
robshakir Jul 12, 2024
b7aa471
Fix syntax error.
robshakir Jul 12, 2024
9934aad
Fix BUILD.
robshakir Jul 12, 2024
0bf85eb
Fix typo.
robshakir Jul 12, 2024
42c5d35
Fix BUILD again.
robshakir Jul 12, 2024
3984457
gofmt.
robshakir Jul 12, 2024
2c43824
Decrement TTL after IngressACL. (#449)
guoshiuan Jul 12, 2024
06cf347
Merge branch 'main' into gribi-opts
robshakir Jul 12, 2024
8ec146e
Fix BUILD and test.
robshakir Jul 12, 2024
5b414a2
Fix packet parsing (#452)
DanG100 Jul 12, 2024
3196e58
Merge branch 'main' into gribi-opts
robshakir Jul 12, 2024
8bc4aab
Switch to a cleaner gRIBI options passing mechanism.
robshakir Jul 16, 2024
8502fd4
Merge pull request #451 from openconfig/gribi-opts
robshakir Jul 16, 2024
e9369ce
Initial policer implementation (#455)
DanG100 Jul 18, 2024
8e0bf97
Implement L2MC via ACL redirect. (#454)
guoshiuan Jul 19, 2024
e0fd3d5
Add flags for the apigen command (#457)
DanG100 Jul 22, 2024
cc635e7
Patch new next hop group API (#456)
DanG100 Jul 22, 2024
2dd209f
Merge all misc commands into single CLI (#458)
DanG100 Jul 22, 2024
a41b3f7
Support ecmp with member nhg type (#459)
DanG100 Jul 25, 2024
42d8620
Address infinite loop when recursively resolving routes.
robshakir Jul 31, 2024
a759a5e
Merge pull request #460 from openconfig/robjs-recursive
robshakir Jul 31, 2024
bb4425b
Fix generated code and some improvements (#461)
DanG100 Aug 1, 2024
2d9f20e
Invert ACL priority (#462)
DanG100 Aug 5, 2024
cfc399e
Export NextHop in BGP attribute map
tiborschneider Aug 6, 2024
906d014
Fix lints
tiborschneider Aug 6, 2024
31dedbe
Read the NEXT_HOP and the MP_REACH_NLRI attributes
tiborschneider Aug 6, 2024
06516d0
Multiple next-hops for MP_REACH_NLRI IPv6 unicast
tiborschneider Aug 7, 2024
f8c9710
Stub implementations for APIs (#464)
DanG100 Aug 8, 2024
503e57f
Merge pull request #463 from tiborschneider/main
tiborschneider Aug 9, 2024
df30a7e
Support log action and filter IPs (#465)
DanG100 Aug 12, 2024
546e4ac
Add vlan reset. (#466)
guoshiuan Aug 19, 2024
0375b0e
deprecate some flags for lucius (#467)
DanG100 Aug 27, 2024
4ef982b
Registry for dataplane protocols. (#468)
guoshiuan Aug 30, 2024
1224b3d
Drop TTL == 0 packets (#469)
DanG100 Sep 3, 2024
471a366
Add protocol registry to the server. (#470)
guoshiuan Sep 4, 2024
71320e6
Remove deprecate port config and packetio (#471)
DanG100 Sep 5, 2024
7126f84
Support for FEC mode emulation (#472)
DanG100 Sep 9, 2024
70d6b3d
Log trace ID if it exists (#474)
DanG100 Sep 12, 2024
6627c8d
Initial tracing support for lucius (#475)
DanG100 Sep 12, 2024
cf33039
Some logging fixes (#476)
DanG100 Sep 12, 2024
0b67db7
Migrate saiserver to slog (#477)
DanG100 Sep 16, 2024
2f9ec57
Revise the interface of a protocol. (#473)
guoshiuan Sep 18, 2024
efc1b32
Don't forward packets with ttl1 (#478)
DanG100 Sep 18, 2024
a008805
Option to export traces to GCP (#479)
DanG100 Sep 24, 2024
c7ea897
Fixes for genetlink (#480)
DanG100 Oct 3, 2024
24c9257
Minor build fix (#481)
DanG100 Oct 7, 2024
a1f312f
Send genetlink packet to netdev too (#482)
DanG100 Oct 11, 2024
9a31d1d
Tweaks to ip filtering (#483)
DanG100 Oct 18, 2024
e558846
Copy trap id on mirror (#484)
DanG100 Oct 18, 2024
30bd507
Switch to pcap library since it doesn't mangle vlan header (#485)
DanG100 Oct 21, 2024
fb2dfe2
Update lemming base image (#487)
DanG100 Oct 24, 2024
5987d36
Add native cloud logging support (#486)
DanG100 Oct 24, 2024
22f7613
Update operator image (#489)
DanG100 Oct 24, 2024
b2a4832
Update operator manifest (#490)
DanG100 Oct 25, 2024
9453019
Support copy action in ACL (#488)
DanG100 Oct 25, 2024
f81ef11
Support icmp type for acl (#491)
DanG100 Oct 28, 2024
6a07d7b
ACL bug fixes + update to Go 1.23 (#492)
DanG100 Oct 30, 2024
f63a2c1
Support route metadata (#493)
DanG100 Nov 1, 2024
7ad7adc
apigen refactor part 1 (#494)
DanG100 Nov 6, 2024
52ed0d0
Support u32 acl (#495)
DanG100 Nov 7, 2024
e0ada9c
Update to go 1.21 (#498)
DanG100 Nov 12, 2024
cf7820c
Inital MPLS parsing implementation (#497)
DanG100 Nov 12, 2024
5f86cd5
disambiguate ip4 and uint32 acl field (#496)
DanG100 Nov 13, 2024
1384841
Merge proto and cc into common structs and split typeinfo file (#499)
DanG100 Nov 18, 2024
e49cd40
Generate server boilerplate (#500)
DanG100 Nov 18, 2024
28bd78a
Makefile for saiserver and add entrypoint API (#501)
DanG100 Nov 20, 2024
18fc679
Compile commands (#502)
DanG100 Dec 3, 2024
271c51e
Update to OC v5.0.0 (#503)
DanG100 Dec 5, 2024
b5fd453
Barebones MPLS over UDP encap tests (#504)
DanG100 Dec 9, 2024
02d2601
Add more yang files for OC (#505)
DanG100 Dec 10, 2024
54ae699
Add support for sub interfaces (#506)
DanG100 Dec 13, 2024
f16ef38
Test runner + example for dataplane tests (#507)
DanG100 Dec 13, 2024
8b2f354
Bump golang.org/x/crypto from 0.25.0 to 0.31.0 (#508)
dependabot[bot] Dec 13, 2024
401ef16
Add sai patch for bulk RIF ops (#511)
DanG100 Dec 19, 2024
8e038da
feat(servergen): add template for remove (#510)
abhishek-7 Dec 19, 2024
13afec2
RIF ops (#514)
DanG100 Dec 19, 2024
1857c60
try log (#513)
DanG100 Dec 19, 2024
ebfc91c
Initialise the unimplemented server given that gRIBI is embedded.
robshakir Jan 6, 2025
95526b1
Fix syntax error.
robshakir Jan 6, 2025
888127d
Add multicast and broadcast counter support to Lucius. (#512)
royyi8 Jan 6, 2025
0658390
Merge pull request #517 from openconfig/gribi-embed
robshakir Jan 6, 2025
95c9244
Update deps (#519)
DanG100 Jan 7, 2025
3a0bb55
Add codeowners (#521)
DanG100 Jan 7, 2025
3834282
Update gribi version and gribigo version in go.mod by using go get co…
tengyiG Jan 8, 2025
bdbdf90
Try to fix flakiness with this test (#518)
DanG100 Jan 8, 2025
2eef855
Add support for link up/down for packet handlers (#520)
DanG100 Jan 8, 2025
49df8a3
Send request to set oper status state for host interfaces.
royyi8 Jan 8, 2025
2332625
fix for lemming
DanG100 Jan 10, 2025
33318fc
test
DanG100 Jan 10, 2025
0ca7407
Merge pull request #525 from royyi8/host_intf_oper_status
DanG100 Jan 10, 2025
2822aa0
Make cpu stream more resilient
DanG100 Jan 14, 2025
9750302
Tests
DanG100 Jan 15, 2025
00e799b
feedback
DanG100 Jan 15, 2025
ad470a5
Merge pull request #526 from openconfig/pktstream
DanG100 Jan 15, 2025
2a3873d
default scheduler attributes
DanG100 Jan 21, 2025
e7dd633
Merge pull request #527 from openconfig/sched
DanG100 Jan 21, 2025
595f66c
wip
DanG100 Jan 22, 2025
b194db8
Initial encap control plane API
DanG100 Jan 22, 2025
60f9c3b
lint
DanG100 Jan 23, 2025
30f803b
Merge pull request #528 from openconfig/sysrib-api
DanG100 Jan 23, 2025
ed3ea50
Reconcilation for encap headers
DanG100 Jan 23, 2025
c3804b0
Fix issues when tls config is nil
DanG100 Jan 24, 2025
c99174e
Merge pull request #530 from openconfig/cert-nil
DanG100 Jan 24, 2025
0c1eab6
Add log statement to gnoi reboot for debugging
lifuzhang1108 Jan 25, 2025
a295070
Merge pull request #531 from lifuzhang1108/main
DanG100 Jan 27, 2025
0b924fe
encap accumulation
DanG100 Jan 27, 2025
8552d8a
Fix order dependent test
DanG100 Jan 27, 2025
8a26619
Merge pull request #532 from openconfig/order-fix
DanG100 Jan 28, 2025
7b2fac3
feedback
DanG100 Jan 28, 2025
5a6337b
Merge pull request #529 from openconfig/reconcile
DanG100 Jan 28, 2025
e5b7207
Allow passing extra to all lemmings
DanG100 Jan 29, 2025
2f9ca2c
Bump github.com/golang/glog from 1.2.2 to 1.2.4
dependabot[bot] Jan 29, 2025
c8708e4
feedback
DanG100 Jan 29, 2025
cdbe9f2
Merge pull request #534 from openconfig/op-args
DanG100 Jan 29, 2025
d161163
Merge pull request #535 from openconfig/dependabot/go_modules/github.…
DanG100 Jan 30, 2025
8489a77
include app and topo labels if missing (#536)
DanG100 Jan 30, 2025
f5c4cf8
Protect pktiohandler maps with mutex (#537)
DanG100 Jan 30, 2025
185a6ff
Tune lemming and lucius logging to more reasonable (#538)
DanG100 Jan 31, 2025
2e5247d
gribi encap (#533)
DanG100 Jan 31, 2025
290b4fd
fix delete for hostif (#539)
DanG100 Feb 1, 2025
031aa90
Clean up instrumentation (#542)
DanG100 Feb 12, 2025
e1b72e1
Misc fix for encap test (#544)
DanG100 Feb 14, 2025
e62cff7
Add more telemetry labels (#545)
DanG100 Feb 15, 2025
9dca0eb
Updated gnmi, gribi.go and go module for mplsoudpv6 (#547)
tengyiG Feb 18, 2025
b9ff6ac
Fix target handling (#546)
DanG100 Feb 18, 2025
80a716b
Include ca-certs for lemming release (#548)
DanG100 Feb 19, 2025
511626b
gribi aft replace and delete (#550)
DanG100 Feb 25, 2025
df77af7
Initial fault interceptor implementation (#551)
DanG100 Feb 25, 2025
7211b47
Improvements to fault server (#553)
DanG100 Mar 3, 2025
76df4c5
Added mpls over udp integration test under lemming (#552)
tengyiG Mar 4, 2025
5eb977e
Added packet validations for mpls over udp tests required by TE18.1.1…
tengyiG Mar 10, 2025
6ef4995
Target egress (#554)
DanG100 Mar 10, 2025
b56bfce
basic fault client and sample test (#556)
DanG100 Mar 10, 2025
25d8a01
Set autoneg SAI attribute in Lucius. (#557)
royyi8 Mar 11, 2025
c140b54
add reconciliation for subinterfaces (#559)
DanG100 Mar 19, 2025
2421059
Add p4rt flag (#560)
DanG100 Mar 20, 2025
2f9b11c
Make most routing support vrfs and subinterfaces (#562)
DanG100 Mar 21, 2025
bce9028
Update gribigo and ygot (#566)
DanG100 Apr 29, 2025
8cc2005
Adjust log levels genetlink package (#568)
DanG100 May 5, 2025
1aa89ff
Support dynamic VRF creation (#567)
DanG100 May 5, 2025
c02031f
Bump github.com/osrg/gobgp/v3 (#565)
dependabot[bot] May 6, 2025
b3a227c
Fix IP acl assignment and more ip validation check later (#571)
DanG100 May 6, 2025
2a276e6
Bump golang.org/x/net from 0.34.0 to 0.38.0 in /operator (#564)
dependabot[bot] May 8, 2025
e977028
Fix gobgp version (#573)
DanG100 May 8, 2025
f53354f
Mplsoudpscale profile1 (#572)
tengyiG May 9, 2025
ba8a003
Update gobgp (#574)
DanG100 May 15, 2025
1da3924
Add setbootconfig api into lemming (#561)
marcushines May 23, 2025
c4c2cab
Implement component-level reboot functionality (#575)
mtr002 Jun 5, 2025
1d50133
Implement supervisor switchover functionality (#578)
mtr002 Jun 10, 2025
5636484
Initial commit for kill process simulation (#579)
mtr002 Jun 11, 2025
a214b83
Add iproute2 and procps package to Lucius dataplane container (#577)
royyi8 Jun 18, 2025
bd76330
Fix: Improve component path flexibility for Arista (#581)
mtr002 Jun 24, 2025
dff1c12
Upgrade Lucius SAI version to 1.14. (#583)
royyi8 Jul 15, 2025
1268fac
Add configuration support for Lemming device (#582)
mtr002 Jul 17, 2025
ea3554e
Implement gNOI ping operation (#584)
mtr002 Jul 22, 2025
8ac746e
Bump golang.org/x/oauth2 from 0.18.0 to 0.27.0 in /operator (#585)
dependabot[bot] Jul 22, 2025
3ddfae2
Bump golang.org/x/oauth2 from 0.25.0 to 0.27.0 (#587)
dependabot[bot] Jul 22, 2025
8f6c5f6
Update README.md (#589)
deepakgouda Jul 29, 2025
6149fb9
Implement packet link qualification (#588)
mtr002 Jul 31, 2025
0136953
Update README.md (#590)
deepakgouda Jul 31, 2025
8b28ab9
Add gNOI file service implementation (#592)
mtr002 Aug 6, 2025
7600b98
Add fault injection management and configuration support (#591)
mtr002 Aug 6, 2025
4fb0ad7
Report netlink.OperLowerLayerDown status as SAI_OPER_STATUS_DOWN. (#594)
royyi8 Aug 13, 2025
6bc75c2
Create dataplanedebug.md (#595)
sonikajindal Aug 14, 2025
87335f6
Fix concurrent read write access in entries map (#596)
royyi8 Sep 10, 2025
6db5d8f
Add generic Alpine type to ssi_attribute_value_t union. (#597)
royyi8 Sep 24, 2025
efcd9c8
Adding renovate config
prinikasn Oct 10, 2025
0612a39
Return success at bulk set/get operations of next hop group (#600)
tejatamboli02 Oct 16, 2025
0cc2242
Add lag object to SAI server (#599)
royyi8 Oct 17, 2025
eb03d3c
Bazel v8 upgrade and migration to bzlmod
swufygoog Oct 22, 2025
2faa8ec
Remove comment in MODULE.bazel
swufygoog Oct 22, 2025
79057da
Fix README.md command
swufygoog Oct 22, 2025
f55e0ab
Fix go proto generation
swufygoog Oct 23, 2025
7e74b11
Add --output_groups=+tarball to actually generate tarball
swufygoog Oct 23, 2025
f580b58
Fix root user failure is presubmits
swufygoog Oct 23, 2025
d2f460a
Update MODULE.bazel.lock file
swufygoog Oct 29, 2025
ee0262b
Ignore MODULE.bazel.lock for gazelle/protos git diff checks
swufygoog Oct 29, 2025
5f9eacb
Explicitly load cc_proto_library from protobuf
swufygoog Oct 29, 2025
c73e0fa
Fix backwards compatibility workaround
swufygoog Nov 4, 2025
5b0749a
Fix gazelle for rollback solution
swufygoog Nov 4, 2025
4198c07
Add oper status and hardware lane list attributes for CPU port.
royyi8 Nov 5, 2025
a967104
Populate Lucius port oper status (#603)
royyi8 Nov 6, 2025
d25de56
Merge branch 'main' into cpu_port_fix
royyi8 Nov 6, 2025
8113535
Merge pull request #601 from swufygoog/main
swufygoog Nov 10, 2025
afbeafb
Bump operator go-cmp to v0.7.0 (#604)
swufygoog Nov 11, 2025
2acffa0
Merge branch 'main' into renovate
prinikasn Nov 11, 2025
f972ebf
Merge pull request #598 from openconfig/renovate
prinikasn Nov 11, 2025
443bd9d
Merge pull request #602 from royyi8/cpu_port_fix
prinikasn Nov 11, 2025
54307d2
Add show
bstoll Nov 14, 2025
095c8d3
show2
bstoll Nov 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
21 changes: 21 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
build --cxxopt=-std=c++17 --host_cxxopt=-std=c++17
build --incompatible_strict_action_env=true


build:remote --java_runtime_version=rbe_jdk
build:remote --tool_java_runtime_version=rbe_jdk
build:remote --extra_toolchains=//configs/bullseye/java:all
build:remote --extra_toolchains=//configs/bullseye/config:cc-toolchain
build:remote --extra_execution_platforms=//configs/bullseye/config:platform
build:remote --host_platform=//configs/bullseye/config:platform
build:remote --platforms=//configs/bullseye/config:platform
build:remote --crosstool_top=//configs/bullseye/cc:toolchain
build:remote --define=EXECUTOR=remote
build:remote --incompatible_strict_action_env=true
build:remote --remote_timeout=3600

build:docker-bullseye --config=remote
build:docker-bullseye --experimental_docker_image=us-west1-docker.pkg.dev/openconfig-lemming/internal/builder:latest
build:docker-bullseye --spawn_strategy=docker --strategy=Javac=docker --genrule_strategy=docker
build:docker-bullseye --experimental_docker_verbose
build:docker-bullseye --experimental_enable_docker_sandbox
3 changes: 3 additions & 0 deletions .bazelversion
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
8.4.1
# Switch these two versions if bzlmod doesn't work (let us know too)
6.5.0
3 changes: 3 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
BasedOnStyle: Google
InsertNewlineAtEOF: true
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @openconfig/lemming-owners
17 changes: 13 additions & 4 deletions .github/linters/.golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,19 @@
# see https://github.com/golangci/golangci-lint/blob/master/.golangci.example.yml
run:
timeout: 60m
skip-dirs:
issues:
exclude-dirs:
- gnmi/oc
- integration_tests # Loading ondatra is very slow
issues:
exclude:
exclude-rules:
- path: _test\.go
linters:
- dupl
- gosec
- goconst
- path: gribi/gribi.go
text: "grpc.Dial is deprecated" # TODO(https://github.com/openconfig/lemming/issues/433): bgp/tests/local_tests -- TestRoutePropagation fails.
linters:
disable-all: true
enable:
Expand All @@ -46,9 +49,7 @@ linters:
- revive
- staticcheck
- unconvert
- unparam
- unused
- varcheck
- wastedassign
- whitespace
linters-settings:
Expand All @@ -66,3 +67,11 @@ linters-settings:
disabled-checks:
- singleCaseSwitch
- appendAssign
gosec:
excludes:
- G204
- G115
revive:
rules:
- name: unused-parameter
disabled: true
6 changes: 6 additions & 0 deletions .github/linters/.protolintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
lint:
directories:
# The SAI generated proto doesn't follow all the proto naming conventions.
exclude:
- dataplane/proto
- proto/config
24 changes: 24 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"extends": [
"config:recommended",
"schedule:weekdays",
":semanticCommitsDisabled"
],
"postUpdateOptions": ["gomodTidy"],
"commitMessagePrefix": "chore(all): ",
"commitMessageAction": "update",
"groupName": "deps",
"ignoreDeps": ["com_google_googleapis"],
"customManagers": [
{
"customType": "regex",
"description": "Synchronize Go Version: MODULE.bazel go_sdk",
"fileMatch": ["MODULE.bazel"],
"matchStrings": [
"go_sdk.download(versions*=s*\"(?<currentValue>[d.]+)\")"
],
"depNameTemplate": "golang",
"datasourceTemplate": "golang-version"
}
]
}
105 changes: 105 additions & 0 deletions .github/workflows/buildtest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
# Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

---
name: Build and Test
on:
push:
branches: [main]
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Bazel
uses: bazel-contrib/setup-bazel@0.14.0
- name: Restore Bazel Cache
uses: actions/cache/restore@v3
with:
path: |
~/.cache/bazel
key: ${{ runner.os }}-bazel-build-${{ github.sha }}
restore-keys: |
${{ runner.os }}-bazel-build-
${{ runner.os }}-bazel-
- name: Install pcap
run: |
sudo apt-get install libpcap-dev libnl-genl-3-dev libnl-3-dev
- name: show1
run: |
df -h
- name: Free additional disk space
run: |
sudo rm -rf /usr/share/dotnet
sudo rm -rf /usr/local/lib/android
sudo rm -rf /opt/hostedtoolcache/CodeQL
sudo mv "${HOME}/.cache" /mnt/cache
ln -s /mnt/cache "${HOME}/.cache"
- name: show2
run: |
df -h
pwd
ls -la .
echo du .
du -sh .
echo du all
du -sh *
echo du cache
du -sh ~/.cache
echo du cache all
du -sh ~/.cache/*
- name: Build Lemming
run: bazel build //...
- name: Save Bazel Cache
uses: actions/cache/save@v3
if: github.ref == 'refs/heads/main'
with:
path: |
~/.cache/bazel
key: ${{ runner.os }}-bazel-build-${{ github.sha }}
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Bazel
uses: bazel-contrib/setup-bazel@0.14.0
- name: Restore Bazel Cache
uses: actions/cache/restore@v3
with:
path: |
~/.cache/bazel
key: ${{ runner.os }}-bazel-test-${{ github.sha }}
restore-keys: |
${{ runner.os }}-bazel-test-
${{ runner.os }}-bazel-
- name: Install pcap
run: |
sudo apt-get install libpcap-dev libnl-genl-3-dev libnl-3-dev
- name: Test
run: make coverage
- name: Coveralls
uses: coverallsapp/github-action@v2
with:
file: bazel-out/_coverage/_coverage_report.dat
format: lcov
- run: |
make test-race
- name: Save Bazel Cache
uses: actions/cache/save@v3
if: github.ref == 'refs/heads/main'
with:
path: |
~/.cache/bazel
key: ${{ runner.os }}-bazel-test-${{ github.sha }}
57 changes: 57 additions & 0 deletions .github/workflows/generatedcode.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Copyright 2023 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

---
name: Check Generate Code
on:
pull_request:
jobs:
gazelle:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Bazel
uses: bazel-contrib/setup-bazel@0.14.0
- name: Run Gazelle
run: bazel run //:gazelle
- name: Check Diff
run: |
if test -n "$(git status --porcelain)"; then
# MODULE.bazel.lock file can change due to rules_python dependency packages.
git diff HEAD -- ':(exclude)MODULE.bazel.lock'
exit 1
fi
protos:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Bazel
uses: bazel-contrib/setup-bazel@0.14.0
- name: Cache Bazel
uses: actions/cache/restore@v3
with:
path: |
~/.cache/bazel
key: ${{ runner.os }}-bazel-${{ hashFiles('.bazelversion', '.bazelrc', 'WORKSPACE', 'repositories.bzl') }}
restore-keys: |
${{ runner.os }}-bazel-
- name: Generate Protos
run: tools/genproto.sh
- name: Check Diff
run: |
if test -n "$(git status --porcelain)"; then
# MODULE.bazel.lock file can change due to rules_python dependency packages.
git diff HEAD -- ':(exclude)MODULE.bazel.lock'
exit 1
fi
46 changes: 0 additions & 46 deletions .github/workflows/go.yml

This file was deleted.

12 changes: 9 additions & 3 deletions .github/workflows/golangci-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,16 @@ jobs:
name: lint
runs-on: ubuntu-latest
steps:
- uses: actions/setup-go@v2
- uses: actions/checkout@v2
- uses: actions/setup-go@v4
with:
go-version: stable
cache: false
- uses: actions/checkout@v3
- name: Install pcap
run: |
sudo apt-get install libpcap-dev libnl-genl-3-dev libnl-3-dev
- name: golangci-lint
uses: golangci/golangci-lint-action@v2
uses: golangci/golangci-lint-action@v3
with:
# Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version
version: latest
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/linter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:

steps:
- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Lint Code Base
Expand All @@ -36,8 +36,10 @@ jobs:
VALIDATE_ALL_CODEBASE: false
VALIDATE_JSCPD: false
VALIDATE_GO: false
VALIDATE_CLANG_FORMAT: false
VALIDATE_KUBERNETES_KUBEVAL: false
VALIDATE_GITLEAKS: false
IGNORE_GENERATED_FILES: true
DEFAULT_BRANCH: main
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
FILTER_REGEX_EXCLUDE: Dockerfile.*dockerignore # Linter thinks these are docker files but they aren't.
FILTER_REGEX_EXCLUDE: (Dockerfile.*dockerignore|dataplane/standalone/sai|configs/bullseye) # Linter thinks these are docker files but they aren't.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
bazel-*
kne/*config.yaml
kne/*config.yaml
22 changes: 22 additions & 0 deletions .vscode/c_cpp_properties.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/bazel-lemming/external/com_github_opencomputeproject_sai/**",
"${workspaceFolder}/bazel-lemming/external/com_github_grpc_grpc/include/**",
"${workspaceFolder}/bazel-lemming/external/com_github_google_glog/src/**",
"${workspaceFolder}/bazel-lemming/external/com_google_absl/**",
"${workspaceFolder}/**",

],
"defines": [],
"compilerPath": "/usr/bin/clang",
"cStandard": "c17",
"cppStandard": "c++14",
"intelliSenseMode": "linux-clang-x64",
"configurationProvider": "ms-vscode.makefile-tools"
}
],
"version": 4
}
Loading
Loading