Cisco-IOS-XR-install-search-act

This module contains a collection of YANG definitions for Cisco IOS-XR install actions related to searching for package informat...

  • Version: 2020-08-03

    Cisco-IOS-XR-install-search-act@2020-08-03


    
      module Cisco-IOS-XR-install-search-act {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XR-install-search-act";
    
        prefix install-search-act;
    
        import cisco-semver {
          prefix semver;
        }
        import Cisco-IOS-XR-types {
          prefix csc;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for Cisco IOS-XR install actions related to searching for package
         information.
         
         Copyright (c) 2016-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2020-08-03" {
          description
            "Modified tasks for the RPC operations.
           2020-05-28
             Move packages grouping for info/search/provides one level down to allow
           for addition of information about configured repositories.";
        }
    
        revision "2019-10-01" {
          description
            "Made changes to be RFC6087 compliant";
        }
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2017-12-01" {
          description "IOS XR 7.1.1 revision.";
        }
    
        semver:module-version "2.0.0";
        semver:module-version "1.1.0";
        semver:module-version "1.0.0";
    
        typedef Inst-provides-match-type {
          type enumeration {
            enum "description" {
              value 0;
              description "Description";
            }
            enum "URL" {
              value 1;
              description "URL";
            }
            enum "license" {
              value 2;
              description "License";
            }
            enum "filename" {
              value 3;
              description "Filename";
            }
            enum "other" {
              value 4;
              description "Other";
            }
            enum "provide" {
              value 5;
              description "Provide";
            }
          }
          description
            "Install provides match type";
        }
    
        grouping INST-PKG-COMMON-TYPE {
          description "Package details";
          leaf name {
            type string;
            description "Package name";
          }
    
          leaf architecture {
            type string;
            description "Package architecture";
          }
    
          leaf summary {
            type string;
            description
              "Brief package description";
          }
        }  // grouping INST-PKG-COMMON-TYPE
    
        grouping INST-PKG-VERSION-TYPE {
          description
            "Package versioning information";
          leaf version {
            type string;
            description "Package version";
          }
    
          leaf epoch {
            type string;
            description "Package epoch, if any";
          }
    
          leaf release {
            type string;
            description "Package release";
          }
        }  // grouping INST-PKG-VERSION-TYPE
    
        grouping INST-PKG-INFO-TYPE {
          description
            "Further package details for 'info' queries";
          leaf size {
            type uint32;
            description "Package size, in kB";
          }
    
          leaf description {
            type string;
            description
              "More detailed description of the package";
          }
    
          leaf license {
            type string;
            description
              "Package license information";
          }
    
          leaf repository {
            type string;
            description
              "Repository containing the package";
          }
    
          leaf url {
            type string;
            description
              "Repository URL reference";
          }
        }  // grouping INST-PKG-INFO-TYPE
    
        grouping INST-PKG-SEARCH-LIST-TYPE {
          description
            "Install package search list type";
          container packages {
            description "List of packages";
            list package {
              description "List of packages";
              uses INST-PKG-COMMON-TYPE;
            }  // list package
          }  // container packages
        }  // grouping INST-PKG-SEARCH-LIST-TYPE
    
        grouping INST-PKG-INFO-LIST-TYPE {
          description
            "Install package info list type";
          container packages {
            description "List of packages";
            list package {
              description "List of packages";
              uses INST-PKG-COMMON-TYPE;
    
              uses INST-PKG-VERSION-TYPE;
    
              uses INST-PKG-INFO-TYPE;
            }  // list package
          }  // container packages
        }  // grouping INST-PKG-INFO-LIST-TYPE
    
        grouping INST-PKG-REPOSITORY-WARNINGS {
          description
            "Information about user configured repositories that were searched";
          container inaccessible-repositories {
            description
              "List of repositories that the package manager was unable to access,
             likely due to configuration errors or network connectivity";
            leaf-list repository {
              type string;
              description "repository-name";
            }
          }  // container inaccessible-repositories
    
          container repositories-metadata-failed {
            description
              "List of local repositories where automatic metadata generation
             failed. Information about packages in these repositories may not be
             up to date.";
            leaf-list repository {
              type string;
              description "repository-name";
            }
          }  // container repositories-metadata-failed
        }  // grouping INST-PKG-REPOSITORY-WARNINGS
    
        grouping INST-PKG-PROVIDES-LIST-TYPE {
          description
            "Install package provides list type";
          container packages {
            description "List of packages";
            list package {
              description "List of packages";
              uses INST-PKG-COMMON-TYPE;
    
              uses INST-PKG-VERSION-TYPE;
    
              leaf repository {
                type string;
                description
                  "Repository containing the package";
              }
    
              container provides-matches {
                description
                  "Features or dependencies this package provides";
                list provides-match {
                  description "Provides match";
                  leaf match_type {
                    type Inst-provides-match-type;
                    description
                      "Type of object that the item was matched from";
                  }
    
                  leaf item {
                    type string;
                    description
                      "Package/feature/filename that is provided";
                  }
                }  // list provides-match
              }  // container provides-matches
            }  // list package
          }  // container packages
        }  // grouping INST-PKG-PROVIDES-LIST-TYPE
    
        rpc info {
          csc:xr-task "pkg-mgmt";
          description
            "Search for information about the given packages";
          input {
            leaf search-packages {
              type string {
                length "1..1024";
              }
              description
                "Space separated list of packages to query";
            }
          }
    
          output {
            container results {
              description "Info results";
              uses INST-PKG-INFO-LIST-TYPE;
    
              uses INST-PKG-REPOSITORY-WARNINGS;
            }  // container results
          }
        }  // rpc info
    
        rpc provides {
          csc:xr-task "pkg-mgmt";
          description
            "Search for packages that provide the given file. Wildcards may
           be used (do not use quotes).";
          input {
            leaf search-files {
              type string {
                length "1..1024";
              }
              description
                "Space separated list of files or wildcard strings to query";
            }
          }
    
          output {
            container results {
              description "Provides results";
              uses INST-PKG-PROVIDES-LIST-TYPE;
    
              uses INST-PKG-REPOSITORY-WARNINGS;
            }  // container results
          }
        }  // rpc provides
    
        rpc search {
          csc:xr-task "pkg-mgmt";
          description
            "Search for packages that contain the given string in the name,
           summary, description or url.  Wildcards may be used.";
          input {
            leaf search-strings {
              type string {
                length "1..1024";
              }
              description
                "Space separated list of strings to search for";
            }
          }
    
          output {
            container results {
              description "Search results";
              uses INST-PKG-SEARCH-LIST-TYPE;
    
              uses INST-PKG-REPOSITORY-WARNINGS;
            }  // container results
          }
        }  // rpc search
      }  // module Cisco-IOS-XR-install-search-act
    

© 2023 YumaWorks, Inc. All rights reserved.