[Puppet Users] Re: Puppet and installing packages from source
I understand exactly what source packages do, if it makes it easier for you I'll call them tar.gz files. Also, I don't find your comparison valid, as the result of package installation be it yum or ./configure make make install is the same: software being installed. My meaning is that compiling from source will always be with us, and it's the prominent way of releasing new software. Thanks, Magic. On Wednesday, January 2, 2013 11:32:55 AM UTC+2, magi...@gmail.com wrote: Hello Everyone, I'm looking for a way to install packages from source via puppet, I was able to locate maybe 5 posts on this subject which is very strange, as I would expect people to still use ./configure with their own customized options. For example, I need to compile Curl with c-ares support, for that I need to set an option for ./configure but can't find a way to do it. Here's the manifest, it works up to the point of configure which fails: file { /usr/local/src: ensure = directory } file { /usr/local/src/c-ares-1.9.1.tar.gz: source = puppet:///modules/web_dev/c-ares-1.9.1.tar.gz, alias = ares-source-tgz, before = Exec[untar-ares-source] } exec { tar xzf /usr/local/src/c-ares-1.9.1.tar.gz: cwd = /usr/local/src, path = /bin, creates = /usr/local/src/c-ares-1.9.1, alias = untar-ares-source, subscribe = File[ares-source-tgz] } exec { configure: command = ./configure, cwd = /usr/local/src/c-ares-1.9.1, path = /usr/local/src/c-ares-1.9.1, require = Exec[untar-ares-source], creates = /usr/local/src/c-ares-1.9.1/config.h, } The ERROR: Debug: Exec[configure](provider=posix): Executing './configure' Debug: Executing './configure' Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: 1: ./configure: expr: not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: 1: ./configure: expr: not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: 95: ./configure: as_fn_error: not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 83: expr: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 90: expr: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 95: as_fn_error: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 465: sed: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 464: expr: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 465: sed: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: ./configure: line 479: sed: command not found Notice: /Stage[main]/Web_dev/Exec[configure]/returns: : error: cannot create .lineno; rerun with a POSIX shell Error: ./configure returned 1 instead of one of [0] Error: /Stage[main]/Web_dev/Exec[configure]/returns: change from notrun to 0 failed: ./configure returned 1 instead of one of [0] Anyone did this or knows whats wrong ? Thanks, Magic. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/zLcAvPzXtPYJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: Puppet and installing packages from source
- Original Message - From: magic rh magic...@gmail.com To: puppet-users@googlegroups.com Sent: Friday, January 4, 2013 9:39:53 AM Subject: [Puppet Users] Re: Puppet and installing packages from source I understand exactly what source packages do, if it makes it easier for you I'll call them tar.gz files. Also, I don't find your comparison valid, as the result of package installation be it yum or ./configure make make install is the same: software being installed. it's not really though is it? the make install route drops a bunch of files down, just tossing it out there with no regard for what comes before or after the yum package apart from putting files on disks also does to name just a few: - manages the serving, locating and transferring of the package onto your OS for you, this is important because built into this process is things like check summing, mirroring including fastest mirror determination, local caches and so forth. You get some of this of course with the puppet file server like the checksums but Puppet isnt really great at it. - manage dependencies: makes sure you have all the pre-determined libraries you need for the software to function. the ./configure method will adjust the software based on the requirements met - you might find that on one machine your ./configure results in a tool minus a key feature while on the others it has it due to a simple ordering problem with when you deliver devel libraries - manage conflicts: if a OS update in the future comes with a file that might conflict with your ./configure build you'll be none the wiser, it'll just be overridden. Packages won't do this, it'll register a conflict and refuse to install thus surfacing this behavior change and potential problem in a mature way - manage file lists: every file the package installs are registered and tracked and you can later compare them for changes. or when you upgrade to the next version orphaned files are detected and removed, config files are not blindly overwritten but backed up and possibly not even replaced. you can later safely uninstall it based on this database - handles things like integration with the OS init, rc, pam, logging and other subsystems - registers the new capability for other packages to be able to rely on it - provide many CLI tools to query, validate and generally manage the software you have on your system in a single consistent way that means you never need to track - as a user or as an automation system - things like different configure flags depending on the type of software. It's all standardised and unified into a single coherent system. All in a way that combines with how your OS vendor chose to design their OS so you know that by working with their approach you'll end up with a better functioning whole in the end Puppet is designed to use the facilities provided by your package manager, for example the package resource has the ability to install, uninstall and upgrade a package and it needs the ability to query if a package is installed. By using these facilities it provides a idempotent means of managing the full life cycle of your software in a mature way. Because your tgz files do not do any of the above things puppet is simply not capable of providing a solid management experience of software delivered in such a manner - the key information sources and standardised management just does not exist for tgz files as they do for true packages. The configure method does the absolute minimal, it just puts files down in some non deterministic location. Worse it requires you to know and manage a wide range of different configure flags and have appropriate error handling for every possible scenario wedged awkwardly into some exec statements. This is not package management, they are not packages. This is just wholesale creation of technical debt. My meaning is that compiling from source will always be with us, and it's the prominent way of releasing new software. We'll always be compiling software as you say, it's how you manage the compilation and delivery of the software that changes. fpm is no harder to use than the tar command and while it does not provide all of these benefits it goes a long way to improving what happens to your software once its compiled. Thanks, Magic. On Wednesday, January 2, 2013 11:32:55 AM UTC+2, magi...@gmail.com wrote: Hello Everyone, I'm looking for a way to install packages from source via puppet, I was able to locate maybe 5 posts on this subject which is very strange, as I would expect people to still use ./configure with their own customized options. For example, I need to compile Curl with c-ares support, for that I need to set an option for ./configure but can't find a way to do it. Here's the manifest, it works up to the point of configure which fails: file { /usr/local/src:
Re: [Puppet Users] Have Puppet *call* REST APIs
I hope this is just not my Google-fu lacking, but can you configure Puppet modules to make REST API calls inherently with Puppet? I'm talking about 3rd party REST APIs, not Puppet's API. I'm thinking of rolling my own plugin, but wondered if I'm missing something here. Can you provide a bit more information on what you're trying to do? If are you are trying to look up a value from a REST API call you could use Hiera with the http backend. Or are you trying to get Puppet to post data to a REST API when it runs? And if so do you want this to happen on the agent when the resource gets applied, or on the server during catalog compilation in the form of a function? Whether or not you are doing anything with the data returned from your call will make a difference here. Craig -- Craig Dunn Professional Services Puppet Labs Inc. http://www.puppetlabs.com -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] How to clone alfresco on puppet agents?
Hi, I have alfresco installed on my puppet master try to clone it using puppet console to puppet agent nodes but under 'live management' link, i can not see any of package/group/user/host resources named similar to alfresco even though i can see postgres package resource but no java/alfresco/tomcat resource? Can anyone let me know how to clone the same? Regards. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/dXF-HUHJ_SgJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Re: puppet master keeps spawning new child processes
Disabling puppet dashboard helped - 12 hours without any frozen 100% child process. Now investigating if it's dashboard's external node command. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/okUymmaneZQJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to automate agent installation on nodes
On Fri, Jan 4, 2013 at 9:23 AM, Nilesh nilesh.chaudha...@gmail.com wrote: Thanks for the reply :) I am using vCenter as a provisioing engin . I will try this option and let you know ... You can try Foreman[1], which among of its features, it creates your vm, install its os and deploy puppet, later on it can monitor your puppet service and of course, tell puppet which classes to apply. cheers, Ohad [1] theforeman.org On Thursday, January 3, 2013 7:25:01 PM UTC+5:30, Ygor wrote: What do you use to provision ? I am still working with non-virtual servers and I use Cobbler to install / configure Puppet “Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us.” Bill Waterson (Calvin Hobbes) - Original Message - From: Nilesh nilesh.c...@gmail.com To: puppet...@googlegroups.com Sent: Thursday, January 3, 2013 6:13:23 AM Subject: [Puppet Users] How to automate agent installation on nodes Hello Everyone Can anyone please let me know once I am done with VM provisioing with vmware how to allocate hostname and install puppet agent on that node automatically. Thanks :) -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/** msg/puppet-users/-/**35pXckQzOCoJhttps://groups.google.com/d/msg/puppet-users/-/35pXckQzOCoJ. To post to this group, send email to puppet...@googlegroups.com. To unsubscribe from this group, send email to puppet-users...@** googlegroups.com. For more options, visit this group at http://groups.google.com/** group/puppet-users?hl=enhttp://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/fROc8zavh8oJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Module for tuned-adm
Hi all, tuned-adm module: https://github.com/rpelisse/puppet-tuned I'm using tuned-admhttps://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Power_Management_Guide/tuned-adm.htmlto tune the kernel of the target system according to a profile. I first used exec{} to trigger the profile setting but lead to the exec{} being ran at every Puppet run which I found, at beast, inelegant. I end up doing this module to more and less properly implement the exists? method. The module implementation is rather rudimentory but still nice to have - if you need it. (Note: i've googled a bit before doing that and ran into a couple of existing Puppet module or code for tuned-adm but they were either using exec() internally or just installing the packages and nothing more). (Final note: Before XMas, I've already submitted a completely useless module extension to handle DNS Name, as it turned out Puppet supports this out of the box, so I hope this module proposal will be a tidbit more useful ! :) ) -- Romain PELISSE, *The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it -- Terry Pratchett* Belaran ins Prussia (blog) http://blog.wordpress.belaran.eu/ (... finally up and running !) -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] puppetlabs-mysql module
You can supply values to override those defined in /etc/my.cnf by adding files to /etc/mysql/conf.d. The module makes the overrides possible with the default configuration in my.cnf, I believe the IncludeDir line. Using phone so difficult to reference. - Trey -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/D98HPPDdiLEJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Internal server error
Hi Mamta This is not really a puppet issue, you have no space left on the device. What puppet master files can you delete, well reports would be one, if you have them enabled and if you wanted to. They normally reside: /var/lib/puppet/reports/node/*.yaml However you may want the data in the future for dashboard or something, so archiving them somewhere may be better. If you have run out of disk space then there are all the usual suspects to consider and check that you do not have a lot unexepcted data in: /tmp/ /var/log/ /var/cache/ However, if you find that you actually seem to have disk space e.g. df -h does not report Use% 100% then check you have not run out of inodes df -i 100% use of inodes will also report No space left on the device. Which should really report Too many files on the device or No inodes left on the device Or you need a bigger boat :) -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/eyLHGeQ075QJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Puppet and installing packages from source
On Friday, January 4, 2013 10:39:53 AM UTC+1, magi...@gmail.com wrote: I understand exactly what source packages do, if it makes it easier for you I'll call them tar.gz files. Also, I don't find your comparison valid, as the result of package installation be it yum or ./configure make make install is the same: software being installed. My meaning is that compiling from source will always be with us, and it's the prominent way of releasing new software. When all the required features of a source build install environment are met, like uninstalling, upgrading, listing, you end up with a new type of package provider. As you don't want a split between OS-provided software (libraries your source file depends on), it's easier to use the provider your OS comes with. The requirements for building source are often many. You'll need a compiler and a toolchain, at least. Many don't want all of these tools installed on their (virtual) production servers, because they consume space, require updates, and because they facilitate exploits. Less software means less work and less risk. Building software on a separate system and deploying the resulting binaries and documentation to production systems is one step up from compiling on your production systems. Many of us used to compile from source earlier in our careers, so don't asume we don't know about anything but ready made packages ;-) Now for a quick hack to address your problem: Why don't you try to do a ./configure --prefix=/usr/local --specialopts make make install on a clean system and create a tar file of /usr/local/ afterwards? Missing dependencies can be met by installing OS packages on your test system. The installation on your target system can be a hack like this: # dependencies package { [ dep1, dep2, dep3, ]: ensure = installed, } file { /var/tmp/curl-custom-version.tar.gz: ensure = file, source = puppet:///module/curl-custom-version.tar.gz, notify = Exec[unpackcurl], } exec { unpackcurl: command = tar -C /usr/local -xzf /var/tmp/curl-custom-version.tar.gz, creates = /usr/local/bin/curl, path = /usr/sbin:/usr/bin:/sbin:/bin, logoutput = true, refreshonly = false, } If possible, use packages, but if you can't meet your deadline this way, try the above (and discover the wonderful world of packaging anyway at a later time). Best, Hans -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/dprmfK80yh8J. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Multiple Requires not allowed, not sure what this is for...
On Wednesday, January 2, 2013 4:33:36 PM UTC+1, jcbollinger wrote: You may also want to consider whether you want to establish relationships with the config class, or whether it would be as good or better to establish them with particular resources declared by that class (e.g. File['/etc/puppet/puppet.conf']). There are a few other variations and options as well, and you are more constrained if class 'puppet::config' is parametrized, but maybe this will get you looking in the right direction. We make a habit of only depending on individual resources (File etc.) within a single class. Dependencies outside the class (e.g. in another manifest) are on classes only. Not sure if others agree, but we made this choice so we could move resources around within a class, clean up code, change File { path: to File { name: etc. Best, Hans van der Made Utrecht University NL -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/845UwF-GQjIJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Configuration is not applied notice: Finished catalog run in 0.01 seconds
On Thursday, January 3, 2013 9:08:48 AM UTC-6, Aleksandar Nikolic wrote: Hi guys, I am fairly new to puppet and I am having a problem with one of the clients. I recently installed a new server that should get config from puppet master. All similar servers I recently installed didn't have any problem. I installed puppet agent on the server and sent a sign request. SSL cert is signed but when I run puppetd manually I get the following: info: Retrieving plugin info: Caching catalog for client4 info: Applying configuration version '1357214285' notice: Finished catalog run in 0.01 seconds Even though it says catalog run finish nothing is applied. The strange thing is that I recently installed the same OS on the same machine and didn't get any problem. I tried various debug options but searching the output didn't help. As Denmat implied, this looks like a problem at your master. It recognizes the client, but serves up an empty catalog. That probably means that the node block you think will match the client does not in fact match it, but there are other possibilities. John -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/6sWqd96pz8UJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Have Puppet *call* REST APIs
Hi Craig, Thanks for your reply. I'm looking to post requests to a server that configures properties of that server after standing it up. So, I would envision sending requests from puppet master in this case to one server. It would happen likely after a bunch of other installations occurred first (that's standard RPM deployment). So it's: 1) Install a bunch of software on numerous machines including server process on a specific machine. (simplified, there's more config I have to do here) 2) Start up the master server. 3) Configure the master server via REST API Posts. I mainly need to check the replies for return status I think. Don't need to process the requests too much. Does that make sense? I probably have to build some custom plugins or something to do this right? I was thinking about exec calls to curl or something, but that seems a little kludgy. Thanks for any advice, it's much appreciated! Rob On Friday, January 4, 2013 5:02:16 AM UTC-6, Craig Dunn wrote: I hope this is just not my Google-fu lacking, but can you configure Puppet modules to make REST API calls inherently with Puppet? I'm talking about 3rd party REST APIs, not Puppet's API. I'm thinking of rolling my own plugin, but wondered if I'm missing something here. Can you provide a bit more information on what you're trying to do? If are you are trying to look up a value from a REST API call you could use Hiera with the http backend. Or are you trying to get Puppet to post data to a REST API when it runs? And if so do you want this to happen on the agent when the resource gets applied, or on the server during catalog compilation in the form of a function? Whether or not you are doing anything with the data returned from your call will make a difference here. Craig -- Craig Dunn Professional Services Puppet Labs Inc. http://www.puppetlabs.com -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/XP2goJEbl-UJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Hiera hashes and arrays in ERB templates
Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. Thanks, Andy -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/vtr8gCCwuBsJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Schedule yum update not found
Hello jcbollinger, I resolved the problem with sudo in the command syntax . [………...] class updateso { schedule{ weekly: range = 14 - 16, repeat = 2, } exec { sudo yum --exclude=drbd* --exclude=kernel* --exclude=mysql* --exclude=php* update -y: user = root, # password_required = true, schedule = weekly, path = /bin:/usr/bin:/sbin:/usr/sbin, } } [] Thanks a lot!! El 04-01-2013, a las 11:28, jcbollinger john.bollin...@stjude.org escribió: On Thursday, January 3, 2013 9:37:49 AM UTC-6, Kazor wrote: Hello, I resolved the structure inside my init.pp, but the command in the puppet agent fails: [………] Jan 3 12:25:45 mail2 puppet-agent[31902]: (/Stage[main]/Updateso/Exec[yum --exclude=drbd* --exclude=kernel* --exclude=mysql* --exclude=php* update -y]/returns) change from notrun to 0 failed: yum --exclude=drbd* --exclude=kernel* --exclude=mysql* --exclude=php* update -y returned 1 instead of one of [0] at /etc/puppet/modules/updateso/manifests/init.pp:13 [………] My class updateso [………] class updateso { schedule{ daily: range = 10 - 15, repeat = 2, } exec { yum --exclude=drbd* --exclude=kernel* --exclude=mysql* --exclude=php* update -y: #LINE 13 schedule = daily, path = /usr/local/bin/:/bin/:/usr/bin/, # refreshonly = true, # command = yum --exclude=kernel* --exclude=mysql* --exclude=php* update -y, } #} } [………] The line 13 is the command yum --exclude …… That looks perfectly normal to me. Your yum update command is not completing successfully. That's probably not Puppet's fault. Run the same command manually to see yum's explanation of the problem, but I'd bet it's a depsolving failure arising from your package exclusions. John -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/PWxzV5bAb9IJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How do I check content of a file in puppet
Any thoughts guys... On Wednesday, January 2, 2013 11:05:41 AM UTC-5, pdiddy wrote: When I build the server I make sure it meets all the compliance requirements (ex: PermitRootLogin, login banner). However, I would like to double check those compliance requirements on daily basis through Puppet (in case someone has changed them). This is an audit requirement. I was able to write custom facts and now I see PermitRootLogin and login banner values in node inventory list. I was trying to create same report using following link, but it's not working http://puppetlabs.com/blog/when-puppet-reports-part-2/ dir structure -- [root@lxpuppet modules]# pwd /opt/puppet/share/puppet/modules [root@lxpuppet modules]# ls -ltR compliance_report compliance_report: total 12 -rw-r--r-- 1 peadmin games 154 Jan 2 10:47 Modulefile drwxr-xr-x 2 peadmin games 4096 Jan 2 10:40 manifests drwxr-xr-x 3 peadmin games 4096 Jan 2 10:25 lib compliance_report/manifests: total 4 -rw-r--r-- 1 peadmin games 467 Jan 2 10:40 init.pp compliance_report/lib: total 4 drwxr-xr-x 3 peadmin games 4096 Jan 2 10:25 puppet compliance_report/lib/puppet: total 4 drwxr-xr-x 2 peadmin games 4096 Jan 2 10:25 reports compliance_report/lib/puppet/reports: total 0 --- On Friday, December 28, 2012 10:11:16 AM UTC-5, pdiddy wrote: Thanks everyone, I will look into these options...I will write back in few days... On Friday, December 28, 2012 7:36:31 AM UTC-5, Keiran Sweet wrote: Hi, Although I've never used it, this does sound like a task for the auditing functionality that was added into Puppet 2.6. Some information about it can be found here: http://puppetlabs.com/blog/all-about-auditing-with-puppet/ You may also find the Puppet enterprise documentation on audit and compliance of some use, as it uses the audit metaparams to achieve this functionality. http://docs.puppetlabs.com/pe/2.7/compliance_basics.html From what I understand, you can build your own auditing/reporting/compliance tool using your existing puppet framework and a modified report processor that fits your needs. Hope this helps. K On Thursday, December 27, 2012 10:27:53 PM UTC, Jason Edgecombe wrote: Yes, you can do what you want if you already have a puppet master (server) in your puppet environment, but you may need configure or install some add-ons. All puppet installations include a tool called facter. Facter gathers various facts or data about your systems. The system can be configured to sent this data back to the puppet server. Various puppet add-ons offer the ability to create reports based on the data that was sent back to the server. For you needs, you will likely need to write a custom fact. Here are some links that might be helpful: Info on facter: http://puppetlabs.com/blog/facter-part-1-facter-101/ How to do custom facts: http://docs.puppetlabs.com/guides/custom_facts.html Puppet reporting: http://docs.puppetlabs.com/guides/reporting.html If you don't use a puppet server, then I think there are other options for gathering the reporting data. Sincerely, Jason P.S. My apologies to other posters, but I didn't see a clear answer to the question. On 12/27/2012 03:01 PM, pdiddy wrote: Understood, but is it possible to get it done via puppet? I've management requirement. On Thursday, December 27, 2012 2:52:31 PM UTC-5, Christopher Wood wrote: You might be better off putting together a custom fact about this. Then you can check fact(s) on the host(s) without trying to manage-but-not-manage something inside puppet. On Thu, Dec 27, 2012 at 11:15:14AM -0800, pdiddy wrote: How do I check content of a file in puppet? ex: I want to see if PermitRootLogin is no in /etc/ssh/sshd_config file (RHEL). If it's yes i want to show it on compliance report. For now I don't want make any changes to the sshd_config file through puppet. Here is something I have: define line($file, $line, $ensure = 'present') { $line = PermitRootLogin no $file = /etc/ssh/sshd_config case $ensure { default : { err ( unknown ensure value ${ensure} ) } present: { warning/flag code: unless = /bin/grep '${line}' '${file}' } } } -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit [1]https://groups.google.com/d/msg/puppet-users/-/M8gmxMKkp58J. To post to this group, send email to puppet...@googlegroups.comjavascript:. To unsubscribe from this group, send email to
[Puppet Users] Re: Hiera hashes and arrays in ERB templates
On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote: Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. I haven't used the function myself, but this looks like it would be a good case for a define + create_resources(), which I think is part of stdlib. You might need to restructure the hashes slightly, but I think that will be the best approach. Thanks, Andy -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/DPkuzR8Q8soJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to clone alfresco on puppet agents?
Hello, In the future, you may want to pose questions like this to the PE-Users list as live management is a Puppet Enterprise feature. There are likely more people on that list who can directly help with those kinds of questions. On the machine alfresco is installed on, can you inspect the current state of the package your're looking for with `puppet resource package package-name`? If you don't know it, you can ask for the state of all packages on the system and pipe it through grep like `puppet resource package | grep foo`. You can replace package with user, group or whatever else you're looking for. Hopefully that gets you to the point where you're absolutely sure what the title is of the resource you want to manage. Try taking that to live management and see if it's just a matter of having the name wrong. HTH, --Ryan On Fri, Jan 4, 2013 at 4:13 AM, lalit jangra lalit.j.jan...@gmail.comwrote: Hi, I have alfresco installed on my puppet master try to clone it using puppet console to puppet agent nodes but under 'live management' link, i can not see any of package/group/user/host resources named similar to alfresco even though i can see postgres package resource but no java/alfresco/tomcat resource? Can anyone let me know how to clone the same? Regards. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/dXF-HUHJ_SgJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- Ryan Coleman | Modules Forge | @ryanycoleman | ryancoleman in #puppet -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] ParsedFile Multi-line...
Afternoon all, I'm currently working on adding oranfstab support to Puppet-Oracle (https://github.com/stschulte/puppet-oracle). However I'm struggling to get my head around how I can get Puppet parsedfile to work with multi-line configurations... An example oranfstab configuration block is: server: stgasm === NFS server Host name path: 10.177.52.158 --- First path to NFS server ie NFS server NIC local: 10.177.52.151 --- First client-side NIC path: 10.177.52.159 --- Second path to NFS server ie NFS server NIC (For load balance purpose) local: 10.177.52.151 --- Second client-side NIC (For load balance purpose) export: /oraclenfs mount: /oradata1 'path' and 'local' are optional, but can be specified multiple times aswell... The final 'export' line is required, and can be provided multiple times for multiple mount points.. So as you can see, there's a fair amount of variability in the file format... It's also then possible to have multiple 'server/path/local/export' blocks, for example with different filers... Any ideas on where I could begin? Is parsedfile right for the job, or am I better looking elsewhere? Thank you in advance for any responses. Regards Gavin -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/7Mz3DIiIIDIJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Hiera hashes and arrays in ERB templates
not sure if this is the best way to do this, but, taking from a different module I have: hiera yaml: snmp_filesystems: root: { mountpoint: '/', threshold: '10%' } snmp_collector: test: { ip:'1.2.3.4', group: 'readonly', community: 'somecommunity' } class: class snmp::params( filesystems = hiera(snmp_filesystems, undef), collector = hiera(snmp_collector, undef) { #… } template: % collector = scope.lookupvar('snmp::params::collector') filesystems = scope.lookupvar('snmp::params::filesystems') -% % collector.each_pair do |key, hash| -% group %=hash['group']-% v2c %=key% %end-% # Filesystem monitoring enabled % filesystems.each_pair do |key, hash| -% # %=key% disk %=hash['mountpoint']-% %=hash['threshold']% %end-% does that help at all? Wolf Noble UNIX Team Lead Datapipe Managed IT Services 1.201.792.4847 (international) x2910 1.888.749.5821 (toll free) x2910 On Jan 4, 2013, at 9:37 AM, llowder llowde...@gmail.com wrote: On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote: Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. I haven't used the function myself, but this looks like it would be a good case for a define + create_resources(), which I think is part of stdlib. You might need to restructure the hashes slightly, but I think that will be the best approach. Thanks, Andy -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/DPkuzR8Q8soJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. This message may contain confidential or privileged information. If you are not the intended recipient, please advise us immediately and delete this message. See http://www.datapipe.com/legal/email_disclaimer/ for further information on confidentiality and the risks of non-secure electronic communication. If you cannot access these links, please notify us by reply message and we will send the contents to you. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Hiera hashes and arrays in ERB templates
I'm with Andy on this one... I'm doing something very similar with my NetApp volume provider (https://github.com/fatmcgav/fatmcgav-netapp/). I've created a define with the following contents: define util::netapp::volume ( $ensure = present, $size, $aggr = 'aggr1', $snapresv = 0, $autoincrement = true, $snapschedule = {minutes = 0, hours = 0, days = 0, weeks = 0} ) { netapp_notify {volume_define_${name}: message = Processing Volume ${name}, } - netapp_volume { v_${name}: ensure = $ensure, initsize = $size, aggregate = $aggr, spaceres = none, snapreserve = $snapresv, autoincrement = $autoincrement, options = {'convert_ucode' = 'on', 'no_atime_update' = 'on', 'try_first' = 'volume_grow'}, snapschedule = $snapschedule } - netapp_qtree { q_${name}: ensure = $ensure, volume = v_${name} } - netapp_export { /vol/v_${name}/q_${name}: ensure = $ensure, persistent = true } } I've added a default hash to 'snapschedule' in the options list, but that can be over-ridden from the Hiera data. Then use the following to pull the data from hiera and call the define: create_resources( util::netapp::volume, hiera('volumes') ) 'Volumes' in hiera yaml looks like: volumes: vol1: ensure: present size: '500m' vol2: ensure: present size: '20g' snapschedule: minutes: 0 hours: 36 days: 0 weeks: 0 You can also use the 'hiera' command to test your yaml structure: $ hiera -c hiera.yaml volumes clientcert=act-star-nactl01 {vol1={ensure=present, size=500m}, vol2={ensure=present, size=20g, snapschedule={days=0, weeks=0, hours=36, minutes=0}}} As you can see from the above output, *snapschedule* for *vol2* is a nested hash. This assumes that your resource provider can support hashes on the relevant param/property ;) HTH Gav On Friday, 4 January 2013 15:37:25 UTC, llowder wrote: On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote: Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. I haven't used the function myself, but this looks like it would be a good case for a define + create_resources(), which I think is part of stdlib. You might need to restructure the hashes slightly, but I think that will be the best approach. Thanks, Andy -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/UjWLd-yp7iIJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Hiera hashes and arrays in ERB templates
Thanks for your suggestions guys. I did consider using create_resource, but don't see how I can when I'm trying to apply this Hiera data to a single file. To expand on my initial post, what I need to do is create multiple config blocks within one file resource. So this Hiera data: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' server2 : ip : '192.168.0.4' port : '8080' cluster2 : ip : '192.168.0.5' port : '80' servers : server3 ip : '192.168.0.6' port : '8080' server4 ip : '192.168.0.7' port : '8080' will result in this being generated in the haproxy config file: listen cluster1 192.168.0.2:80 server server1 192.168.0.3:8080 server server2 192.168.0.4:8080 listen cluster2 192.168.0.5:80 server server3 192.168.0.6:8080 server server4 192.168.0.7:8080 So I don't see how create_resources can handle this, as that's for creating multiple Puppet resources, as opposed to multiple blocks within a single file. The only alternative I can think of at the moment is using create_resources with a define which utilizes Augeas, but I don't know how well that will work. Thanks, Andy On Friday, 4 January 2013 16:47:13 UTC, Gavin Williams wrote: I'm with Andy on this one... I'm doing something very similar with my NetApp volume provider (https://github.com/fatmcgav/fatmcgav-netapp/). I've created a define with the following contents: define util::netapp::volume ( $ensure = present, $size, $aggr = 'aggr1', $snapresv = 0, $autoincrement = true, $snapschedule = {minutes = 0, hours = 0, days = 0, weeks = 0} ) { netapp_notify {volume_define_${name}: message = Processing Volume ${name}, } - netapp_volume { v_${name}: ensure = $ensure, initsize = $size, aggregate = $aggr, spaceres = none, snapreserve = $snapresv, autoincrement = $autoincrement, options = {'convert_ucode' = 'on', 'no_atime_update' = 'on', 'try_first' = 'volume_grow'}, snapschedule = $snapschedule } - netapp_qtree { q_${name}: ensure = $ensure, volume = v_${name} } - netapp_export { /vol/v_${name}/q_${name}: ensure = $ensure, persistent = true } } I've added a default hash to 'snapschedule' in the options list, but that can be over-ridden from the Hiera data. Then use the following to pull the data from hiera and call the define: create_resources( util::netapp::volume, hiera('volumes') ) 'Volumes' in hiera yaml looks like: volumes: vol1: ensure: present size: '500m' vol2: ensure: present size: '20g' snapschedule: minutes: 0 hours: 36 days: 0 weeks: 0 You can also use the 'hiera' command to test your yaml structure: $ hiera -c hiera.yaml volumes clientcert=act-star-nactl01 {vol1={ensure=present, size=500m}, vol2={ensure=present, size=20g, snapschedule={days=0, weeks=0, hours=36, minutes=0}}} As you can see from the above output, *snapschedule* for *vol2* is a nested hash. This assumes that your resource provider can support hashes on the relevant param/property ;) HTH Gav On Friday, 4 January 2013 15:37:25 UTC, llowder wrote: On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote: Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. I haven't used the function myself, but this looks like it would be a good case for a define + create_resources(), which I think is part of stdlib. You might need to restructure the hashes slightly, but I think that will be the best approach. Thanks, Andy -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/W3UBJBXuT24J. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For
Re: [Puppet Users] How to clone alfresco on puppet agents?
I don't think Alfresco is shipped as a formal OS package. It's just a tarball with an installer script last time I looked, I remember some third-party efforts back in the 2.x days but nothing formal from the company itself (at least not when I worked on Alfresco). Live management only deals with proper OS packages, like RPM's and Deb's. I would double check Alfresco is an actual package On Fri, Jan 4, 2013 at 12:13 PM, lalit jangra lalit.j.jan...@gmail.com wrote: Hi, I have alfresco installed on my puppet master try to clone it using puppet console to puppet agent nodes but under 'live management' link, i can not see any of package/group/user/host resources named similar to alfresco even though i can see postgres package resource but no java/alfresco/tomcat resource? Can anyone let me know how to clone the same? Regards. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/dXF-HUHJ_SgJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
RE: [Puppet Users] Re: Hiera hashes and arrays in ERB templates
I'm using stdlib to help with this $listeners = hiera('haproxy_listeners', undef)$listener_keys = keys($listeners) then pass $listener_keys to a define to create all the instances The entre hash is in memory ($listeners) and the define will have the key it is working on ($name)So you can access anything in the data structure to build your resources. Steven Date: Fri, 4 Jan 2013 09:05:15 -0800 From: andytaylo...@gmail.com To: puppet-users@googlegroups.com Subject: [Puppet Users] Re: Hiera hashes and arrays in ERB templates Thanks for your suggestions guys. I did consider using create_resource, but don't see how I can when I'm trying to apply this Hiera data to a single file. To expand on my initial post, what I need to do is create multiple config blocks within one file resource. So this Hiera data: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 :ip : '192.168.0.3'port : '8080' server2 :ip : '192.168.0.4'port : '8080' cluster2 : ip : '192.168.0.5' port : '80' servers : server3 ip : '192.168.0.6' port : '8080' server4 ip : '192.168.0.7' port : '8080' will result in this being generated in the haproxy config file: listen cluster1 192.168.0.2:80 server server1 192.168.0.3:8080 server server2 192.168.0.4:8080 listen cluster2 192.168.0.5:80 server server3 192.168.0.6:8080 server server4 192.168.0.7:8080 So I don't see how create_resources can handle this, as that's for creating multiple Puppet resources, as opposed to multiple blocks within a single file. The only alternative I can think of at the moment is using create_resources with a define which utilizes Augeas, but I don't know how well that will work. Thanks, Andy On Friday, 4 January 2013 16:47:13 UTC, Gavin Williams wrote:I'm with Andy on this one... I'm doing something very similar with my NetApp volume provider (https://github.com/fatmcgav/fatmcgav-netapp/). I've created a define with the following contents: define util::netapp::volume ( $ensure = present, $size, $aggr = 'aggr1', $snapresv = 0, $autoincrement = true, $snapschedule = {minutes = 0, hours = 0, days = 0, weeks = 0} ) { netapp_notify {volume_define_${name}: message = Processing Volume ${name}, } - netapp_volume { v_${name}: ensure = $ensure, initsize = $size, aggregate = $aggr, spaceres = none, snapreserve = $snapresv, autoincrement = $autoincrement, options = {'convert_ucode' = 'on', 'no_atime_update' = 'on', 'try_first' = 'volume_grow'}, snapschedule = $snapschedule } - netapp_qtree { q_${name}: ensure = $ensure, volume = v_${name} } - netapp_export { /vol/v_${name}/q_${name}: ensure = $ensure, persistent = true } } I've added a default hash to 'snapschedule' in the options list, but that can be over-ridden from the Hiera data. Then use the following to pull the data from hiera and call the define: create_resources( util::netapp::volume, hiera('volumes') ) 'Volumes' in hiera yaml looks like: volumes: vol1: ensure: present size: '500m' vol2: ensure: present size: '20g' snapschedule: minutes: 0 hours: 36 days: 0 weeks: 0 You can also use the 'hiera' command to test your yaml structure: $ hiera -c hiera.yaml volumes clientcert=act-star-nactl01 {vol1={ensure=present, size=500m}, vol2={ensure=present, size=20g, snapschedule={days=0, weeks=0, hours=36, minutes=0}}} As you can see from the above output, snapschedule for vol2 is a nested hash. This assumes that your resource provider can support hashes on the relevant param/property ;) HTH Gav On Friday, 4 January 2013 15:37:25 UTC, llowder wrote: On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote:Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 :ip : '192.168.0.3'port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. I haven't used the function myself, but this looks like it would be a good case for a define + create_resources(), which I think is part of stdlib. You might need to restructure the hashes slightly, but I think that will be the
Re: [Puppet Users] Puppet 3.0: Not authorized to call find on /file_metadata, more issues?
On Jan 3, 2013, at 2:02 PM, Forrie wrote: I see the ChangeLog in 3.0.2 and this bug is still not addressed? Is there a technical problem that is not yet resolved, or is this just a matter of priority and time. Forrie this is on the table for 3.1 which will have a Release Candidate build Real Soon Now -- you can track progress on these two bugs: https://projects.puppetlabs.com/issues/17448 https://projects.puppetlabs.com/issues/17449 Eric Sorenson - eric.soren...@puppetlabs.com #puppet irc: eric0 -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] How to manage one line in a file by puppet
Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? I see two options: a) Do some `sed` magic on the file in a `exec` call. Downside: puppet won't notice when the line gets manually changed. b) Have some support for sections inside files, like this: [... part of file untouched by puppet ...] ### # BEGIN MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### GRUB_CMDLINE_XEN='my options' ### # END MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### [... rest of file untouched by puppet ...] Is there support for something like this? Cheers, Andreas. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Windows Puppet Agent Hangs on Run
Can anyone make sense of the output below? I am still experiencing this error. Does this require any configuration change on the puppet server? On Friday, December 21, 2012 4:45:30 PM UTC-5, phundisk wrote: Hi Josh! Making the changes and running the command I got the following... (I made the change in C:\Program Files (x86)\Puppet Labs\Puppet\facter\lib\facter\util\ as that was the only resolution.rb I could find) We do not use cygwin or msys on this system. [0;32mFound no suitable resolves of 1 for xendomains [0m [0;32mvalue for xendomains is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_mode [0m [0;32mvalue for selinux_mode is still nil [0m [0;32mvalue for netmask_teredo_tunneling_pseudo_interface is still nil [0m [0;32mFound no suitable resolves of 1 for vlans [0m [0;32mvalue for vlans is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_config_policy [0m [0;32mvalue for selinux_config_policy is still nil [0m [0;32mFound no suitable resolves of 1 for lsbdistcodename [0m [0;32mvalue for lsbdistcodename is still nil [0m [0;32mFound no suitable resolves of 1 for arp_loopback_pseudo_interface_1 [0m [0;32mvalue for arp_loopback_pseudo_interface_1 is still nil [0m [0;32mvalue for sshrsakey is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_config_mode [0m [0;32mvalue for selinux_config_mode is still nil [0m [0;32mFound no suitable resolves of 2 for processor [0m [0;32mvalue for processor is still nil [0m [0;32mexecuting C:\Windows/system32/netsh.exe interface ipv6 show address level=verbose [0m [0;32mFound no suitable resolves of 1 for lsbrelease [0m [0;32mvalue for lsbrelease is still nil [0m [0;32mvalue for macaddress_teredo_tunneling_pseudo_interface is still nil [0m [0;32mvalue for macaddress_local_area_connection is still nil [0m [0;32mvalue for macaddress_loopback_pseudo_interface_1 is still nil [0m [0;32mvalue for sshecdsakey is still nil [0m architecture = x64 dir = C:\Program Files (x86)\Puppet Labs\Puppet\facter domain = local.currensee.com env_windows_installdir = C:\Program Files (x86)\Puppet Labs\Puppet facterversion = 1.6.14 fqdn = mt4-mgr-qaprod.local.currensee.com hardwaremodel = x64 hostname = mt4-mgr-qaprod id = mt4-mgr-qaprod\administrator interfaces = Loopback_Pseudo_Interface_1,Local_Area_Connection,Teredo_Tunneling_Pseudo_Interface ipaddress = 192.168.5.75 ipaddress6 = 2001:0:9d38:6ab8:3d:37bb:3f57:fab4 ipaddress6_teredo_tunneling_pseudo_interface = 2001:0:9d38:6ab8:3d:37bb:3f57:fab4 ipaddress_local_area_connection = 192.168.5.75 ipaddress_loopback_pseudo_interface_1 = 127.0.0.1 kernel = windows kernelmajversion = 6.1 kernelrelease = 6.1.7600 kernelversion = 6.1.7600 macaddress = B8:AC:6F:B6:22:F9 manufacturer = Dell Inc. memoryfree = 1.98 GB memorysize = 3.97 GB memorytotal = 3.97 GB netmask_local_area_connection = 255.255.255.0 netmask_loopback_pseudo_interface_1 = 255.0.0.0 network_local_area_connection = 192.168.5.0 network_loopback_pseudo_interface_1 = 127.0.0.0 operatingsystem = windows operatingsystemrelease = 6.1.7600 osfamily = windows path = C:\Program Files (x86)\Puppet Labs\Puppet\puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\facter\bin;C:\Program Files (x86)\Puppet Labs\Puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\ruby\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\tools\bin;C:\Program Files (x86)\Puppet Labs\Puppet\puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\facter\bin;C:\Program Files (x86)\Puppet Labs\Puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\ruby\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\tools\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;c:\Program Files\TortoiseSVN\bin;c:\Program Files\SlikSvn\bin physicalprocessorcount = 1 processor0 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor1 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor2 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor3 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processorcount = 4 productname = Vostro 230 ps = tasklist.exe puppetversion = 2.7.20 rubysitedir = C:/Program Files (x86)/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/1.8 rubyversion = 1.8.7 serialnumber = 9CH3KM1 timezone = Morocco Standard Time uptime = 3 days uptime_days = 3 uptime_hours = 77 uptime_seconds = 279298 [0;32mexecuting C:\Windows\system32\arp.EXE -a [0m [0;32mNot an EC2 host [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for
Re: [Puppet Users] How to manage one line in a file by puppet
Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? Would the file_line resource from the puppetlabs stdlib do what you want? http://puppetlabs.com/blog/module-of-the-week-puppetlabsstdlib-puppet-labs-standard-library/ -Steve -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to manage one line in a file by puppet
Hi! On Fri, Jan 4, 2013 at 9:46 AM, Andreas Hilboll li...@hilboll.de wrote: Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? I see two options: There's an extra option involving augeas that may work for you: http://projects.puppetlabs.com/projects/1/wiki/puppet_augeas Thanks, Roman. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to manage one line in a file by puppet
http://docs.puppetlabs.com/references/latest/type.html#augeas http://forge.puppetlabs.com/puppetlabs/stdlib (file_line with match parameter) “Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us.” Bill Waterson (Calvin Hobbes) - Original Message - From: Andreas Hilboll li...@hilboll.de To: Puppet Users puppet-users@googlegroups.com Sent: Friday, January 4, 2013 12:46:34 PM Subject: [Puppet Users] How to manage one line in a file by puppet Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? I see two options: a) Do some `sed` magic on the file in a `exec` call. Downside: puppet won't notice when the line gets manually changed. b) Have some support for sections inside files, like this: [... part of file untouched by puppet ...] ### # BEGIN MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### GRUB_CMDLINE_XEN='my options' ### # END MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### [... rest of file untouched by puppet ...] Is there support for something like this? Cheers, Andreas. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to manage one line in a file by puppet
I'm doing this with the augeas piece like so: augeas { 'make_grub_verbose': context = '/files/etc/grub.conf', changes = [ 'rm hiddenmenu', 'rm splashimage', ], } You should be able to use those features as you like. --Jerald On Jan 4, 2013, at 12:46 PM, Andreas Hilboll li...@hilboll.de wrote: Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? I see two options: a) Do some `sed` magic on the file in a `exec` call. Downside: puppet won't notice when the line gets manually changed. b) Have some support for sections inside files, like this: [... part of file untouched by puppet ...] ### # BEGIN MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### GRUB_CMDLINE_XEN='my options' ### # END MANAGED BY PUPPET: IDENTIFIEROFPUPPETRESOURCE ### [... rest of file untouched by puppet ...] Is there support for something like this? Cheers, Andreas. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] How to manage one line in a file by puppet
Thanks guys, you're amazing :) While augeas looks like a powerful tool, I went for the quick'n'easy file_line resource, with a match parameter to ensure the parameter isn't set multiple times. Cheers, have a nice weekend! Andreas. Am 04.01.2013 20:06, schrieb Stephen Jahl: Hi, I want to write a puppet module for xen on Debian. This module will need to manage one line in the file /etc/default/grub, namely the line starting with GRUB_CMDLINE_XEN=. Currently I want to leave the rest of the file untouched. Which would be the best way to do this? Would the file_line resource from the puppetlabs stdlib do what you want? http://puppetlabs.com/blog/module-of-the-week-puppetlabsstdlib-puppet-labs-standard-library/ -Steve -- You received this message because you are subscribed to the Google Groups Puppet Users group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Puppet3 CSW packages for Solaris
Hey Alex, Thanks - I've known for a long time the SMF manifests aren't right, but the CSW build process has made it hard to resolve. This is good motivation to finally sort it properly. I'll post a note when it's sorted. --Mark On Thursday, January 3, 2013 12:39:52 AM UTC, Alex Box wrote: Mark, Been using CSWpuppet3 packages for a few weeks now, thanks very much. I have found the client SMF manifest needs to be updated to reflect the new invocation (puppet agent vs puppetd): svccfg delete cswpuppetmasterd cat EOF | svccfg import - ?xml version='1.0'? !DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1' service_bundle type='manifest' name='export' service name='network/cswpuppetmasterd' type='service' version='0' single_instance/ dependency name='fs' grouping='require_all' restart_on='none' type='service' service_fmri value='svc:/system/filesystem/local'/ /dependency dependency name='net' grouping='require_all' restart_on='none' type='service' service_fmri value='svc:/network/loopback'/ /dependency exec_method name='start' type='method' exec='/opt/csw/bin/puppet master' timeout_seconds='120' method_context/ /exec_method exec_method name='stop' type='method' exec=':kill -SIGTERM' timeout_seconds='60' method_context/ /exec_method exec_method name='restart' type='method' exec=':kill -SIGHUP' timeout_seconds='180' method_context/ /exec_method instance name='default' enabled='true' property_group name='general' type='framework' propval name='package' type='astring' value='CSWpuppetmaster3'/ /property_group /instance /service /service_bundle EOF -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/ntGp-hhgNg8J. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
[Puppet Users] Re: Hiera hashes and arrays in ERB templates
On Friday, January 4, 2013 9:11:28 AM UTC-6, Andy Taylor wrote: Hi, I'm trying to build a module for haproxy which fetches all the configuration data from Hiera to populate the haproxy config file. I've run into a number of issues though when I try to use hashes. Ideally, I want to use something like this: haproxy_listeners : cluster1 : ip : '192.168.0.2' port : '80' servers : server1 : ip : '192.168.0.3' port : '8080' So a hash of clusters with each cluster containing a nested hash of servers. Is this possible with Hiera/ERB? It's easy enough to iterate over the first hash, but I can't work out how to extract the contents of the nested hash. Or I might just be approaching this in entirely the wrong way... Any help would be much appreciated. The data can be expressed in YAML, loaded into a Puppet variable via Hiera, and processed in an ERB template to construct your file. In other words, yes, it is possible. May I ask, however, what the advantage is to encoding the data in YAML and then transcoding it into the haproxy configuration language? I mean, if you also use bits and pieces of that object elsewhere in your manifests then perhaps it makes sense, but if all you want to do with it is generate the config file then I don't see the point. Why not just serve up the config as a static or mostly-static file? Leaving aside the question of merits of your design, - Note that your example data are a quadruply-nested hash, not just a doubly-nested one as you say. You have a hash of clusters, each of which is a hash itself and contains a third hash, each of whose values is * another* hash. - The same Ruby mechanisms that allow your template to iterate and otherwise inspect the outer hash also work for the inner ones. - Perhaps, though, you are tripping over the fact that the values in your outer hash are of uniform type and meaning, whereas the values in the next-level hash are of varying type and meaning. You probably don't actually want to iterate the second-level hash; instead, you want to retrieve specific values from it by key. So, you might do something of this general form (not intended to resemble an actual haproxy configuration file): haproxy.conf.erb: % @clusters.each_pair | cluster, properties | { -% cluster name=%= cluster % ip=%= properties['ip'] % port=%= properties['port'] % % properties['servers'].each_pair | server, server_props | { -% server name=%= server % ip=%= server_props['ip'] % port=%= server_props['port'] % / % } -% /cluster % } -% Once corrected for the inevitable typos, that should produce output similar to cluster name=cluster1 ip=192.168.0.2 port=80 server name=server1 ip=192.168.0.3 port=8080 / /cluster John -- You received this message because you are subscribed to the Google Groups Puppet Users group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/uZSpX_tBuM8J. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Re: [Puppet Users] Windows Puppet Agent Hangs on Run
On Friday, January 4, 2013 11:01:00 AM UTC-8, phundisk wrote: Can anyone make sense of the output below? I am still experiencing this error. Does this require any configuration change on the puppet server? On Friday, December 21, 2012 4:45:30 PM UTC-5, phundisk wrote: Hi Josh! Making the changes and running the command I got the following... (I made the change in C:\Program Files (x86)\Puppet Labs\Puppet\facter\lib\facter\util\ as that was the only resolution.rb I could find) We do not use cygwin or msys on this system. [0;32mFound no suitable resolves of 1 for xendomains [0m [0;32mvalue for xendomains is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_mode [0m [0;32mvalue for selinux_mode is still nil [0m [0;32mvalue for netmask_teredo_tunneling_pseudo_interface is still nil [0m [0;32mFound no suitable resolves of 1 for vlans [0m [0;32mvalue for vlans is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_config_policy [0m [0;32mvalue for selinux_config_policy is still nil [0m [0;32mFound no suitable resolves of 1 for lsbdistcodename [0m [0;32mvalue for lsbdistcodename is still nil [0m [0;32mFound no suitable resolves of 1 for arp_loopback_pseudo_interface_1 [0m [0;32mvalue for arp_loopback_pseudo_interface_1 is still nil [0m [0;32mvalue for sshrsakey is still nil [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux is still nil [0m [0;32mFound no suitable resolves of 1 for selinux_config_mode [0m [0;32mvalue for selinux_config_mode is still nil [0m [0;32mFound no suitable resolves of 2 for processor [0m [0;32mvalue for processor is still nil [0m [0;32mexecuting C:\Windows/system32/netsh.exe interface ipv6 show address level=verbose [0m [0;32mFound no suitable resolves of 1 for lsbrelease [0m [0;32mvalue for lsbrelease is still nil [0m [0;32mvalue for macaddress_teredo_tunneling_pseudo_interface is still nil [0m [0;32mvalue for macaddress_local_area_connection is still nil [0m [0;32mvalue for macaddress_loopback_pseudo_interface_1 is still nil [0m [0;32mvalue for sshecdsakey is still nil [0m architecture = x64 dir = C:\Program Files (x86)\Puppet Labs\Puppet\facter domain = local.currensee.com env_windows_installdir = C:\Program Files (x86)\Puppet Labs\Puppet facterversion = 1.6.14 fqdn = mt4-mgr-qaprod.local.currensee.com hardwaremodel = x64 hostname = mt4-mgr-qaprod id = mt4-mgr-qaprod\administrator interfaces = Loopback_Pseudo_Interface_1,Local_Area_Connection,Teredo_Tunneling_Pseudo_Interface ipaddress = 192.168.5.75 ipaddress6 = 2001:0:9d38:6ab8:3d:37bb:3f57:fab4 ipaddress6_teredo_tunneling_pseudo_interface = 2001:0:9d38:6ab8:3d:37bb:3f57:fab4 ipaddress_local_area_connection = 192.168.5.75 ipaddress_loopback_pseudo_interface_1 = 127.0.0.1 kernel = windows kernelmajversion = 6.1 kernelrelease = 6.1.7600 kernelversion = 6.1.7600 macaddress = B8:AC:6F:B6:22:F9 manufacturer = Dell Inc. memoryfree = 1.98 GB memorysize = 3.97 GB memorytotal = 3.97 GB netmask_local_area_connection = 255.255.255.0 netmask_loopback_pseudo_interface_1 = 255.0.0.0 network_local_area_connection = 192.168.5.0 network_loopback_pseudo_interface_1 = 127.0.0.0 operatingsystem = windows operatingsystemrelease = 6.1.7600 osfamily = windows path = C:\Program Files (x86)\Puppet Labs\Puppet\puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\facter\bin;C:\Program Files (x86)\Puppet Labs\Puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\ruby\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\tools\bin;C:\Program Files (x86)\Puppet Labs\Puppet\puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\facter\bin;C:\Program Files (x86)\Puppet Labs\Puppet\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\ruby\bin;C:\Program Files (x86)\Puppet Labs\Puppet\sys\tools\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;c:\Program Files\TortoiseSVN\bin;c:\Program Files\SlikSvn\bin physicalprocessorcount = 1 processor0 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor1 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor2 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processor3 = Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz processorcount = 4 productname = Vostro 230 ps = tasklist.exe puppetversion = 2.7.20 rubysitedir = C:/Program Files (x86)/Puppet Labs/Puppet/sys/ruby/lib/ruby/site_ruby/1.8 rubyversion = 1.8.7 serialnumber = 9CH3KM1 timezone = Morocco Standard Time uptime = 3 days uptime_days = 3 uptime_hours = 77 uptime_seconds = 279298 [0;32mexecuting C:\Windows\system32\arp.EXE -a [0m [0;32mNot an EC2 host [0m [0;32mFound no suitable resolves of 1 for selinux [0m [0;32mvalue for selinux