Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • 111-cli-expansion-stateful-behaviour-more-command-feedback
  • 120-integration-tests-fail
  • 138-making-gnmi-response-processing-more-error-tolerable
  • 140-refactor-pipelines
  • 156-a-setrequest-to-change-a-specific-path-of-an-ond-only-works-for-paths-with-string-values
  • 186-creating-a-device-based-on-plugin-or-csbi-is-not-possible
  • 195-requesting-changes-does-not-work-in-storemode-database
  • 223-database-pnd-store-is-missing-option-to-search-by-name
  • 225-adding-support-and-visualization-for-the-test-coverage2
  • 233-structs-like-loadeddevice-loadedsbi-loadedrole-loadeduser-are-never-passed-as-pointer
  • 242-improve-security-by-enabling-and-enforcing-more-linting-rules
  • 242-improve-security-by-enabling-and-enforcing-more-linting-rules-govet
  • 246-implement-our-own-version-to-send-gnmi-requests
  • 258-deal-with-read-only-fields-in-yang
  • 282-refactoring-of-the-current-test-setup
  • 289-quantum-safe-communication-between-rabbitmq-and-sdn-controller
  • 291-lab-vm-for-arm64-apple
  • 296-related-existing-work-about-change-logic-for-yang-models
  • 320-deadline-and-cancellation-for-grpc-calls
  • 336-add-error-handling-for-mne-watching-if-the-provided-paths-do-not-exist
  • 349-integration-test-for-lab01
  • 350-applying-a-sdn-configuration-should-also-update-the-internal-configuration-of-managed-network
  • 351-link-shadowing-of-global-variables
  • 383-re-organize-comands-in-cli
  • 392-remove-renovate
  • PSD_VGU_Logging
  • add-backup-script
  • add-dockerignore
  • add-script-with-docker-stats
  • add-sr-linux-yang-models
  • add-support-for-mtls-in-plugins
  • allow-slashes-in-branch-names
  • arm-build
  • bump-ygot-generator-to-0-0-5
  • check-unit-tests
  • ci-refactor-1337
  • cli-docs
  • create-health-check-api
  • custom-marshal-for-grpc-gateway
  • deployment-docker-compose
  • develop
  • docker-build-cache-experiments
  • fbi1478-master-patch-42436
  • fix-docker-registry-error
  • fix-linting-in-makefile
  • fix-viper
  • go-plugin-playground
  • gosdn-storage-cleanup
  • heiss_bachelor_thesis
  • hotfix-unique-list-error-from-a-device-get-request
  • integration-test-pipeline-fix
  • inventory-manager-netbox
  • istaester/add-git-hooks
  • istaester/architecture-figures
  • istaester/basic-persistance-layer
  • istaester/bump-ygot-version
  • istaester/cli-tests
  • istaester/db
  • istaester/handle-makefile-in-editorconfig
  • istaester/init-monorepo
  • istaester/plugin-registry
  • istaester/provide-pnd-service
  • istaester/tooling
  • istaester/update-readme
  • master
  • mb/plugin-registry
  • mk/benchmark-stores
  • mpsd-at-vgu
  • neil/cobra-tests
  • new-integration-test-setup-v1
  • profile
  • proto-getters
  • recursive-read-only-try-1337
  • registry-used-by-app
  • remove-stuff
  • renovate/babel-runtime-7.x-lockfile
  • renovate/buf.build-gen-go-bufbuild-protovalidate-protocolbuffers-go-1.x
  • renovate/dompurify-3.x-lockfile
  • renovate/eslint-9.x-lockfile
  • renovate/eslint-plugin-prettier-5.x-lockfile
  • renovate/eslint-plugin-react-7.x-lockfile
  • renovate/eslint-plugin-react-hooks-5.x-lockfile
  • renovate/eslint-plugin-react-refresh-0.x-lockfile
  • renovate/fortawesome-fontawesome-svg-core-6.x-lockfile
  • renovate/fortawesome-free-regular-svg-icons-6.x-lockfile
  • renovate/fortawesome-free-solid-svg-icons-6.x-lockfile
  • renovate/github.com-aristanetworks-goarista-digest
  • renovate/github.com-bufbuild-protovalidate-go-0.x
  • renovate/github.com-docker-docker-27.x
  • renovate/github.com-docker-docker-28.x
  • renovate/github.com-grpc-ecosystem-grpc-gateway-v2-2.x
  • renovate/github.com-hashicorp-go-plugin-1.x
  • renovate/github.com-lesismal-nbio-1.x
  • renovate/github.com-openconfig-gnmi-0.x
  • renovate/github.com-prometheus-client_golang-1.x
  • renovate/go.mongodb.org-mongo-driver-2.x
  • renovate/golangci-golangci-lint-1.x
  • renovate/google.golang.org-genproto-googleapis-api-digest
  • renovate/react-18.x-lockfile
  • renovate/react-bootstrap-2.x-lockfile
  • 0.1.0
101 results

Target

Select target project
  • danet/gosdn
1 result
Select Git revision
  • 111-cli-expansion-stateful-behaviour-more-command-feedback
  • 120-integration-tests-fail
  • 138-making-gnmi-response-processing-more-error-tolerable
  • 140-refactor-pipelines
  • 156-a-setrequest-to-change-a-specific-path-of-an-ond-only-works-for-paths-with-string-values
  • 186-creating-a-device-based-on-plugin-or-csbi-is-not-possible
  • 195-requesting-changes-does-not-work-in-storemode-database
  • 223-database-pnd-store-is-missing-option-to-search-by-name
  • 225-adding-support-and-visualization-for-the-test-coverage2
  • 233-structs-like-loadeddevice-loadedsbi-loadedrole-loadeduser-are-never-passed-as-pointer
  • 242-improve-security-by-enabling-and-enforcing-more-linting-rules
  • 242-improve-security-by-enabling-and-enforcing-more-linting-rules-govet
  • 246-implement-our-own-version-to-send-gnmi-requests
  • 258-deal-with-read-only-fields-in-yang
  • 282-refactoring-of-the-current-test-setup
  • 289-quantum-safe-communication-between-rabbitmq-and-sdn-controller
  • 291-lab-vm-for-arm64-apple
  • 296-related-existing-work-about-change-logic-for-yang-models
  • 320-deadline-and-cancellation-for-grpc-calls
  • 336-add-error-handling-for-mne-watching-if-the-provided-paths-do-not-exist
  • 349-integration-test-for-lab01
  • 350-applying-a-sdn-configuration-should-also-update-the-internal-configuration-of-managed-network
  • 351-link-shadowing-of-global-variables
  • 383-re-organize-comands-in-cli
  • 392-remove-renovate
  • PSD_VGU_Logging
  • add-backup-script
  • add-dockerignore
  • add-script-with-docker-stats
  • add-sr-linux-yang-models
  • add-support-for-mtls-in-plugins
  • allow-slashes-in-branch-names
  • arm-build
  • bump-ygot-generator-to-0-0-5
  • check-unit-tests
  • ci-refactor-1337
  • cli-docs
  • create-health-check-api
  • custom-marshal-for-grpc-gateway
  • deployment-docker-compose
  • develop
  • docker-build-cache-experiments
  • fbi1478-master-patch-42436
  • fix-docker-registry-error
  • fix-linting-in-makefile
  • fix-viper
  • go-plugin-playground
  • gosdn-storage-cleanup
  • heiss_bachelor_thesis
  • hotfix-unique-list-error-from-a-device-get-request
  • integration-test-pipeline-fix
  • inventory-manager-netbox
  • istaester/add-git-hooks
  • istaester/architecture-figures
  • istaester/basic-persistance-layer
  • istaester/bump-ygot-version
  • istaester/cli-tests
  • istaester/db
  • istaester/handle-makefile-in-editorconfig
  • istaester/init-monorepo
  • istaester/plugin-registry
  • istaester/provide-pnd-service
  • istaester/tooling
  • istaester/update-readme
  • master
  • mb/plugin-registry
  • mk/benchmark-stores
  • mpsd-at-vgu
  • neil/cobra-tests
  • new-integration-test-setup-v1
  • profile
  • proto-getters
  • recursive-read-only-try-1337
  • registry-used-by-app
  • remove-stuff
  • renovate/babel-runtime-7.x-lockfile
  • renovate/buf.build-gen-go-bufbuild-protovalidate-protocolbuffers-go-1.x
  • renovate/dompurify-3.x-lockfile
  • renovate/eslint-9.x-lockfile
  • renovate/eslint-plugin-prettier-5.x-lockfile
  • renovate/eslint-plugin-react-7.x-lockfile
  • renovate/eslint-plugin-react-hooks-5.x-lockfile
  • renovate/eslint-plugin-react-refresh-0.x-lockfile
  • renovate/fortawesome-fontawesome-svg-core-6.x-lockfile
  • renovate/fortawesome-free-regular-svg-icons-6.x-lockfile
  • renovate/fortawesome-free-solid-svg-icons-6.x-lockfile
  • renovate/github.com-aristanetworks-goarista-digest
  • renovate/github.com-bufbuild-protovalidate-go-0.x
  • renovate/github.com-docker-docker-27.x
  • renovate/github.com-docker-docker-28.x
  • renovate/github.com-grpc-ecosystem-grpc-gateway-v2-2.x
  • renovate/github.com-hashicorp-go-plugin-1.x
  • renovate/github.com-lesismal-nbio-1.x
  • renovate/github.com-openconfig-gnmi-0.x
  • renovate/github.com-prometheus-client_golang-1.x
  • renovate/go.mongodb.org-mongo-driver-2.x
  • renovate/golangci-golangci-lint-1.x
  • renovate/google.golang.org-genproto-googleapis-api-digest
  • renovate/react-18.x-lockfile
  • renovate/react-bootstrap-2.x-lockfile
  • 0.1.0
101 results
Show changes
Commits on Source (2)
Showing
with 210954 additions and 204847 deletions
......@@ -31,8 +31,8 @@ install-tools:
export GOBIN=$(GOSDN_PRG) && go install gotest.tools/gotestsum@v1.8.1 &&\
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.51.2 &&\
go install github.com/vektra/mockery/v2@v2.20.0 &&\
go install github.com/openconfig/ygot/generator@v0.20.2 &&\
go install github.com/andresterba/go-ygot-generator-generator@v0.0.2
go install github.com/openconfig/ygot/generator@v0.27.0 &&\
go install github.com/andresterba/go-ygot-generator-generator@v0.0.4
@echo Finished installing development tooling
ci-install-tools:
......@@ -50,7 +50,7 @@ lint-fix: install-tools
generate-controller-mocks: install-tools
./$(TOOLS_DIR)/mockery --all --output './controller/mocks' --dir './controller/interfaces/'
generate-yang-models:
generate-yang-models: install-tools
cd models/generated/openconfig &&\
../../../$(TOOLS_DIR)/go-ygot-generator-generator config.yaml openconfig.go &&\
go generate &&\
......@@ -58,7 +58,7 @@ generate-yang-models:
cd models/generated/arista &&\
../../../$(TOOLS_DIR)/go-ygot-generator-generator config.yaml arista.go &&\
go generate &&\
cat additions.patch >> arista.go
cat additions.patch >> yang.go
generate-csbi-yang-models: install-tools
cd csbi/resources &&\
......
......@@ -9,7 +9,7 @@ import (
func enableRouting(model *arista.Device) error {
// if model.NetworkInstances == nil {
var enableRouting = true
//var enableRouting = true
model.NetworkInstances = &arista.OpenconfigNetworkInstance_NetworkInstances{}
instance, err := model.NetworkInstances.NewNetworkInstance("default")
if err != nil {
......@@ -17,13 +17,13 @@ func enableRouting(model *arista.Device) error {
}
instance.Config = &arista.OpenconfigNetworkInstance_NetworkInstances_NetworkInstance_Config{
Enabled: &enableRouting,
//Enabled: &enableRouting,
// 1 == DEFAULT_INSTANCE
Type: arista.E_OpenconfigNetworkInstanceTypes_NETWORK_INSTANCE_TYPE(1),
// 1 == OpenconfigTypes_ADDRESS_FAMILY_IPV4
EnabledAddressFamilies: []arista.E_OpenconfigTypes_ADDRESS_FAMILY{
1,
},
//EnabledAddressFamilies: []arista.E_OpenconfigTypes_ADDRESS_FAMILY{
// 1,
//},
}
return nil
......
......@@ -41,6 +41,7 @@ import (
"github.com/google/uuid"
"github.com/openconfig/goyang/pkg/yang"
"github.com/pterm/pterm"
"github.com/pterm/pterm/putils"
"github.com/spf13/cobra"
"github.com/spf13/pflag"
"github.com/spf13/viper"
......@@ -65,9 +66,9 @@ func NewPromptCompleter() *PromptCompleter {
// Run starts the interactive completion.
func (pc *PromptCompleter) Run() {
title, _ := pterm.DefaultBigText.WithLetters(
pterm.NewLettersFromString("go"),
pterm.NewLettersFromStringWithStyle("SDN", pterm.NewStyle(pterm.FgCyan)),
pterm.NewLettersFromString("c"),
putils.LettersFromString("go"),
putils.LettersFromStringWithStyle("SDN", pterm.NewStyle(pterm.FgCyan)),
putils.LettersFromString("c"),
).Srender()
description := pterm.DefaultBasicText.Sprint("Control your goSDN controller like you've never done it before!")
pterm.DefaultCenter.Println(title)
......
......@@ -13,8 +13,6 @@ import (
const (
defaultTimeOutDuration10minutes = time.Minute * 10
basePNDUUIDKey = "basePNDUUID"
baseSouthBoundTypeKey = "baseSouthBoundType"
baseSouthBoundUUIDKey = "baseSouthBoundUUID"
changeTimeoutKey = "GOSDN_CHANGE_TIMEOUT"
databaseConnectionKey = "databaseConnection"
filesystemPathToStores = "filesystemPathToStores"
......@@ -95,19 +93,6 @@ func InitializeConfig() error {
BasePndUUID = basePNDUUIDFromViper
baseSouthBoundUUIDFromViper, err := getUUIDFromViper(baseSouthBoundUUIDKey)
if err != nil {
return err
}
BaseSouthBoundUUID = baseSouthBoundUUIDFromViper
BaseSouthBoundType = viper.GetInt32(baseSouthBoundTypeKey)
if BaseSouthBoundType != 1 {
BaseSouthBoundType = 1
viper.Set(baseSouthBoundTypeKey, 1)
}
err = setChangeTimeout()
if err != nil {
return err
......
......@@ -31,16 +31,6 @@ func TestUseExistingConfig(t *testing.T) {
BasePndUUID.String())
}
if BaseSouthBoundUUID.String() != "bf8160d4-4659-4a1b-98fd-f409a04111eb" {
t.Fatalf("BaseSouthBoundUUID.String() is not bf8160d4-4659-4a1b-98fd-f409a04111eb. got=%s",
BaseSouthBoundUUID.String())
}
if BaseSouthBoundType != 1 {
t.Fatalf("BaseSouthBoundType is not 1. got=%d",
BaseSouthBoundType)
}
testChangeTimeout, _ := time.ParseDuration("10m")
defaultChangeTimeout := defaultTimeOutDuration10minutes
if defaultChangeTimeout != testChangeTimeout {
......
......@@ -11,19 +11,16 @@ import (
"github.com/spf13/viper"
)
const (
configHome string = "./configs"
configName string = "ci-testing-gosdn"
configType string = "toml"
)
func TestInit(t *testing.T) {
viper.SetConfigFile("./configs/ci-testing-gosdn.toml")
viper.Set("basePNDUUID", "3e58372e-b53d-41d8-a06e-4131810c8e70")
viper.Set("baseSouthBoundType", 1)
viper.Set("baseSouthBoundUUID", "73b30205-7ad9-48fb-8251-0dbef649ce01")
viper.Set("plugin-registry", "localhost:55056")
viper.Set("csbi-orchestrator", "localhost:55057")
}
// NOTE: There has been a change within to the grpc.Dial function in
// https://github.com/grpc/grpc-go/releases/tag/v1.52.0
func TestRun(t *testing.T) {
TestInit(t)
err := config.InitializeConfig()
......@@ -32,6 +29,10 @@ func TestRun(t *testing.T) {
return
}
if err := viper.ReadInConfig(); err != nil {
t.Errorf("Run() could not find config file. File used = %v", viper.ConfigFileUsed())
}
type args struct {
request string
}
......@@ -54,10 +55,6 @@ func TestRun(t *testing.T) {
ctx, cancel := context.WithCancel(context.Background())
viper.AddConfigPath(configHome)
viper.SetConfigName(configName)
viper.SetConfigType(configType)
go func() {
if err := Run(ctx); err != nil {
t.Errorf("Run() error = %v", err)
......
......@@ -13,6 +13,7 @@ import (
spb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/southbound"
"github.com/google/uuid"
gpb "github.com/openconfig/gnmi/proto/gnmi"
"github.com/openconfig/ygot/gogen"
"github.com/openconfig/ygot/ygen"
log "github.com/sirupsen/logrus"
)
......@@ -49,10 +50,8 @@ func Generate(ctx context.Context, models []*gpb.ModelData, repository Repositor
} else if len(yangFiles) != len(models) {
log.Warn("could not find all models")
}
cfg := &ygen.GeneratorConfig{
PackageName: "main",
GenerateJSONSchema: true,
StoreRawSchema: true,
generator := gogen.New("GoCodeGenerator", ygen.IROptions{
ParseOptions: ygen.ParseOpts{
YANGParseOptions: yang.Options{
IgnoreSubmoduleCircularDependencies: true,
......@@ -63,39 +62,40 @@ func Generate(ctx context.Context, models []*gpb.ModelData, repository Repositor
GenerateFakeRoot: true,
FakeRootName: "Device",
},
GoOptions: ygen.GoOpts{
IncludeModelData: true,
GenerateSimpleUnions: true,
ValidateFunctionName: "Validate",
},
}
}, gogen.GoOpts{
PackageName: "main",
GenerateJSONSchema: true,
IncludeModelData: true,
GenerateSimpleUnions: true,
ValidateFunctionName: "Validate",
})
lock.Lock()
generator := ygen.NewYANGCodeGenerator(cfg)
searchpath, err := repository.YANGPathsWithSuffix()
if err != nil {
return Deployment{}, promHandleError(labels, err, codeGenerationErrorsTotal)
}
code, errs := generator.GenerateGoCode(yangFiles, searchpath)
code, errs := generator.Generate(yangFiles, searchpath)
for _, e := range errs {
if strings.Contains(e.Error(), "duplicate entry interfaces at the root") {
if strings.Contains(e.Error(), "ietf-interfaces") {
generator.Config.ParseOptions.ExcludeModules = append(generator.Config.ParseOptions.ExcludeModules, "ietf-interfaces")
generator.IROptions.ParseOptions.ExcludeModules = append(generator.IROptions.ParseOptions.ExcludeModules, "ietf-interfaces")
} else {
splitted := strings.SplitAfter(e.Error(), "new: ")
model := strings.Split(splitted[0], "/")[1]
generator.Config.ParseOptions.ExcludeModules = append(generator.Config.ParseOptions.ExcludeModules, model)
generator.IROptions.ParseOptions.ExcludeModules = append(generator.IROptions.ParseOptions.ExcludeModules, model)
}
}
log.Warnf("error during first round %v", promHandleError(labels, e, codeGenerationErrorsTotal))
}
log.Infof("excluded models: %v", generator.Config.ParseOptions.ExcludeModules)
log.Infof("excluded models: %v", generator.IROptions.ParseOptions.ExcludeModules)
if code == nil {
log.Info("running second round")
code, errs = generator.GenerateGoCode(yangFiles, searchpath)
code, errs = generator.Generate(yangFiles, searchpath)
}
lock.Unlock()
......
package csbi
import "github.com/openconfig/ygot/ygen"
import (
"github.com/openconfig/ygot/gogen"
)
// deprecated.
var southboundStruct = ygen.GoStructCodeSnippet{
var southboundStruct = gogen.GoStructCodeSnippet{
StructName: "Csbi",
StructDef: `type Csbi struct {
schema *ytypes.Schema
......
......@@ -13,7 +13,7 @@ import (
spb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/southbound"
"github.com/openconfig/ygot/genutil"
"github.com/openconfig/ygot/ygen"
"github.com/openconfig/ygot/gogen"
log "github.com/sirupsen/logrus"
"github.com/spf13/viper"
codes "google.golang.org/grpc/codes"
......@@ -25,7 +25,7 @@ import (
// write takes a ygen.Generatedcode struct and writes the Go code
// snippets contained within it to the io.Writer, w, provided as an argument.
// The output includes a package header which is generated.
func write(ctx context.Context, code *ygen.GeneratedGoCode, path string, sbiType spb.Type) error {
func write(ctx context.Context, code *gogen.GeneratedCode, path string, sbiType spb.Type) error {
if err := os.Mkdir(path, 0755); err != nil {
if err.(*fs.PathError).Err.Error() != "file exists" { //nolint:errorlint
return err
......@@ -49,7 +49,7 @@ func removePort(ip net.Addr) (string, error) {
return addr.IP.String(), nil
}
func writeCsbi(ctx context.Context, code *ygen.GeneratedGoCode, path string) error {
func writeCsbi(ctx context.Context, code *gogen.GeneratedCode, path string) error {
p, ok := peer.FromContext(ctx)
if !ok || p == nil {
e := fmt.Errorf("no peer information in context %v", ctx)
......@@ -95,7 +95,7 @@ func writeCsbi(ctx context.Context, code *ygen.GeneratedGoCode, path string) err
return writeGoStruct(path, code, spb.Type_TYPE_CONTAINERISED)
}
func writePlugin(code *ygen.GeneratedGoCode, path string) error {
func writePlugin(code *gogen.GeneratedCode, path string) error {
if err := copyFile(path, gostructAdditionsName); err != nil {
return err
}
......@@ -122,7 +122,7 @@ func copyFile(path, filename string) error {
return nil
}
func writeGoStruct(path string, code *ygen.GeneratedGoCode, t spb.Type) error {
func writeGoStruct(path string, code *gogen.GeneratedCode, t spb.Type) error {
file := filepath.Join(path, gostructName)
generatedCode := genutil.OpenFile(file)
defer genutil.SyncFile(generatedCode)
......@@ -165,7 +165,7 @@ func writeGoStruct(path string, code *ygen.GeneratedGoCode, t spb.Type) error {
}
// deprecated.
func writeCode(path string, code *ygen.GeneratedGoCode, t spb.Type) error {
func writeCode(path string, code *gogen.GeneratedCode, t spb.Type) error {
code.CommonHeader = strings.TrimSuffix(code.CommonHeader, ")\n")
code.CommonHeader = code.CommonHeader + southboundImportAmendmend
sbiStructCopy := southboundStruct
......
......@@ -5,13 +5,13 @@ import (
"testing"
spb "code.fbi.h-da.de/danet/gosdn/api/go/gosdn/southbound"
"github.com/openconfig/ygot/ygen"
"github.com/openconfig/ygot/gogen"
"google.golang.org/grpc/peer"
)
func Test_write(t *testing.T) {
type args struct {
code *ygen.GeneratedGoCode
code *gogen.GeneratedCode
path string
sbiType spb.Type
}
......@@ -33,7 +33,7 @@ func Test_write(t *testing.T) {
func Test_writeCsbi(t *testing.T) {
type args struct {
code *ygen.GeneratedGoCode
code *gogen.GeneratedCode
path string
}
tests := []struct {
......@@ -54,7 +54,7 @@ func Test_writeCsbi(t *testing.T) {
func Test_writePlugin(t *testing.T) {
type args struct {
code *ygen.GeneratedGoCode
code *gogen.GeneratedCode
path string
}
tests := []struct {
......@@ -97,7 +97,7 @@ func Test_copyFile(t *testing.T) {
func Test_writeCode(t *testing.T) {
type args struct {
path string
code *ygen.GeneratedGoCode
code *gogen.GeneratedCode
}
tests := []struct {
name string
......
......@@ -12,20 +12,20 @@ require (
github.com/mitchellh/go-homedir v1.1.0
github.com/openconfig/gnmi v0.0.0-20220920173703-480bf53a74d2
github.com/openconfig/goyang v1.2.0
github.com/openconfig/ygot v0.22.1
github.com/openconfig/ygot v0.27.0
github.com/prometheus/client_golang v1.12.2
github.com/pterm/pterm v0.12.41
github.com/pterm/pterm v0.12.58
github.com/sethvargo/go-password v0.2.0
github.com/sirupsen/logrus v1.9.0
github.com/spf13/cobra v1.1.3
github.com/spf13/cobra v1.6.1
github.com/spf13/pflag v1.0.5
github.com/spf13/viper v1.12.0
github.com/stretchr/objx v0.2.0 // indirect
github.com/stretchr/testify v1.7.2
github.com/spf13/viper v1.15.0
github.com/stretchr/objx v0.5.0 // indirect
github.com/stretchr/testify v1.8.1
go.mongodb.org/mongo-driver v1.10.0
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4
google.golang.org/genproto v0.0.0-20220725144611-272f38e5d71b
google.golang.org/grpc v1.48.0
golang.org/x/sync v0.1.0
google.golang.org/genproto v0.0.0-20221227171554-f9683d7f8bef
google.golang.org/grpc v1.52.0
google.golang.org/protobuf v1.28.1
gopkg.in/yaml.v3 v3.0.1
)
......@@ -33,7 +33,6 @@ require (
require (
github.com/Microsoft/go-winio v0.5.1 // indirect
github.com/Microsoft/hcsshim v0.9.2 // indirect
github.com/atomicgo/cursor v0.0.1 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.1.2 // indirect
github.com/containerd/cgroups v1.0.3 // indirect
......@@ -42,22 +41,22 @@ require (
github.com/docker/distribution v2.7.1+incompatible // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/docker/go-units v0.4.0 // indirect
github.com/fsnotify/fsnotify v1.5.4 // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang-jwt/jwt v3.2.2+incompatible
github.com/golang/glog v1.1.1
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3
github.com/golang/snappy v0.0.4 // indirect
github.com/gookit/color v1.5.0 // indirect
github.com/gookit/color v1.5.3 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.0.1 // indirect
github.com/klauspost/compress v1.15.9 // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/magiconair/properties v1.8.6 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/mattn/go-colorable v0.1.12 // indirect
github.com/mattn/go-isatty v0.0.14 // indirect
github.com/mattn/go-runewidth v0.0.13 // indirect
github.com/mattn/go-runewidth v0.0.14 // indirect
github.com/mattn/go-tty v0.0.3 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
......@@ -67,8 +66,7 @@ require (
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.0.2 // indirect
github.com/opencontainers/runc v1.1.0 // indirect
github.com/pelletier/go-toml v1.9.5 // indirect
github.com/pelletier/go-toml/v2 v2.0.2 // indirect
github.com/pelletier/go-toml/v2 v2.0.6 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pkg/term v1.2.0-beta.2 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
......@@ -76,33 +74,36 @@ require (
github.com/prometheus/common v0.37.0 // indirect
github.com/prometheus/procfs v0.8.0 // indirect
github.com/rabbitmq/amqp091-go v1.4.0
github.com/rivo/uniseg v0.2.0 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
github.com/sethvargo/go-retry v0.2.3
github.com/spf13/afero v1.9.2 // indirect
github.com/spf13/afero v1.9.3 // indirect
github.com/spf13/cast v1.5.0 // indirect
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/subosito/gotenv v1.4.0 // indirect
github.com/subosito/gotenv v1.4.2 // indirect
github.com/xdg-go/pbkdf2 v1.0.0 // indirect
github.com/xdg-go/scram v1.1.1 // indirect
github.com/xdg-go/stringprep v1.0.3 // indirect
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a // indirect
go.opencensus.io v0.23.0 // indirect
go.opencensus.io v0.24.0 // indirect
golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa
golang.org/x/net v0.8.0
golang.org/x/sys v0.6.0 // indirect
golang.org/x/term v0.6.0 // indirect
golang.org/x/text v0.8.0 // indirect
gopkg.in/ini.v1 v1.66.6 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
)
require github.com/hashicorp/go-plugin v1.4.5
require (
atomicgo.dev/cursor v0.1.1 // indirect
atomicgo.dev/keyboard v0.2.9 // indirect
github.com/containerd/console v1.0.3 // indirect
github.com/fatih/color v1.13.0 // indirect
github.com/hashicorp/go-hclog v1.2.0 // indirect
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb // indirect
github.com/lithammer/fuzzysearch v1.1.5 // indirect
github.com/mitchellh/go-testing-interface v1.0.0 // indirect
github.com/oklog/run v1.0.0 // indirect
)
This diff is collapsed.
This diff is collapsed.
---
package_name: arista
generator_options:
- option: package_name
value: arista
- option: output_file
value: ./arista.go
value: ./yang.go
- option: include_model_data
value: true
- option: generate_fakeroot
......
This diff is collapsed.
---
package_name: openconfig
generator_options:
- option: package_name
value: openconfig
- option: output_file
value: ./yang.go
- option: include_model_data
......
......@@ -3,4 +3,4 @@ package openconfig
// This file is a placeholder in order to ensure that Go does not
// find this directory to contain an empty package.
//go:generate ../../../build-tools/generator -path=../../../models/openconfig -package_name=openconfig -output_file=./yang.go -include_model_data=true -generate_fakeroot=true -fakeroot_name=device -exclude_modules=ietf-interfaces -generate_simple_unions=true ../../../models/openconfig/release/models/system/openconfig-system.yang ../../../models/openconfig/release/models/system/openconfig-messages.yang ../../../models/openconfig/release/models/interfaces/openconfig-interfaces.yang ../../../models/openconfig/release/models/interfaces/openconfig-if-ethernet.yang ../../../models/openconfig/release/models/interfaces/openconfig-if-ip.yang ../../../models/openconfig/release/models/network-instance/openconfig-network-instance.yang ../../../models/openconfig/release/models/acl/openconfig-acl.yang ../../../models/openconfig/release/models/bgp/openconfig-bgp.yang ../../../models/openconfig/release/models/platform/openconfig-platform.yang ../../../models/openconfig/release/models/local-routing/openconfig-local-routing.yang ../../../models/openconfig/release/models/policy/openconfig-routing-policy.yang ../../../models/openconfig/release/models/lldp/openconfig-lldp.yang ../../../models/arista/EOS-4.28.2F/release/openconfig/models/lldp/arista-lldp-augments.yang ../../../models/arista/EOS-4.28.2F/release/openconfig/models/lldp/arista-lldp-deviations.yang
//go:generate ../../../build-tools/generator -path=../../../models/openconfig -output_file=./yang.go -include_model_data=true -generate_fakeroot=true -fakeroot_name=device -exclude_modules=ietf-interfaces -generate_simple_unions=true -package_name=openconfig ../../../models/openconfig/release/models/system/openconfig-system.yang ../../../models/openconfig/release/models/system/openconfig-messages.yang ../../../models/openconfig/release/models/interfaces/openconfig-interfaces.yang ../../../models/openconfig/release/models/interfaces/openconfig-if-ethernet.yang ../../../models/openconfig/release/models/interfaces/openconfig-if-ip.yang ../../../models/openconfig/release/models/network-instance/openconfig-network-instance.yang ../../../models/openconfig/release/models/acl/openconfig-acl.yang ../../../models/openconfig/release/models/bgp/openconfig-bgp.yang ../../../models/openconfig/release/models/platform/openconfig-platform.yang ../../../models/openconfig/release/models/local-routing/openconfig-local-routing.yang ../../../models/openconfig/release/models/policy/openconfig-routing-policy.yang ../../../models/openconfig/release/models/lldp/openconfig-lldp.yang ../../../models/arista/EOS-4.28.2F/release/openconfig/models/lldp/arista-lldp-augments.yang ../../../models/arista/EOS-4.28.2F/release/openconfig/models/lldp/arista-lldp-deviations.yang
This diff is collapsed.