junos-nfx-conf-root

Junos YANG module for configuration hierarchies.

  • Version: 2019-01-01

    junos-nfx-conf-root@2019-01-01


    
      module junos-nfx-conf-root {
    
        yang-version 1;
    
        namespace
          "http://yang.juniper.net/junos-nfx/conf/root";
    
        prefix jc;
    
        import junos-common-ddl-extensions {
          prefix junos;
          revision-date "2019-01-01";
        }
        import junos-common-types {
          prefix jt;
          revision-date "2019-01-01";
        }
    
        organization "Juniper Networks, Inc.";
    
        contact "yang-support@juniper.net";
    
        description
          "Junos YANG module for configuration hierarchies.";
    
        revision "2019-01-01" {
          description "Junos: 21.3R1.9";
        }
    
    
        container configuration {
          uses juniper-config;
    
          list groups {
            key "name";
            ordered-by user;
            description "Configuration groups";
            uses juniper-group;
          }  // list groups
        }  // container configuration
    
        grouping juniper-config {
          leaf rcsid {
            type string;
            description
              "Revision control system identifier";
          }
    
          leaf version {
            type string;
            description
              "Software version information";
          }
    
          leaf-list apply-groups {
            type string;
            ordered-by user;
            description
              "Groups from which to inherit configuration data";
          }
        }  // grouping juniper-config
    
        grouping juniper-group {
          description "Configuration groups";
          leaf name {
            type string {
              junos:posix-pattern "^[[:alnum:]._-]+$";
              junos:pattern-message "Group name must be a string of alphanumericals, dashes or underscores";
              length "1 .. 254";
            }
            description "Group name";
          }
    
          container when {
            description
              "Specify additional conditions for groups";
            uses apply-advanced;
    
            container time {
              description
                "Time at which group should be effective";
              leaf start-time {
                type string;
                description
                  "Start time([yyyy-mm-dd.]hh:mm)";
              }
    
              container to {
                description "End time";
                uses apply-advanced;
    
                leaf end-time {
                  type string;
                  description
                    "End time([yyyy-mm-dd.]hh:mm)";
                }
              }  // container to
            }  // container time
    
            leaf-list peers {
              type string {
                length "1 .. 255";
              }
              ordered-by user;
              description
                "Hosts on which this group should be effective";
            }
    
            leaf chassis {
              type enumeration {
                enum "lcc0" {
                  value 0;
                  description "Chassis lcc0";
                }
                enum "lcc1" {
                  value 1;
                  description "Chassis lcc1";
                }
                enum "lcc2" {
                  value 2;
                  description "Chassis lcc2";
                }
                enum "lcc3" {
                  value 3;
                  description "Chassis lcc3";
                }
                enum "lcc4" {
                  value 4;
                  description "Chassis lcc4";
                }
                enum "lcc5" {
                  value 5;
                  description "Chassis lcc5";
                }
                enum "lcc6" {
                  value 6;
                  description "Chassis lcc6";
                }
                enum "lcc7" {
                  value 7;
                  description "Chassis lcc7";
                }
                enum "scc" {
                  value 8;
                  description "Chassis scc";
                }
                enum "sfc0" {
                  value 9;
                  description "Chassis sfc0";
                }
              }
              description "Chassis id";
            }
    
            leaf model {
              type string;
              description "Model name";
            }
    
            leaf routing-engine {
              type enumeration {
                enum "re0" {
                  value 0;
                  description "RE0";
                }
                enum "re1" {
                  value 1;
                  description "RE1";
                }
              }
              description "Routing Engine";
            }
    
            leaf member {
              type string;
              description
                "Member of virtual chassis";
            }
    
            leaf node {
              type enumeration {
                enum "node0" {
                  value 0;
                  description "Node0";
                }
                enum "node1" {
                  value 1;
                  description "Node1";
                }
              }
              description "Node of cluster";
            }
          }  // container when
    
          uses juniper-config;
        }  // grouping juniper-group
    
        grouping apply-advanced {
          description
            "Apply advanced configuration logic";
          leaf-list apply-groups {
            type string;
            ordered-by user;
            description
              "Groups from which to inherit configuration data";
          }
    
          leaf-list apply-groups-except {
            type string;
            ordered-by user;
            description
              "Don't inherit configuration data from these groups";
          }
    
          list apply-macro {
            key "name";
            ordered-by user;
            description
              "Macro and parameters for commit script expansion";
            uses apply-macro-type;
          }  // list apply-macro
        }  // grouping apply-advanced
    
        grouping apply-macro-type {
          description
            "Macro data for commit-script expansion";
          leaf name {
            type string;
            description
              "Name of the macro to be expanded";
          }
    
          list data {
            key "name";
            uses macro-data-type;
          }  // list data
        }  // grouping apply-macro-type
    
        grouping macro-data-type {
          leaf name {
            type string;
            description
              "Keyword part of the keyword-value pair";
          }
    
          leaf value {
            type string;
            description
              "Value part of the keyword-value pair";
          }
        }  // grouping macro-data-type
      }  // module junos-nfx-conf-root
    

© 2023 YumaWorks, Inc. All rights reserved.