Re: [netmod] Module tags

Christian Hopps <chopps@chopps.org> Sun, 12 February 2017 11:30 UTC

Return-Path: <chopps@chopps.org>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67A4412941E for <netmod@ietfa.amsl.com>; Sun, 12 Feb 2017 03:30:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id U0P6WvFpZ_wr for <netmod@ietfa.amsl.com>; Sun, 12 Feb 2017 03:30:13 -0800 (PST)
Received: from smtp.chopps.org (smtp.chopps.org [54.88.81.56]) by ietfa.amsl.com (Postfix) with ESMTP id E1167127A90 for <netmod@ietf.org>; Sun, 12 Feb 2017 03:30:12 -0800 (PST)
Received: from utops.chopps.org (97-83-46-222.dhcp.trcy.mi.charter.com [97.83.46.222]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by smtp.chopps.org (Postfix) with ESMTPSA id 3AAAF623B2; Sun, 12 Feb 2017 11:30:12 +0000 (UTC)
References: <20170208.231709.2214078600549867460.mbj@tail-f.com> <CABCOCHQJ+ef4C=TAfH9NK47mWgO0XOy1gg-cggigWq7Fqdfkgw@mail.gmail.com> <87d1eouby0.fsf@chopps.org> <20170211.173214.1818067131932995126.mbj@tail-f.com>
User-agent: mu4e 0.9.18; emacs 25.1.1
From: Christian Hopps <chopps@chopps.org>
To: Martin Bjorklund <mbj@tail-f.com>
In-reply-to: <20170211.173214.1818067131932995126.mbj@tail-f.com>
Date: Sun, 12 Feb 2017 06:30:11 -0500
Message-ID: <87y3xbpry4.fsf@chopps.org>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/PNeRI71x62SJMVZAk2JSfDiAFgo>
Cc: netmod@ietf.org
Subject: Re: [netmod] Module tags
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 12 Feb 2017 11:30:14 -0000

Martin Bjorklund <mbj@tail-f.com> writes:
> Christian Hopps <chopps@chopps.org> wrote:


> The augmentation of yang-library is not sufficient b/c it is config
> false only.  That's why a separate config list is also needed.

Or an in-module config:true list of tags, but yes, your right.

>
>> Again the in module list allows for single xpath selection of a given
>> node for all modules that have a certain tag set. I found this rather
>> elegant, so that's why I've argued to keep it. I want to make sure that
>> people have considered this before we abandon it.
>
> Just to be clear, the use case is only for the case where several
> different modules implement the exact same structure, right?  Do you
> have any example where this is the case?  Or maybe I didn't understand
> the use case; if so, could you provide a more complete use case?

In another thread I gave the example of IGP hello timers. The xpaths
currently are exactly the same, but without a way (e.g., tagging interfaces)
to make use of the commonality one wouldn't expect the commonality to have
grown organically I don't think. Also, if I'm not mistaken, even the
xpaths don't have to be exactly the same if one uses regular
expressions, just the final node names.

>> I'm OK with removing the add/delete RPCs as they do seem redundant.
>>
>> Is there a way to get the reset to default behavior? We do allow the
>> user to remove default set tags, so I think that's why Lou added that
>> RPC.
>
> I assume that reset to default would be to remove all configured tags
> from the config.  If so that is clearly supported.

It would also put back any default tags that had been removed. In any
case I was just curious if it was possible. The reset RPC would still
have the issues with doing an end-run around the normal config
operations so I'm fine with removing it as well.

>> > Oddly, the draft relies on XPath filtering to retrieve modules with a certain tag.
>> > There is no <find-tags> operation.
>> > That is the 1 RPC operation that might be justified.
>> >
>> > e.g.:
>> >
>> >  rpc find-tags {
>> >   description "find all modules with the specified tag(s).";
>> >   input {
>> >    leaf-list tag { type string; }
>> >   }
>> >   output {
>> >    leaf-list module-name { type string; }
>> >   }
>> >  }
>>
>> This does seem useful, we can add it.
>
> But this is an XPath one-liner:
>
>   /modules-state/modules/name[../module-tag = 'foo']

Yes, xpath is nice that way. :) I figured the RPC was useful in the case
that xpath wasn't supported.

Thanks,
Chris.

> /martin