Amartus / yang2swagger

Yang to swagger generator
Eclipse Public License 1.0
32 stars 21 forks source link

Nodes in augmented module are ignored #47

Closed mulyi closed 3 years ago

mulyi commented 3 years ago

Hi,

Nodes in an augmented module (i.e. separate file, separate namespace) are not processed. At least in CLI command this happens.

The following two simple modules were used:

module example-root { namespace "http://example.com/ns/yang/example-root"; prefix root;

container root {

container global-commands {

  list schedule {
    key "name";

    leaf name {
      type string;
    }
  }
}

} }

module example-augment { namespace "http://rad.com/ns/yang/example-augment"; prefix aug;

import example-root { prefix root; }

augment "/root:root" {

container configure {

  list peer {
    key "number";

    leaf number {
      type uint32 {
        range "1..64";
      }
    }
  }
}

} }

The CLI command and its output:

C:\Users\muly_i\Work Documents\OpenApi\models\augment>java -jar ../../yang2swagger/cli/target/swagger-generator-cli-1.1.15-SNAPSHOT-executable.jar -use-namespaces -output example-root1.yaml example-root 2020-11-19 00:44:36,856 [main] INFO c.mrv.yangtools.common.ContextHelper - adding 2020-11-19 00:44:36,992 [main] INFO c.mrv.yangtools.common.SchemaBuilder - Inspecting all defined yangs [example-augment.yang, example-root.yang] 2020-11-19 00:44:37,157 [main] INFO com.mrv.yangtools.codegen.main.Main - Modules found in the are example-root, example-augment 2020-11-19 00:44:37,258 [main] INFO c.m.y.codegen.SwaggerGenerator - Generating swagger for yang modules: [example-root] 2020-11-19 00:44:37,269 [main] INFO c.m.y.codegen.SwaggerGenerator - processing container statement root 2020-11-19 00:44:37,281 [main] INFO c.m.y.codegen.SwaggerGenerator - processing container statement global-commands 2020-11-19 00:44:37,282 [main] INFO c.m.y.codegen.SwaggerGenerator - processing list statement schedule 2020-11-19 00:44:37,300 [main] INFO c.m.y.c.i.OptimizingDataObjectBuilder - generated name on the fly name for node (http://rad.com/ns/yang/example-augment?revision=1970-01-01)configure is example.augment.root.Configure 2020-11-19 00:44:37,302 [main] INFO c.m.y.c.i.OptimizingDataObjectBuilder - generated name on the fly name for node (http://rad.com/ns/yang/example-augment?revision=1970-01-01)peer is example.augment.root.configure.Peer 2020-11-19 00:44:37,314 [main] INFO c.m.y.c.i.p.PayloadWrapperProcessor - Adding top-level model example.root.RootWrapper example-root:root -> example.root.Root 2020-11-19 00:44:37,316 [main] INFO c.m.y.c.i.p.PayloadWrapperProcessor - Adding top-level model example.root.root.GlobalCommandsWrapper global-commands -> example.root.root.GlobalCommands 2020-11-19 00:44:37,316 [main] INFO c.m.y.c.i.p.PayloadWrapperProcessor - Adding top-level model example.root.root.globalcommands.ScheduleWrapper schedule -> example.root.root.globalcommands.Schedule

C:\Users\muly_i\Work Documents\OpenApi\models\augment>

The container "configure" and the list "peer" in the augmented module were not processed.

Best,

Muly