junos-nfx-rpc-file-mgd

Junos RPC YANG module for file-mgd command(s)

  • Version: 2019-01-01

    junos-nfx-rpc-file-mgd@2019-01-01


    
      module junos-nfx-rpc-file-mgd {
    
        yang-version 1;
    
        namespace
          "http://yang.juniper.net/junos-nfx/rpc/file-mgd";
    
        prefix file-mgd;
    
        import junos-common-types {
          prefix jt;
          revision-date "2019-01-01";
        }
    
        organization "Juniper Networks, Inc.";
    
        contact "yang-support@juniper.net";
    
        description
          "Junos RPC YANG module for file-mgd command(s)";
    
        revision "2019-01-01" {
          description "Junos: 21.3R1.9";
        }
    
    
        rpc file-mgd-copy {
          description
            "Copy files (local or remote)";
          input {
            leaf source {
              type string;
              mandatory true;
              description "URL of source file";
            }
    
            leaf destination {
              type string;
              mandatory true;
              description
                "URL of destination file";
            }
    
            leaf source-address {
              type string;
              description
                "Local address to use in originating the connection";
            }
    
            leaf routing-instance {
              type string;
              description
                "Name of routing instance for host attempt";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc file-mgd-copy
    
        rpc file-put {
          description
            "Put file onto device with contents inlined";
          input {
            leaf filename {
              type jt:filename;
              mandatory true;
              description
                "Name of destination file on device";
            }
    
            leaf permission {
              type string;
              description
                "Name of destination file on device";
            }
    
            leaf encoding {
              type string;
              mandatory true;
              description
                "Encoding type: ascii or base64";
            }
    
            leaf delete-if-exist {
              type empty;
              description
                "Delete the destination file on device if it already exists";
            }
    
            leaf file-contents {
              type jt:string-huge;
              mandatory true;
              description "File content";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml file-put-results;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc file-put
    
        rpc file-get {
          description
            "Get file from device with contents inlined";
          input {
            leaf filename {
              type jt:filename;
              mandatory true;
              description
                "Name of source file on device";
            }
    
            leaf encoding {
              type string;
              mandatory true;
              description
                "Encoding type: ascii, base64, or raw";
            }
          }
    
          output {
            choice output_c {
              leaf output {
                type string;
              }
              anyxml file-get-results;
              anyxml multi-routing-engine-results;
            }  // choice output_c
          }
        }  // rpc file-get
    
        grouping command-forwarding {
          choice chassis-selector {
            leaf all-chassis {
              type empty;
              description "All chassis";
            }
            leaf all-lcc {
              type empty;
              description "All LCC chassis";
            }
            leaf scc {
              type empty;
              description "SCC";
            }
            leaf sfc {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description "SFC";
            }
            leaf lcc {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description "Specific LCC";
            }
            leaf node {
              type string;
              description "Specific node";
            }
            leaf bsys {
              type empty;
              description "Base system";
            }
            leaf gnf {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "1 .. 10";
                }
              }
              description
                "Specific guest network function";
            }
            leaf all-gnfs {
              type empty;
              description
                "All guest network functions";
            }
            leaf all-system {
              type empty;
              description
                "All system (BSYS and GNFs)";
            }
            leaf server {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32 {
                  range "0 .. 1";
                }
              }
              description "Specific server slot";
            }
            leaf all-servers {
              type empty;
              description "All servers";
            }
            leaf vnf {
              type string;
              description
                "Specific virtual-network-function";
            }
            leaf all-vnfs {
              type empty;
              description
                "All virtual-network-functions";
            }
          }  // choice chassis-selector
    
          choice re-selector {
            leaf re0 {
              type empty;
              description "RE0";
            }
            leaf re1 {
              type empty;
              description "RE1";
            }
            leaf routing-engine {
              type enumeration {
                enum "local" {
                  value 0;
                  description
                    "Local routing engine";
                }
                enum "other" {
                  value 1;
                  description
                    "Other routing engine";
                }
                enum "master" {
                  value 2;
                  description
                    "Master routing engine";
                }
                enum "backup" {
                  value 3;
                  description
                    "Backup routing engine";
                }
                enum "both" {
                  value 4;
                  description
                    "Both routing engines";
                }
              }
              description
                "Specific routing engine";
            }
          }  // choice re-selector
    
          choice lr-selector {
            leaf logical-system {
              type string;
              description
                "Name of logical system, or 'all'";
            }
          }  // choice lr-selector
    
          choice tenant-selector {
            leaf tenant {
              type string;
              description
                "Name of tenant, or 'all'";
            }
          }  // choice tenant-selector
    
          choice vc-selector {
            leaf local {
              type empty;
              description
                "Local virtual chassis member";
            }
            leaf all-members {
              type empty;
              description
                "All virtual chassis members";
            }
            leaf member {
              type union {
                type string {
                  pattern "<.*>|$.*";
                }
                type uint32;
              }
              description
                "Specific virtual chassis member";
            }
          }  // choice vc-selector
        }  // grouping command-forwarding
      }  // module junos-nfx-rpc-file-mgd
    

© 2023 YumaWorks, Inc. All rights reserved.