After finding the missing pages in my reference guide, I got my module
exporting an slist. Unfortunately, I'm having trouble expanding the list to use
it. I'm trying to use the "short-circuit" method described in the reference
manual, not sure why this isn't working ( output is "R: Test: $(homedirs)" );
bundle agent homedirs
{
vars:
ldap_users::
"homedirs" slist => { @(get_ldap_users.userlist) };
commands:
testhost::
"/var/cfengine/inputs/modules/get_ldap_users"
module => "true";
reports:
ldap_users::
"Test: $(homedirs)";
}
community> -> Executing '/var/cfengine/inputs/modules/get_ldap_users'
...(timeout=-678,owner=-1,group=-1)
community> -> (Setting umask to 77)
community> Defined variable: userlist in context get_ldap_users with value: {
"user1", "user2", "user3", "user4" }
community> M "/var/cfengine/inputs/modules/get_ldap_users":
community> Activated classes: ldap_users
community> M "/var/cfengine/inputs/modules/get_ldap_users":
community> -> Finished command related to promiser
"/var/cfengine/inputs/modules/get_ldap_users" -- succeeded
community> -> Completed execution of
/var/cfengine/inputs/modules/get_ldap_users
community>
community> =========================================================
community> reports in bundle homedirs (1)
community> =========================================================
community>
community>
community> .........................................................
community> Promise handle:
community> Promise made by: Test: $(homedirs)
community> .........................................................
community>
community> Reporting about this...
community> R: Test: $(homedirs)
On Mar 24, 2011, at 10:44 AM, Mark Burgess wrote:
>
> See the required syntax in
>
> http://www.cfengine.org/manuals/cf3-reference.html#module-in-commands
>
> On 03/24/2011 06:35 PM, Michael Stevens wrote:
>> I need to create local homedirs for ldap users. I can't use the built-in
>> ldap functions, as we don't permit anonymous binding, so I've written a
>> module that queries the ldap server and returns a list of users and enables
>> the class "ldap_users." It works fine, however, it returns a scaler and I
>> need an slist. I've tried a few things based on what's done in
>> "unit_module_exec" examples, but haven't been able to get anything to work.
>> What's the trick?
>>
>>
>> bundle agent homedirs
>> {
>> commands:
>>
>> testhost::
>>
>> "/var/cfengine/inputs/modules/get_ldap_users"
>> module => "true";
>>
>> reports:
>>
>> ldap_users::
>>
>> "Test: $(get_ldap_users.ldapusers)";
>>
>> }
>>
>>
>> This returns;
>>
>> R: Test: user1 user2 user3 user4 <etc>
>>
>>
>>
>> _______________________________________________
>> Help-cfengine mailing list
>> [email protected]
>> https://cfengine.org/mailman/listinfo/help-cfengine
> _______________________________________________
> Help-cfengine mailing list
> [email protected]
> https://cfengine.org/mailman/listinfo/help-cfengine
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine