Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2014-05-16

| Channels | #salt index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:02 conan_the_destro joined #salt
00:07 Luke__ joined #salt
00:08 meteorfox joined #salt
00:09 falican joined #salt
00:15 Shenril joined #salt
00:16 tristianc joined #salt
00:19 ajprog_laptop joined #salt
00:25 TyrfingMjolnir joined #salt
00:29 TyrfingMjolnir joined #salt
00:29 MBroadhead joined #salt
00:29 yongzhi joined #salt
00:41 to_json joined #salt
00:44 TyrfingMjolnir joined #salt
00:45 anuvrat joined #salt
00:52 tligda left #salt
00:52 tligda joined #salt
00:52 mgw joined #salt
00:52 hachaboob joined #salt
00:56 hachaboob I am having trouble writing a simple ext_pillar module. I have set extension_modules: /srv/salt/extension_modules in my master.conf and added the module to ext_pillar setting in master.conf and put the actual module in to /srv/salt/extension_modules/pillar/. I am obviously doing something wrong.
00:56 TyrfingMjolnir joined #salt
00:59 abe_music joined #salt
01:00 TyrfingMjolnir joined #salt
01:01 Outlander_ joined #salt
01:07 Outlander joined #salt
01:08 Nazca__ joined #salt
01:09 mateoconfeugo joined #salt
01:09 redondos joined #salt
01:12 mgw hachaboob: did you figure it out?
01:13 mgw In my master config I have this:
01:13 ajprog_laptop joined #salt
01:14 mgw pillar_dirs:
01:14 mgw - /srv/pillar/ext
01:14 mgw and the ext pillars are in that dir
01:14 mgw the extenstion_modules option might work too though, not sure
01:15 ashw7n_ joined #salt
01:17 hachaboob mgw: Not yet. So does your pillar_dirs dir contain python modules which define the ext_pillar function?
01:17 mgw yes
01:18 cruatta joined #salt
01:18 mgw hachaboob: ^
01:19 hachaboob Hmmm. Its undocumented...
01:19 mgw did that fix it for you?
01:20 hachaboob Trying it now...
01:23 hachaboob Its not working
01:28 hachaboob I need a really basic example of using a custom ext_pillar module which adds a single item to the pillar
01:29 quickdry21 joined #salt
01:30 faldridge joined #salt
01:31 mgw joined #salt
01:32 mgw hachaboob: one second
01:33 [diecast] joined #salt
01:36 mgw hachaboob: https://gist.github.com/mgwilliams/81c5c10267a0b61c6cc2
01:36 mgw or even just the function
01:36 mgw since it's not even logging
01:36 elfixit joined #salt
01:36 mgw hachaboob: you can also update the pillar that's passed in and return {}
01:37 hachaboob Thanks I will check it out. I really appreciate your help mgw
01:37 mgw hachaboob: my pleasure
01:38 hachaboob I am doing something like that however I dont know if my module is even being loaded
01:39 tristianc joined #salt
01:45 __number5__ hachaboob: try 'salt-call saltutil.sync_all' on your minion
01:47 rgbkrk joined #salt
01:50 ckao joined #salt
01:51 hachaboob Still nothing added. mgw: could you add master conf to your gist too?
02:00 schimmy1 joined #salt
02:00 joseph__ joined #salt
02:01 joseph__ is there anyway in a pillar to set a value based on a pillar value that was previously set?
02:01 ashw7n joined #salt
02:09 hachaboob joseph__: That is what I am eventually trying to do using ext_pillar
02:13 joseph__ its driving me crazy
02:13 joseph__ i am having to jump through ridiculous hoops
02:13 joseph__ all because i can't test a simple boolean
02:17 mgw joined #salt
02:18 joseph__ is there a way to set a variable BEFORE  jinja for loop, update the variable in the for loop based on a condition, and then evaluate the updated variable in an if condition?
02:19 ajw0100 joined #salt
02:19 mgw __number5__, hachaboob: that's not necessary for pillar modules
02:19 TyrfingMjolnir joined #salt
02:19 mgw hachaboob: set debug_level to info or even debug in your master config
02:20 mgw and then grep it for your ext pillar's name
02:20 __number5__ oh, didn't realize it just for ext_pillar modules
02:30 mateoconfeugo joined #salt
02:32 n8n joined #salt
02:36 hachaboob mgw: nothing in there
02:39 n8n joined #salt
02:40 hachaboob mgw: https://gist.github.com/anonymous/bdad8c645d316917e2f0
02:40 jalaziz joined #salt
02:42 JonGretar joined #salt
02:43 ashw7n joined #salt
02:44 thunderbolt joined #salt
02:46 acabrera joined #salt
02:50 ipalreadytaken joined #salt
02:51 acabrera joined #salt
02:51 ksalman joined #salt
02:52 garthk joined #salt
02:59 jalaziz joined #salt
02:59 Furao joined #salt
03:01 bhosmer joined #salt
03:08 mgw joined #salt
03:14 meteorfox|away joined #salt
03:17 Outlander left #salt
03:20 dccc joined #salt
03:24 sroegner_ joined #salt
03:24 hachaboob Please help me get ext_pillar module working
03:24 thayne joined #salt
03:28 Furao joined #salt
03:33 mgw joined #salt
03:37 ejo joined #salt
03:39 stephas joined #salt
03:41 kermit joined #salt
03:42 pdayton1 joined #salt
03:52 ajw0100 joined #salt
03:56 Ztyx joined #salt
04:02 FarrisG joined #salt
04:09 catpiggest joined #salt
04:11 stanchan joined #salt
04:16 Ryan_Lane joined #salt
04:16 kober Had to take a break from salt (it was making me angry! ;)).  So what is the standard way for bootstrapping a VM?  Do most people just curl the shell script? Do they just create a VM image and use it to provision each VM?
04:17 naiyte joined #salt
04:21 ajolo joined #salt
04:22 mgw1 joined #salt
04:23 travisfischer joined #salt
04:25 pdayton joined #salt
04:29 Ztyx kober: I currently use the bootstrapping script, because it let's me easier set the minion ID on bootstrap. Also, I don't bootstrap new VMs daily. If I would, I'd take a different approach. Eventually we might have to use autoscaling on EC2 for some machines, in that case I'd definitely need pre-bootstrapped VMs.
04:29 kober How do you get the script on there, and how do you run it?
04:29 kober Is it always just a manual thing?
04:30 kober or did you automate it somehow?
04:30 Ztyx Ubuntu cloud-init. I have a line for the `curl … | bash` thing there.
04:30 Ztyx Actually, that's only for EC2. Haven't used cloud-init for vmware instances as of yet.
04:31 Ztyx For vmware instances I'm currently executing it manually.
04:31 Ztyx Have a look at cloud-init. Could solve your problems.
04:32 kober I'm currently testing on VMs from libvirt, and then I'll be deploying on bare metal
04:33 kober I don't mind running it manually right now but would like to get it automated
04:33 kober I think at least for the development machines that use vagrant I can automate it via the vagrant file
04:34 Ztyx kober: Yeah, I've used vagrant provisioning for testing Saltstack configuration. Works like a charm.
04:35 Ztyx kober: I mean, you could use something like Fabric to execute the bootstrap scripts if you had a lot of machines, but I don't think the work is worth unless you have > 10 instances that needs bootstrapping.
04:42 stephas joined #salt
04:42 linjan joined #salt
04:44 garthk joined #salt
04:46 Networkn3rd joined #salt
04:53 n8n joined #salt
04:57 mgw joined #salt
04:58 malinoff joined #salt
04:58 ccase joined #salt
05:00 malinoff Hi guys, could you please participate in my poll? It has only two questions and will not take a long time! https://docs.google.com/a/thumbtack.net/forms/d/1-O3Md8o86jKIW9n5gNZeMHwgC0CWkIQvwjyXe9I2Z3g/viewform
05:25 sroegner_ joined #salt
05:31 Ryan_Lane joined #salt
05:35 ajw0100 joined #salt
05:37 Ztyx joined #salt
05:37 occaton joined #salt
05:39 ajw0100 joined #salt
05:44 n8n joined #salt
05:51 epcim joined #salt
05:54 hachaboob Is anyone using the extension_modules setting in their master conf?
05:54 garthk joined #salt
05:55 ajolo__ joined #salt
05:57 n8n joined #salt
05:59 ndrei joined #salt
06:04 picker joined #salt
06:06 ChaosPsyke joined #salt
06:15 schimmy joined #salt
06:17 anuvrat joined #salt
06:19 schimmy1 joined #salt
06:19 CeBe joined #salt
06:23 tharkun joined #salt
06:27 hachaboob OK got it working
06:28 hachaboob Is it possible to use ext_pillar data in the pillar top.sls?
06:29 Furao no
06:30 Furao hachaboob: first static pillars (.sls files) get rendered and output is passed trough ext_pillar
06:31 Furao you can use pillar from sls files in ext_pillar but not the opposite
06:33 hachaboob OK
06:34 anuvrat joined #salt
06:35 tharkun joined #salt
06:42 swissknife joined #salt
06:46 googolhash joined #salt
06:48 lionel joined #salt
06:48 ndrei joined #salt
06:51 kryss joined #salt
06:52 kryss left #salt
06:54 ajolo__ joined #salt
06:56 steveoliver joined #salt
06:57 Kenzor joined #salt
07:08 harobed_ joined #salt
07:09 harobed_ joined #salt
07:09 harobed_ joined #salt
07:11 harobed_ joined #salt
07:12 ipalreadytaken joined #salt
07:17 fbaumgar joined #salt
07:18 Ztyx joined #salt
07:19 scott_walton joined #salt
07:20 martoss joined #salt
07:21 marnom joined #salt
07:26 sroegner_ joined #salt
07:26 arapaho_ joined #salt
07:26 crashmag_ joined #salt
07:27 aarontc joined #salt
07:28 oc- joined #salt
07:28 madduck joined #salt
07:28 madduck joined #salt
07:32 thehaven joined #salt
07:32 martoss joined #salt
07:34 martoss left #salt
07:36 s0l4r joined #salt
07:37 s0l4r anyone know what TCP/UDP ports is used when using the new RAET protocol?
07:40 joehh ubuntu packages for 2014.1.4 for precise and lucid are up on launchpad, others coming later tonight
07:40 __number5__ thanks joehh
07:41 malinoff s0l4r, https://github.com/RaetProtocol/raet/#road-raet-production-udpip-ports
07:42 thehaven joined #salt
07:44 s0l4r malinoff, super, thanks :)
07:44 Ryan_Lane joined #salt
07:45 Ryan_Lane joined #salt
07:47 TyrfingMjolnir joined #salt
07:48 s0l4r malinoff, would RAET be better to use over WAN links you think? because 0mq didn't work very well for use. I hope raet will :)
07:48 s0l4r use=us
07:49 fbaumgar joined #salt
07:49 s0l4r wan links=slow, unreliable, connection breaks , etc
07:50 malinoff s0l4r, there are a lot of transports, fast, durable, tested and time-proven (like amqp brokers like rabbitmq, redis, ssh and so forth)
07:50 malinoff I don't think that implementing a UDP-based transport is the best idea at all
07:51 malinoff And since salt is not tested well, I don't thing RAET will be tested well
07:51 malinoff s/thing/think
07:52 anuvrat joined #salt
07:52 s0l4r hmm ok. sounds like we dont know yet.. do you know if the ssh transport is stable enough these days? it's pretty new. we are using ansible now because 0mq didnt work, but i prefer salt, if only I had a good transport replacement
07:53 malinoff It's not stable
07:53 malinoff As far as I know
07:53 s0l4r ok
07:53 s0l4r :(
07:55 jchen joined #salt
07:56 elfixit joined #salt
08:04 darkelda joined #salt
08:11 slav0nic joined #salt
08:11 slav0nic joined #salt
08:20 ggoZ joined #salt
08:27 sm1ly hello all. tell me please, how I can deploy directory with some web code?
08:29 bhosmer joined #salt
08:30 bhosmer joined #salt
08:35 Ztyx sm1ly: Have a look at the file.recurse state: http://docs.saltstack.com/en/latest/ref/states/all/salt.states.file.html#salt.states.file.recurse It will copy a whole directory recursively to your minions.
08:36 sm1ly Ztyx, thx! thats what I need
08:36 swissknife joined #salt
08:42 Ztyx sm1ly: You're welcome. Depending on what kind of web code it is, you might want to restart some service when/if your code is updated. Have a look at the `watch` keyword in combination with a service. See the second example in this subchapter: http://docs.saltstack.com/en/latest/ref/states/requisites.html#watch
08:42 madduck__ joined #salt
08:43 ashw7n joined #salt
08:45 millz0r joined #salt
08:48 sm1ly Ztyx, I know about watch, but its php code. Its just starting to use new code. I dont need to restart nginx or php-fpm
08:48 thayne joined #salt
08:48 Ztyx sm1ly: Aight. ;)
08:51 ninkotech__ joined #salt
08:54 giantlock joined #salt
09:01 abc_ joined #salt
09:03 Ztyx left #salt
09:07 bejer joined #salt
09:07 swissknife joined #salt
09:17 Andrew____ joined #salt
09:18 Andrew____ left #salt
09:25 vbabiy joined #salt
09:27 sroegner_ joined #salt
09:37 MK_FG joined #salt
09:40 cast joined #salt
09:44 ashw7n joined #salt
09:50 superted joined #salt
09:53 vbabiy joined #salt
09:56 XenophonF joined #salt
09:56 Guest68471 joined #salt
09:57 arapaho_ joined #salt
09:57 ndrei joined #salt
09:59 XenophonF what's the difference between "pkg.installed: ..." and "pkg:\n  -installed ..."?
10:00 XenophonF is the second form just so you don't have to put [] in state definitions that have no further arguments?
10:01 babilen XenophonF: There is no difference
10:01 babilen (apart from formatting)
10:01 XenophonF gotcha thanks
10:01 babilen Note that it is "- installed" not "-installed" though
10:01 XenophonF ah right
10:02 XenophonF btw thanks for the pointers on formulas yesterday
10:02 babilen You are welcome, did it help you solving the problem in a more idiomatic way?
10:02 XenophonF yes and no
10:02 babilen heh :)
10:02 XenophonF i'm using the formulas to do templates where i can
10:03 XenophonF but for this fake dependency, i ended up using a file.touch state as a flag
10:04 babilen I still don't quite understand why you consider that cleaner than conditionally including a pkgrepo state and require statements
10:04 the_lalelu joined #salt
10:05 XenophonF i don't
10:06 TyrfingMjolnir joined #salt
10:06 XenophonF i couldn't figure out how to conditionally include the pkgrepo state and require statements
10:06 XenophonF i mean, i figured it out
10:06 babilen but?
10:07 XenophonF but i wanted to allow myself to specify additional dependencies
10:07 babilen What do you mean by that?
10:07 babilen It's hard to help you without seeing what you are actually trying to do and what you do now.
10:07 XenophonF let me post what i was doing on pastebin
10:07 babilen That's the spirit!
10:08 shwaiil joined #salt
10:08 shwaiil : )
10:08 XenophonF i really, really need to put this stuff under version control
10:08 * babilen hands XenophonF one git
10:08 XenophonF :)
10:09 the_lalelu ehlo. is it out-of-the-box possible to limit debconfmod to set values only when a package is installed or updgraded?
10:10 babilen the_lalelu: As opposed to?
10:11 babilen They are either set or not - if you want to do that only if a package is installed you could use a prerequisite on the pkg.installed state in the debconfmod one (so that it is only run if there are changes)
10:11 babilen brb
10:12 the_lalelu babilen: i set passwords for openlad, the debian package clears the passwords after installation in the debconf database (which is the correct behavior). but debconfmod sets them again and those passwords are now visible in the debconf database.
10:13 the_lalelu which is ... suboptimal
10:13 the_lalelu ;)
10:13 martoss joined #salt
10:14 the_lalelu babilen: ah ok. i'll try prerequisite. thx.
10:16 babilen the_lalelu: yeah, that would be slightly suboptimal
10:17 XenophonF babilen: this is how i handle things now
10:17 XenophonF http://pastebin.com/673hqzsf
10:18 babilen XenophonF: If you want to do me a favour don't use pastebin.com but a pastebin without ADs, captchas, "social network integration", ... (e.g. http://paste.debian.net, http://paste.ubuntu.com, http://refheap.com, ...)
10:18 XenophonF ah sorry
10:19 XenophonF just a moment copying and pasting
10:19 malinoff babilen, Ghostery & adblock - and there is no socials and ADs
10:19 hhenkel Hi all, anyone using the logstash logging handler?
10:19 hhenkel I got things running but I can't see anything.
10:20 XenophonF http://paste.debian.net/plain/99916
10:20 hhenkel I used the config described at: http://docs.saltstack.com/en/latest/ref/configuration/logging/handlers/salt.log.handlers.logstash_mod.html
10:20 babilen malinoff: Sure, I'm aware of that ... the captchas are still there. I am simply trying to get people to use different pastebins as pastebin.com is just a horrible one and they make money of the fact that people google "pastebin"
10:20 XenophonF i'm a big fan of requestpolicy, too
10:20 hhenkel I configured the zeromq stuff.
10:21 XenophonF anyway, if i want to use a require with pkg.installed, i can't easily switch between "- file: /blah/irtnog-repo.conf" and "[]"
10:22 XenophonF because the "[]" case breaks those instances where i want the pkg.installed to depend on states other than my private repo config
10:23 babilen XenophonF: So, couple of things: 1. Why don't you simply use file.manage for /etc/pkg/FreeBSD.conf and set "enabled: yes" by default in there? 2. You can move the statement on line 44 to line 43 (before the "watch") which would allow you to get rid of the else branch entirely
10:24 hhenkel Okay, guess I found the problem - log handler needs to be configured on the minion not on the master.
10:24 babilen XenophonF: I also don't understand what you do in repos/lib.sls and why you think that /etc/.salt.repos-flag is needed ...
10:24 XenophonF re: #2 yes of course, not sure why i did it that way :)
10:25 the_lalelu babilen: yes, prereq works quite well. thx.
10:25 babilen the_lalelu: Yay :)
10:26 XenophonF re: #1 i don't want to manage files that i don't have to, but if file.replace is worse than file.managed, i could easily change that
10:26 elfixit joined #salt
10:26 XenophonF also re: #1 i'm disabling the FreeBSD repo
10:27 babilen Ah, yeah sure ..
10:27 XenophonF also line 50 should read "states/repos/lib.sls"
10:27 XenophonF mistyped that
10:27 TyrfingMjolnir joined #salt
10:27 XenophonF so repos/lib.sls sets the "repos" jinja variable
10:27 XenophonF and then gets included anywhere i install packages
10:27 happytux_ joined #salt
10:28 XenophonF sorry, it's technically a jinja import
10:28 XenophonF dunno if that's idiomatic
10:29 XenophonF what i really want is a kind of meta-state
10:29 babilen XenophonF: I still don't like it -- it is hard to read and your intention isn't clearly obvious in that code. You obviously want to enable a number of repositories that are needed for some packages. You also want to automatically generate "pkg.installed" statements for a list of packages. Is that correct?
10:29 XenophonF yes
10:30 XenophonF i should have posted utils/map.jinja too
10:30 XenophonF on FreeBSD only, i'm disabling the standard repo and enabling my own private one
10:30 babilen You should have .. use "paste as new" at the bottom of http://paste.debian.net/99916 and append it along with states/repos/lib.sls
10:30 XenophonF ok
10:33 babilen But I would simply opt for a more explicit way. Define each repository independently (e.g. have *one* file.managed state for each if that is all that is needed for a repo). Then in your "package list" thing have pkg1: \n - name: "foo" \n - repo: "bar" ... from which you generate "pkg1: \n pkg.installed \n require: file: "bar" ... (or something along those lines)
10:33 XenophonF http://paste.debian.net/99920/
10:34 babilen XenophonF: That would also allow you to easily run commands (not sure if you have to "activate" repositories) if one of those repositories (managed files really) changes by having a "watch_in: my_repo_update_command" stanza in each repo file.managed state
10:35 babilen But then I don't like your approach at all :)
10:35 XenophonF hah
10:36 babilen I would go about this differently. Write states for each package/software/functionality that you want to manage and don't try to shoehorn everything into one "do everything right for every platform" state
10:37 babilen The idea would rather be to have one "screen", "tmux", ... state and to make each of them work on different platforms. Then you can target those states on your minions in the top file
10:37 XenophonF that's kind of the approach i was taking with the authentication system config (because configuring NSS/PAM/NIS/Kerberos5 is so different for each os_family)
10:38 babilen I mean you could end up with a metastate pkg.freebsd (for example) that simply includes all those "little" states that define how to actually install "screen" (or so)
10:39 googolhash joined #salt
10:39 babilen I'm not necessarily saying that your approach is wrong, but you do too many things at once.
10:39 XenophonF sure
10:39 XenophonF could i just do "require:\n    - repo"?
10:40 babilen XenophonF: Also keep in mind that map.jinja is rather meant for "static" things like configuration file paths, the names of the actual packages for software FOO on platform BAR, ...
10:42 babilen XenophonF: I would start with repo/{repo1.sls,repo2.sls,repo3.sls,...} for all your repos. Each of them could be a file.managed state that simply creates the necessary configuration file. If you have to run a command after you create such a repository also use a cmd.run state (http://docs.saltstack.com/en/latest/ref/states/all/salt.states.cmd.html)
10:42 XenophonF right
10:43 babilen XenophonF: you can easily include those repo definitions whenever needed (and you could even generate those include statements with jinja)
10:43 XenophonF i'm probably making this harder than it should be by wanting to get both FreeBSD and CentOS and Debian to the same (common) config
10:44 babilen No, the idea is right ... but I found it easier to think about "minion-1" gets "apache" (or even "www.example.com") and to target *that* to the minions
10:44 babilen And then you work on making the "apache" state platform agnostic
10:45 ashw7n joined #salt
10:45 babilen But lets stick to the "I have a list of packages that I want to install on every box" problem for now
10:46 babilen There are multiple approaches: 1. You have a base_install/{freebsd,debian,...}.sls in which you simply enumerate all packages that have to be installed and include repo definitions as needed.
10:47 babilen That's very explicit and probably a bit repetitive, but you could generate pkg.installed blocks with jinja and manage the list in those files
10:48 XenophonF right
10:49 OffTheRails joined #salt
10:49 babilen But then I don't really think it would be wrong to just enumerate all these packages and require the repositories. If you want to make it easier for you to change those manage (pkg_name, repo) tuples in a pillar and generate the pkg.installed statements from that with that.
10:50 babilen That is an explicit way of doing it that clearly communicates what you are doing and is not overly complicated. I would like that. You can then even target base_install.freebsd to all freebsd boxes in your top.sls by matching against a grain in there
10:52 babilen http://docs.saltstack.com/en/latest/topics/targeting/grains.html#matching-grains-in-the-top-file discusses that ... you would probably match os_family:FreeBSD again ...
10:53 babilen So, that approach is fine for packages that are not complicated and don't need any additional logic/configuration
10:53 XenophonF gotcha
10:53 babilen Which brings us to the second approach
10:53 XenophonF that was my approach at first
10:53 XenophonF using grains matches in top.sls
10:53 babilen 2. Write a state/formula for single packages/software that works on every platform you want to support.
10:54 babilen That clearly makes sense for more complicated packages such as, for example, nginx, nagios, apache, postgresql, redis, ....
10:55 babilen What I ended up doing now is writing formulas for basic building blocks like Apache or using pre-existing ones. But I don't actually target *those*, but use them to define states that define services such as "www.example.com".
10:55 vbabiy joined #salt
10:56 XenophonF how does the targeting for that look in top.sls?
10:56 babilen That state would include/change/... all the smaller bits that constitute www.example.com. That could be apache.sls + apache config in a pillar + file.recurse for /var/www/www.example.com
10:57 XenophonF ok
11:09 martoss joined #salt
11:15 shwaiil Q: Let's say I want to create a state for "phpmyadmin", how do I know the right "pkg" name to use ? For example, on Ubuntu 14.04, installing apache I had to put apache2.
11:16 nkuttler shwaiil: see formulas
11:18 XenophonF is pkg.uptodate in salt 2014.1.4?
11:18 XenophonF or only in dev?
11:18 shwaiil nkuttler: this docs ? http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html
11:19 nkuttler shwaiil: yeah. see also the github repo for examples
11:19 shwaiil nkuttler: but, let's say if the repo doesn't have a formular for "foo", I can't create a state ?
11:20 nkuttler shwaiil: a formula is really just a map and an include in your sls file
11:20 nkuttler trivial to create yourself
11:20 XenophonF shwaiil: https://github.com/saltstack-formulas/apache-formula
11:20 shwaiil I'm not understanding how ppl find the correct name. Let's say in Ubuntu, I know the package is called apache2, but to be honest I don't know wher I got that information from.
11:20 nkuttler shwaiil: that's what the map is for
11:20 XenophonF shwaiil: you have to find the right package beforehand
11:21 nkuttler e.g. https://github.com/saltstack-formulas/apache-formula/blob/master/apache/map.jinja
11:21 XenophonF e.g., using yum search, apt-cache search, etc.
11:21 nkuttler right
11:21 shwaiil XenophonF: Ok. So I use apt-cache search, I see!
11:21 bhosmer joined #salt
11:21 shwaiil Ok, cool!
11:22 nkuttler i prefer to treat the github formulas as templates though, don't really want to clone submodules into my working tree..
11:23 martoss1 joined #salt
11:23 nkuttler and they only go so far anyway.. config file locations etc vary as well
11:24 shwaiil nkuttler: for someone learning like me, I find it too much, but it's always a nice read.
11:24 shwaiil What I do is, research as much as possible, and try to write my own and tias. fails a lot but, to learn I think it's ok.
11:27 sroegner_ joined #salt
11:31 majoh joined #salt
11:35 zooz joined #salt
11:36 bhosmer_ joined #salt
11:36 beardo joined #salt
11:38 zooz joined #salt
11:45 rtucker joined #salt
11:45 ashw7n joined #salt
11:52 diegows joined #salt
12:05 pkruithof joined #salt
12:11 ekristen joined #salt
12:17 vbabiy joined #salt
12:24 ndrei joined #salt
12:25 ChaosPsyke Is there a way to determine the subnet of a specific interface using salt? The salt '*' network.subnets works 100% but I need to limit it to bond0.
12:28 bhosmer_ joined #salt
12:42 jslatts joined #salt
12:46 ashw7n joined #salt
12:48 tristianc joined #salt
12:48 cpowell joined #salt
12:50 bhosmer joined #salt
12:51 Comradephate joined #salt
12:51 bhosmer joined #salt
12:53 vejdmn joined #salt
13:00 rgbkrk joined #salt
13:03 ajolo joined #salt
13:04 vejdmn joined #salt
13:05 FarrisG joined #salt
13:06 resmike joined #salt
13:08 HeadAIX joined #salt
13:08 lnxnut_ joined #salt
13:09 vejdmn joined #salt
13:11 vejdmn joined #salt
13:16 vejdmn joined #salt
13:16 mgw joined #salt
13:17 bhosmer_ joined #salt
13:19 faldridge joined #salt
13:21 ashw7n joined #salt
13:25 ipmb joined #salt
13:25 thayne joined #salt
13:26 yml left #salt
13:27 abe_music joined #salt
13:27 elfixit1 joined #salt
13:27 rojem joined #salt
13:27 gnomechompski joined #salt
13:28 jaycedars joined #salt
13:28 sroegner_ joined #salt
13:30 jakubek_ is gem.installed is chekcing version of already installed gem and if it's not the same as provided in version: it's installing right one?
13:33 acabrera joined #salt
13:34 faldridge joined #salt
13:34 abe_music hey all, any help with strange errors while provisioning a large-scale hadoop install?
13:34 abe_music https://gist.github.com/abemusic/7f32c38677f78fd1d0c5
13:34 abe_music we've only ever seen this on larger installs...25-50 node clusters usually work out fine, this particular time it was a 204-node install
13:39 quickdry21 joined #salt
13:40 fivethreeo joined #salt
13:43 bhosmer joined #salt
13:43 gnomechompski So I added a cmd.run state on my salt-master and when I ran highstate, it maxed out the processors and memory.  Reverted change, restarted saltmaster service, rebooted machine.  Still pegging resources.  Running 2014.1.3 on ubuntu 13.10
13:44 bhosmer joined #salt
13:45 fivethreeo gnomechompski and the cmd run is?
13:46 oeuftete joined #salt
13:46 urban joined #salt
13:46 t0rrant joined #salt
13:46 baffle joined #salt
13:46 Mr_N joined #salt
13:46 hhenkel joined #salt
13:46 Heartsbane joined #salt
13:46 Heartsbane joined #salt
13:46 jpaetzel joined #salt
13:46 n0arch joined #salt
13:46 jeblair joined #salt
13:46 stotch joined #salt
13:46 honestly joined #salt
13:46 mik3 joined #salt
13:46 Dinde joined #salt
13:46 z3uS joined #salt
13:46 grep_away joined #salt
13:46 TOoSmOotH joined #salt
13:46 supplicant joined #salt
13:46 Ixan joined #salt
13:46 delkins joined #salt
13:46 kevinbrolly joined #salt
13:46 Ixan joined #salt
13:46 devx joined #salt
13:46 FL1SK joined #salt
13:46 masterkorp joined #salt
13:46 sirtaj joined #salt
13:46 homelinen joined #salt
13:46 gnomechompski its just a script that sets ipmi static ip
13:46 gnomechompski but like I said I reverted the change
13:46 rizumu joined #salt
13:46 gnomechompski even went so far as removing all states from top.sls
13:46 gnomechompski restarted service
13:46 gnomechompski still pegs
13:47 ange joined #salt
13:47 ikanobori joined #salt
13:48 Yoda-BZH joined #salt
13:48 Yoda-BZH joined #salt
13:52 hobakill joined #salt
13:53 hobakill guys got time help someone brand new? i have an selinux question. trying to make the target computer be in permissive mode on reboot but i can't seem to make that happen. using sudo salt '*' selinux.setenforce permissive but it doesn't survive the reboot
13:54 uestra joined #salt
13:54 jakubek_ i have problem with gem.installed, i can't install other version if one is already installed http://paste.debian.net/99956/ is this right or just bug? ;-)
13:56 jaycedars joined #salt
13:56 stephas joined #salt
13:57 dimeshake hobakill: that's because setting it like that is not persistent
13:58 dimeshake https://www.centos.org/docs/5/html/5.1/Deployment_Guide/sec-sel-enable-disable.html
13:58 kaptk2 joined #salt
14:00 hobakill dimeshake, ok..... i guess i'm curious as to how i'm going to do this.
14:00 hobakill dimeshake, because if i was to go in and manually edit that file in vim it would survive a reboot.
14:01 stephas joined #salt
14:02 dimeshake so get the file in the right state with salt
14:02 fivethreeo hobakill: wich os is this on?
14:02 dimeshake either distribute your own /etc/sysconfig/selinux via salt, or use file.replace to set it to permissive/disabled in that file
14:02 hobakill dimeshake, right. clearly that's the path to go but i'm learning as i go a little bit and just was working off of the available docs and modules.
14:03 uestra joined #salt
14:03 hobakill dimeshake, agreed. thanks. just about 3 hours into my salt journey
14:03 dimeshake cool :)
14:03 hobakill fivethreeo, centos 6.5
14:03 ablinkin joined #salt
14:05 fivethreeo hobakill: are you sure just editing /selinux/enforce works?
14:05 pdayton joined #salt
14:08 hobakill fivethreeo, i may have misspoke, /etc/selinux/config what the file i normally edit
14:08 lilmatt joined #salt
14:09 fivethreeo then salt does it wrong ;)
14:11 fivethreeo https://github.com/saltstack/salt/blob/develop/salt/modules/selinux.py#L109
14:11 faldridge joined #salt
14:12 n8n joined #salt
14:12 RandalSchwartz I have my states and pillar in git... what's the best practice around storing sensitive information like ssh keys, but still having most of this in git?
14:13 dimeshake making damn sure the repository is private :)
14:13 bhosmer joined #salt
14:13 RandalSchwartz well, that's already true
14:13 dimeshake I'd be interested to hear suggestions on that as well
14:13 eliasp well, the best thing would be to have encrypted data in the pillar repository which needs to be unlocked by supplying a key on saltmaster startup…
14:13 RandalSchwartz but I might someday want to share my formulas
14:13 eliasp https://github.com/saltstack/salt/issues/11147 related
14:13 babilen RandalSchwartz: I just store sensitive data directly on the master and the understanding is that anything sensitive never leaves the master either.
14:14 RandalSchwartz I'm thinking out loud here, but I could have two pillar roots
14:14 eliasp oh, there's a GPG renderere: https://github.com/saltstack/salt/pull/12325
14:14 RandalSchwartz one that is in git, and the other with just the sensitive data to merge in
14:14 babilen RandalSchwartz: That means that there is a local git repo checkout on the master that people work on. That is not optimal, but it works for us.
14:14 RandalSchwartz yeah, so far, just me, but I like tracking changes. :)
14:15 eliasp #12325 is just perfect… haven't tried it, but this looks too god
14:15 Kenzor joined #salt
14:15 babilen It would be great to have means to store encrypted data in git and enable the master to decrypt that though (and to make it easy for users to change it)
14:15 RandalSchwartz or if I could use a template that could open an external file, I could just stick them at well-known places on my master machine
14:15 RandalSchwartz oh wait, that won't work because templates run on minions
14:16 RandalSchwartz My two pillar root idea seems better now
14:16 babilen RandalSchwartz: Yes, that is exactly what we do with the understanding that sensitive data never leaves the master. (i.e. people don't copy it from there to their local machines, ...)
14:17 resmike joined #salt
14:19 bhosmer joined #salt
14:20 babilen #12325 is great though ... Ansible's approach to this is: http://docs.ansible.com/playbooks_vault.html
14:21 epcim joined #salt
14:23 uestra joined #salt
14:24 hobakill fivethreeo, i'm not sure what i'm looking at with that python script
14:25 dimeshake hobakill: i'd use file.managed to distribute your own copy of /etc/sysconfig/selinux to keep it disabled on reboots, and then issue a one-time cmd.run 'setenforce permissive' for the current boot
14:25 XenophonF hey folks i'm getting "KeyError: 'alt_device'" for a mount.mounted state
14:25 hobakill dimeshake, i think that's the way i'm going to go. thanks again all
14:25 XenophonF if the file system isn't mounted, the minion will mount it without any issues
14:25 eliasp XenophonF: more details? could you nopaste a backtrace and the state?
14:26 XenophonF yeah just a sec
14:29 ashw7n joined #salt
14:30 XenophonF eliasp: http://paste.debian.net/99971/
14:30 sroegner_ joined #salt
14:31 XenophonF weird thing is, if i umount /proc by hand then call state.highstate, salt will remount it without any difficulty
14:32 eliasp XenophonF: yes, but it has problems verifying the state once it is mounted, right?
14:32 XenophonF correct
14:32 XenophonF same for /dev/fd
14:33 XenophonF it will mount the file system and add it to /etc/fstab
14:33 eliasp both non-device-node based mounts… gimme a minute
14:33 XenophonF yup
14:33 XenophonF thanks!
14:34 toastedpenguin joined #salt
14:34 ndrei joined #salt
14:35 to_json joined #salt
14:35 eliasp XenophonF: it seems there have been some related fixes in 'develop'… could you try throwing https://github.com/saltstack/salt/raw/develop/salt/states/mount.py into "_states/mount.py" and test whether this fixes the issue for you?
14:36 XenophonF sure - on the minion, right?
14:36 XenophonF just a sec
14:36 eliasp XenophonF: no, just into your states dir/repository
14:36 RandalSchwartz fbsd
14:36 RandalSchwartz oops
14:36 eliasp create a subdirectory _states and place mount.py there
14:37 tristianc joined #salt
14:37 eliasp XenophonF: make sure to run 'salt your-minion saltutil.sync_all' to make sure the extmod is synced to the minion
14:37 XenophonF gotcha
14:37 eliasp XenophonF: see also: http://docs.saltstack.com/en/latest/ref/file_server/dynamic-modules.html
14:37 XenophonF so _states/ lives in the same directory as states/, right?
14:38 XenophonF ok i understand
14:38 XenophonF thanks!
14:38 eliasp XenophonF: 'states' contains your SLS files, _states your "*.py" states…
14:38 XenophonF just a sec am cloning saltstack/salt
14:39 eliasp XenophonF: if it still doesn't work, please nopaste an up-to-date backtrace and I'll have a look at it again in 45 minutes… have to leave now
14:39 XenophonF np thanks eliasp
14:39 bhosmer joined #salt
14:40 bhosmer_ joined #salt
14:41 uestra joined #salt
14:42 patarr when you 'watch' a file with salt, does it just check for its existence, or also content?
14:43 moos3 anyone see anything wrong with this https://gist.github.com/moos3/3f8fec33abe2a5991c4d
14:43 martoss1 the watch refers to a state and if the state returns changed
14:44 XenophonF sorry just rtfm-ed and saw that i needed to put _states into the file_root, which on my system (freebsd) is /usr/local/etc/salt/states/
14:46 vejdmn joined #salt
14:47 faldridge joined #salt
14:48 moos3 the gist i just pasted, I can't get my mount points to mount using that sls work
14:48 XenophonF eliasp: for when you get back, http://paste.debian.net/99983/ - same error
14:48 marnom patarr: watch doesn't work like a require.
14:49 faldridge joined #salt
14:50 rgbkrk joined #salt
14:50 XenophonF moos3: can you post a traceback too?
14:50 patarr I don't follow martoss1. Change as in contents of files? Filenames?
14:50 moos3 XenophonF sure
14:51 eagen joined #salt
14:51 XenophonF moos3: are you getting "KeyError: 'alt_device'" for your mount.mounted states too, or something different?
14:51 moos3 just doesn't apply
14:52 XenophonF hm
14:52 martoss1 http://docs.saltstack.com/en/latest/ref/states/ordering.html#the-watch-requisite describes it very well
14:52 martoss1 if a state, e.g. a file.managed returns changed, then the watch is executed.
14:54 GradysGhost joined #salt
14:55 martoss1 ptarr: the example also shows a watch for a service
14:55 moos3 XenophonF here is the trace https://gist.github.com/moos3/cc9edd7fbb730647e26a
14:56 thedodd joined #salt
14:56 shwaiil Q: Just forgot where to set file_client: local ? not finding the minion file /etc/salt/ wasn't there where it's located ?!
14:56 shwaiil can't remember
14:56 shwaiil http://docs.saltstack.com/en/latest/ref/configuration/minion.html#std:conf_minion-file_client
14:56 shwaiil and not sure where this is mentioned in the docs :T
14:58 XenophonF moos3: for your state def, i see several spelling errors
14:58 XenophonF /mnt/dev/devsahre is probably supposed to be /mnt/dev/devshare or /mnt/dev/share
14:58 moos3 nope that is correct
14:59 XenophonF oh ok
14:59 moos3 you see anything else ?
15:01 Rojematic joined #salt
15:03 moos3 XenophonF all i can think is i'm failing all the if statements when tho my location and role match
15:03 XenophonF hm, that could be
15:03 XenophonF when you do "salt blah state.highstate", do you see any of those states show up in the output?
15:06 moos3 when I do that I just get back to the command prompt after it runs
15:07 claytonk joined #salt
15:08 jaimed joined #salt
15:10 meteorfox|away joined #salt
15:11 theo-SLC joined #salt
15:12 GradysGhost joined #salt
15:12 theo-SLC What's the fastest way to ping all minions and check if there states are consistent?
15:13 steveoliver joined #salt
15:15 patrek joined #salt
15:16 cofeineSunshine joined #salt
15:16 cofeineSunshine joined #salt
15:17 ldlework joined #salt
15:18 jaycedars joined #salt
15:18 Debolaz joined #salt
15:18 mgw joined #salt
15:19 Debolaz Is there a simple way of allowing a vagrant to use a master salt server without ending up with a ton of what really are temporary keys in the master keystore?
15:21 pdayton joined #salt
15:27 dude051 joined #salt
15:29 meteorfox|away joined #salt
15:30 epcim joined #salt
15:32 wendall911 joined #salt
15:34 tligda joined #salt
15:39 babilen Debolaz: Yes
15:41 shwaiil Q: Just forgot where to set file_client: local ? not finding the minion file /etc/salt/  where it's located ? Can't find on docs either http://docs.saltstack.com/en/latest/ref/configuration/minion.html#std:conf_minion-file_client
15:41 babilen Debolaz: Ah, you mean add vagrant boxes to a master that is *not* managed by Vagrant?
15:42 babilen shwaiil: http://docs.saltstack.com/en/latest/ref/configuration/minion.html#file-client
15:42 babilen shwaiil: And you will find it on the minion
15:43 davet joined #salt
15:43 shwaiil babilen: I'm pretty sure yesterday I saw the location where to change file_client @ /etc/salt/minion
15:44 shwaiil something like that. not finding the correct location on this docs either :T
15:45 Debolaz babilen: Yes.
15:46 tligda shwaiil: Try this location: http://docs.saltstack.com/en/latest/topics/tutorials/standalone_minion.html
15:46 tligda shwaiil: Right at the top of the page/
15:46 Debolaz babilen: I want to use the states on the master to construct a vagrant. But I don't want to pollute the master keystore.
15:46 shwaiil tligda: ok, I'll check it, at the top
15:46 jcockhren wip removed. ;) https://github.com/saltstack/salt/pull/12620
15:47 bhosmer joined #salt
15:47 babilen Debolaz: I can't think of a way unless you automate the key-removal and tie it into "vagrant destroy"
15:48 tligda jcockhren: Exciting!
15:48 shwaiil tligda: I'm getting nuts. I can't find the configuration file location
15:48 shwaiil on the docs.
15:48 tligda shwaiil: /etc/salt/minion I'll look in the docs. Just a sec.
15:48 babilen Debolaz: I have my master in vagrant too (that one tracks the "vagrant" or "test" branch in git per git_base)
15:49 Debolaz babilen: The problem I'm looking to avoid is duplicating all the changes I do to the states, since they're a continous improvement process.
15:49 shwaiil tligda: yeah, that's what I remember. I don't have at in my system at the moment, because I think I delete some files acidentaly, so just double checking. Though just run install and the file wasn't generated. so I guess I'll have to uninstall saltstack first.
15:49 tligda shwaiil: It's at the top of the page that describes the master file: http://docs.saltstack.com/en/latest/ref/configuration/master.html
15:50 babilen shwaiil: How did you install salt?
15:50 tligda shwaiil: However, the corresponding page for the minion does not have it: http://docs.saltstack.com/en/latest/ref/configuration/minion.html
15:50 shwaiil using a one line command found on the docs
15:50 Ryan_Lane joined #salt
15:50 swebb joined #salt
15:50 bhosmer_ joined #salt
15:50 jcockhren tligda: this got merged in last night: https://github.com/saltstack/salt/pull/12825
15:50 shwaiil I just screw something today, I had a symlink and I guess I did rm foo/ instead of foo
15:51 shwaiil :P
15:51 shwaiil anyway, just learning salt
15:51 babilen shwaiil: Ah, okay .. no idea how the bootstrap command deals with deleted configuration files
15:51 rojem joined #salt
15:51 shwaiil babilen: you know how to remove saltstack completely ? so I can reinstall it
15:51 tligda jcockhren: That's a nasty one.
15:51 tligda jcockhren: Great job!
15:52 babilen shwaiil: no idea, I am always using the Debian packages.
15:52 babilen (sorry)
15:53 tharkun joined #salt
15:54 shwaiil It's ok : )
15:56 stephas joined #salt
15:56 eliasp XenophonF: back… investigating now your mount issue
15:56 cpowell joined #salt
15:57 XenophonF eliasp: thanks much
15:59 XenophonF eliasp: is there a way to start the minion under the python debugger, so i could trace states/mount.py?
16:00 cruatta joined #salt
16:01 rojem joined #salt
16:01 eliasp XenophonF: this is probably right now the easiest way:
16:01 eliasp salt minion cmd.run "salt-call -l debug state.single mount.mounted ......"
16:01 XenophonF ah
16:01 XenophonF OK
16:01 eliasp XenophonF: so no need to stop the minion… just send this to the already running minion
16:02 eliasp XenophonF: for the usage of state.single see also: http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.state.html#salt.modules.state.single
16:02 eliasp XenophonF: but you could also simply do a "state.highstate" … then you'd have to filter out your mount-related stuff from the debug messages ;)
16:02 ajolo joined #salt
16:02 XenophonF right
16:04 jhulten joined #salt
16:05 zooz joined #salt
16:05 joehillen joined #salt
16:06 joehillen joined #salt
16:08 redondos joined #salt
16:08 redondos joined #salt
16:09 jeremyBass joined #salt
16:09 jeremyBass left #salt
16:11 XenophonF eliasp: http://paste.debian.net/100000/
16:11 XenophonF that's using _states/mount.py as previously instructed
16:11 pjpz joined #salt
16:12 eliasp XenophonF: thanks a lot!
16:12 debian112 joined #salt
16:12 jgarr anyone have a state for managing user environment variables? Right now I'm planning to add options to the users-formula but I'm thinking it may not be the best/re-usable formula
16:13 XenophonF jgarr: wouldn't that be something you'd set as part of the global shell config?
16:14 XenophonF e.g., /etc/csh.cshrc or /etc/csh.login?
16:14 debian112 managing iptables: Any suggestion on how to manage iptables?
16:14 XenophonF maybe there's a better way to do it other than file.managed/blockreplace/append
16:15 schimmy joined #salt
16:15 debian112 http://docs.saltstack.com/en/latest/ref/states/all/salt.states.iptables.html  keeps adding new rules every time state.highstate runs
16:15 travisfischer joined #salt
16:16 seventy3 joined #salt
16:17 schimmy1 joined #salt
16:17 jraby joined #salt
16:18 KyleG joined #salt
16:18 KyleG joined #salt
16:19 jgarr XenophonF: I guess so. And it'd probably be best to separate that out from user creation. I'm trying to figure out the best way to store the pillar data + jinja templates
16:19 jgarr was hoping someone else had a template that was working for them
16:19 ashw7n joined #salt
16:20 resmike joined #salt
16:23 KennethWilke joined #salt
16:26 marnom_ joined #salt
16:30 wendall911 joined #salt
16:30 claytonk anyone have a link for jinja variable name syntax? I want to have some dashes in my names like squid-deb-proxy but I'm getting SLS rendering exceptions
16:31 repl1cant joined #salt
16:33 travisfischer joined #salt
16:33 diegows joined #salt
16:35 RandalSchwartz left #salt
16:35 kballou joined #salt
16:35 stanchan joined #salt
16:35 eliasp XenophonF: could you nopaste me the output of?:
16:35 eliasp salt your-freebsd-minion cmd.run "mount -p"
16:36 claytonk looks like you are required to use pythonic underscore style within {% %}  but I don't see anything on the Jinja Designer docs about it.
16:36 XenophonF yes just a sec
16:37 XenophonF eliasp: http://paste.debian.net/100010/
16:37 eliasp XenophonF: thx
16:37 mateoconfeugo joined #salt
16:41 wendall911 joined #salt
16:41 aw110f joined #salt
16:42 uestra joined #salt
16:42 bhosmer_ joined #salt
16:43 epcim joined #salt
16:44 forrest joined #salt
16:46 swebb joined #salt
16:48 gnomechompski left #salt
16:50 pdayton joined #salt
16:50 eliasp XenophonF: sorry, didn't get around until now to continue with your issue… could you try this?: http://bpaste.net/show/281124/ … FreeBSD doesn't provide an 'alt_device' property and the mount state blindly relies on it at this point
16:51 XenophonF eliasp: you have nothing to apologize for :) thanks for the patch
16:51 XenophonF i'll try it now
16:52 eliasp XenophonF: ah, wait… it'll certainly fail… patch#2 is being prepared ;)
16:52 jgarr is there a way to hash sensitive data inside pillar?
16:52 XenophonF :)
16:52 ninkotech__ joined #salt
16:52 swebb left #salt
16:53 eliasp jgarr: this discussion already took place 2.5h ago … have a look at the backlog or at https://github.com/saltstack/salt/pull/12325
16:54 jgarr eliasp: haha, thanks. I'm always late to the party
16:54 jgarr and I wasn't at work yet :)
16:55 linuxlewis joined #salt
16:55 eliasp XenophonF: http://bpaste.net/show/281142/
16:55 XenophonF eliasp: copy that
16:56 eliasp XenophonF: so apply this to your _states/mount.py - the reference in the patch is for the original salt/states/mount.py
16:58 XenophonF eliasp: now I get "KeyError: 'device_uuid'"
16:58 eliasp XenophonF: let me see
16:58 ndrei joined #salt
16:58 XenophonF eliasp: http://paste.debian.net/100016/
16:59 eliasp XenophonF: eek, exactly the same change for this one… ;) http://bpaste.net/show/281143/ the fact I missed this proves that I'm more or less blind
16:59 XenophonF LOL
16:59 XenophonF no worries i'll make the same modification
17:01 XenophonF eliasp: success!
17:01 XenophonF eliasp: http://paste.debian.net/100017/
17:01 eliasp XenophonF: oh, and once this works, could you file an issue regarding the "zfs help" output here: http://paste.debian.net/100000/ (btw: congrats on the 1-hundred-thousand-th paste)
17:01 eliasp XenophonF: awesome
17:01 XenophonF eliasp: will do and thanks much
17:02 eliasp XenophonF: you're welcome… will create a PR for this just fixed issue
17:02 XenophonF great!
17:02 XenophonF can't wait to see it in the next salt release :)
17:03 moos3 is there away to see what states have been applied to a host ?
17:04 eliasp XenophonF: https://github.com/saltstack/salt/pull/12843
17:04 eliasp moos3: no, you can only compare your defined states against the current state of a system using test=True
17:05 moos3 k
17:05 eliasp moos3: http://docs.saltstack.com/en/latest/ref/states/testing.html
17:05 Ryan_Lane joined #salt
17:06 moos3 what about just applying a specific sls to a host
17:06 eliasp moos3: salt your-minion state.sls your.state
17:06 moos3 k
17:06 splanquart joined #salt
17:06 splanquart hi all
17:08 splanquart we start to use salt those days
17:08 splanquart today all work but 2 hours ago that breaked without evident reason
17:09 splanquart the master freeze juste after this line
17:09 splanquart [DEBUG   ] LocalClientEvent PULL socket URI: ipc:///var/run/salt/master/master_event_pull.ipc
17:10 ashw7n joined #salt
17:10 splanquart do you have an idea of what is fail?
17:11 cruatta_ joined #salt
17:12 davidnknight joined #salt
17:13 moos3 i dont get why this is failing {% elif grains.get('location') == 'us-dev' and grains.get('role') == 'gp' %}
17:15 eliasp moos3: what about simply using:
17:15 eliasp {% elif grains['location'] == 'us-dev' and grains['role'] == 'gp' %}
17:15 moos3 why not the .get
17:15 eliasp moos3: because grains are available by default… no need to explicitely .get-ing them
17:16 XenophonF eliasp: regarding the "zfs help" error, looks like that's in modules/zfs.py, in the function _available_commands()
17:16 moos3 k
17:16 moos3 let me try that
17:16 eliasp moos3: see also http://docs.saltstack.com/en/latest/ref/renderers/all/salt.renderers.jinja.html
17:16 eliasp XenophonF: yes… the problem is just, that probably different versions of 'zfs' provide 'help' or not… others might use '--help' or so…
17:16 ramteid joined #salt
17:17 XenophonF eliasp: right - on my system, it's "zfs -?"
17:17 eliasp XenophonF: I mean: parsing output of 'help/--help' is quite bad anyways… but even when doing so, this should be at least fixed ;)
17:17 XenophonF although "zfs help" results in the same message
17:17 eliasp XenophonF: yes, but with "help is not available" or so on top :)
17:18 eliasp XenophonF: aren't there better methods available to get the list of supported commands instead of parsing 'help' output?
17:18 XenophonF eliasp: you are correct
17:18 linuxlew_ joined #salt
17:18 jraby joined #salt
17:18 XenophonF eliasp: the zfs module might be better off checking the version number of the zpool
17:19 XenophonF eliasp: basically, ZFS's on-disk format is versioned, so a storage pool at v14 lacks some of the functionality that a pool at version v28 has
17:19 rglen joined #salt
17:19 madduck joined #salt
17:19 moos3 eliasp https://gist.github.com/moos3/9fec101845f8cc2c6502
17:20 MTecknology For every facility this server serves, if that facility has specific documents in a remote share, build a state that puts those files there, otherwise if the facility served does not have these documents but they've been placed there before, then removed them
17:20 MTecknology ^ logic of the states I need to write...
17:21 vejdmn joined #salt
17:21 eliasp XenophonF: I lack ZFS knowledge + time to really investigate this, so please put as much information like that as possible into the issue report…
17:21 XenophonF eliasp: will do
17:21 XenophonF eliasp: running "zfs help" is enough to cause the kernel to autoload the zfs.ko and opensolaris.ko modules
17:22 eliasp MTecknology: sounds like a really lot of fun… who defined this requirement? :)
17:22 eliasp XenophonF: ouch ;)
17:22 jaycedars joined #salt
17:23 eliasp moos3: sorry, no idea right now… maybe someone else
17:23 moos3 k
17:23 XenophonF eliasp: It's only about 1MB of additional memory :)
17:23 XenophonF still that explains why i kept seeing that module loaded
17:24 eliasp XenophonF: sure, but still a bad thing as this could change the system state in case of a test=True run which should never happen
17:24 rojem joined #salt
17:24 MTecknology eliasp: a group of many
17:24 eliasp MTecknology: :)
17:24 MTecknology it's not out of line or excessive, that's my simplified version
17:25 XenophonF eliasp: yeah, those kernel modules shouldn't get loaded unless ZFS was actually in use
17:25 MTecknology I wish I could just do   "/home/shared/{{ center }}/Templates/{Society Forms,Center Shared,GSS Templates}":  file.directory
17:25 MTecknology instead of four different states
17:26 XenophonF eliasp: it's kind of clever how modules/zfs.py dynamically creates itself
17:26 XenophonF hm, how to write this bug up
17:29 XenophonF eliasp: so there's modules/zpool.py and modules/zfs.py - both related to ZFS
17:29 krichardson joined #salt
17:29 XenophonF eliasp: zpool.py has everything fleshed out, nothing created dynamically
17:31 XenophonF eliasp: whereas zfs.py is generated dynamically
17:32 XenophonF it's clearly a stub at this point
17:34 theo-SLC joined #salt
17:34 eliasp XenophonF: hmm, ok… was just worried about this "help" output in the backtrace… that's all ;)
17:35 XenophonF eliasp: thanks :)
17:36 ninkotech_ joined #salt
17:36 mgw joined #salt
17:37 uestra joined #salt
17:38 Ryan_Lane joined #salt
17:40 dangra joined #salt
17:42 ashw7n joined #salt
17:45 patarr joined #salt
17:45 MTecknology eliasp: interesting enough... this is looking to be a rather easy set of states to write...
17:47 patarr joined #salt
17:47 ipalreadytaken joined #salt
17:48 patarr joined #salt
17:49 ndrei joined #salt
17:49 patarr joined #salt
17:50 joehoyle joined #salt
17:51 joehoyle Hey, I am writing a salt module, is there a catch all function I can create, as I want "dynimc" module sub commands, like hm.x, hm.y, hm.z
17:51 patarr joined #salt
17:53 patarr joined #salt
17:54 patarr joined #salt
17:55 rgbkrk joined #salt
17:56 patarr joined #salt
17:57 patarr joined #salt
17:59 patarr joined #salt
18:00 ninkotech__ joined #salt
18:00 druonysuse joined #salt
18:00 druonysuse joined #salt
18:01 patarr joined #salt
18:02 alunduil joined #salt
18:03 patarr joined #salt
18:03 vejdmn joined #salt
18:05 patarr joined #salt
18:06 patarr joined #salt
18:07 jraby joined #salt
18:07 ninkotech_ joined #salt
18:07 jgarr joined #salt
18:08 patarr joined #salt
18:09 jgarr is there a way to get tab completion for states/modules in bash. Similar to https://github.com/git/git/blob/master/contrib/completion/git-completion.bash for git
18:09 patarr joined #salt
18:10 patarr joined #salt
18:11 MTecknology I'm having some issues with a state I built. I'm doing something dumb, but not seeing what it is.  https://gist.github.com/MTecknology/7908bb79035209a68a49
18:11 patarr joined #salt
18:12 patarr joined #salt
18:12 MTecknology oooh... duhr
18:12 jgarr MTecknology: does source accept a non salt:// path?
18:13 MTecknology nope, it doesn't
18:14 patarr joined #salt
18:14 ninkotech__ joined #salt
18:16 MTecknology jgarr: I'm sure there's a way... but never come across it. Probably wouldn't be too hard
18:16 jgarr you're trying to locally copy from one dir to another?
18:16 patarr joined #salt
18:16 eliasp that's not supported by file.recurse
18:16 MTecknology jgarr: sorry, I meant to answer your question
18:17 MTecknology no, I missed salt://, that was the dumb mistake I made
18:17 patarr joined #salt
18:19 patarr joined #salt
18:21 patarr joined #salt
18:22 patarr joined #salt
18:24 patarr joined #salt
18:26 ajprog_laptop joined #salt
18:26 patarr joined #salt
18:28 ninkotech joined #salt
18:32 kryptek joined #salt
18:34 ninkotech joined #salt
18:34 jraby joined #salt
18:37 ashw7n joined #salt
18:41 ninkotech__ joined #salt
18:42 XenophonF left #salt
18:42 picker joined #salt
18:44 ashw7n joined #salt
18:45 micko joined #salt
18:45 patarr left #salt
18:46 berto- joined #salt
18:46 tharkun joined #salt
18:47 Teknix joined #salt
19:01 perfectsine joined #salt
19:01 ninkotech joined #salt
19:03 swissknife joined #salt
19:05 MTecknology I'm getting a *LOT* of these... http://dpaste.com/1F5GK6D/  - is it a known bug that I'm not finding?
19:06 forrest MTecknology,
19:06 forrest what was the issue yesterday
19:06 forrest you never responded
19:06 forrest viq and I were wondernig
19:06 forrest *wondering
19:06 MTecknology forrest: I forgot... what was I asking?
19:06 forrest that include at the top of the file
19:07 forrest that the devs pulled you into
19:07 forrest with the stupid if statements
19:07 MTecknology ooooh- I never followed up with the dev, but they made a typo in some other file
19:08 forrest ok
19:08 forrest did you tell them to fix their poorly formatted if statement?
19:08 MTecknology sorry I don't have a better answer :(
19:08 forrest it's all good
19:08 MTecknology ya, I did
19:09 MTecknology err...
19:10 MTecknology which one was poorly formatted? I just remember a nested if that didn't need to be nested
19:10 vejdmn joined #salt
19:10 mgw joined #salt
19:10 MTecknology you have to admit... it's neat that I'm letting the devs manage their servers via git repo using salt
19:10 perfectsine joined #salt
19:11 cruatta joined #salt
19:13 forrest yea the nested one, where the actual if ended before the associated endif or something
19:16 kober joined #salt
19:19 kober So when I'm reading docs on salt cloud ( http://salt.readthedocs.org/en/latest/topics/cloud/profiles.html  )  when it says to create the profiles file, is this profile supposed to be on my local machine?  Or is it expecting me to first setup a master VM on rackspace and do all the work up there?
19:21 forrest kober, it is expected to be on whatever machine you will run your creation commands from
19:21 forrest in most situations that is a master VM
19:21 forrest so you log into your master, create your profiles, drop in your keys, etc. then run salt-cloud to create a new system
19:23 MTecknology time for halite... I wonder how tricky this is to configure
19:23 forrest MTecknology, I wrote the halite docs: http://docs.saltstack.com/en/latest/topics/tutorials/halite.html
19:23 forrest so if you go through those and have trouble or something doesn't work, can you update them when you figure it out?
19:23 forrest They are a few months old now, and I know there's been a lot of work done on halite (the github might have more updated info)
19:23 MTecknology I was just beginning to read that
19:24 MTecknology will do
19:24 forrest thanks
19:24 eliasp the last time I ran Halite was ~5 months ago or so… should try it out soon again
19:25 steveoliver joined #salt
19:26 sgviking joined #salt
19:26 to_json joined #salt
19:27 martoss joined #salt
19:28 bhosmer_ joined #salt
19:29 marnom_ anyone knows if the vagrant plugin for Salt will be updated to support Windows guests now that Vagrant 1.6.2 supports it? I'm currently using a custom powershell shell provisioner but it's suboptimal
19:30 forrest marnom_, you know I haven't heard anything about that, you might want to see if an issue was created, or as akoumjian!
19:30 forrest *ask
19:30 to_json joined #salt
19:33 lnxnut joined #salt
19:33 berto- joined #salt
19:34 theo-SLC joined #salt
19:35 bhosmer joined #salt
19:36 MTecknology forrest: I installed halite, python-cherrypy, used your exact example for ext_auth: and halite: (for cherrypy) and restarted the master and nothing is listening on 8080
19:36 txmoose So I just updated my master.  He's a CentOS 6.5 box.  I've installed salt via the official salt repos.  After a yum update, salt master started CRUSHING my CPU.  Went from a load average of ~.2 to ~16.  After a service salt-master restart, load is back down to ~.2.  Has anyone else seen this behavior?
19:36 marnom_ forrest, thank's I'l check
19:38 forrest MTecknology, did it get configured to start halite?
19:38 forrest MTecknology, If I remember correctly at one point I had to start it from the command line or something
19:38 forrest marnom_, np
19:40 marnom_ forrest, and just to make sure: is this an issue with salt or with vagrant?
19:40 forrest marnom_, I honestly don't know
19:40 marnom_ forrest, the salt plugin was merged into vagrant.. so I guess Vagrant?
19:40 forrest marnom_, I don't really use vagrant
19:40 marnom_ forrest, okay thanks for your help!
19:40 forrest marnom_, yea of course, sorry I couldn't help more :\
19:41 MTecknology forrest: switched to gevent - now getting this  when launched via command - http://dpaste.com/25V1XZN/
19:41 kober forrest: ok, and what about if you want to run commands from jenkins?
19:41 kober forrest: do you create your jenkins server as the master?
19:41 MTecknology there's no 'mold' directory there at all
19:41 forrest kober, in that situation you have to decide whether you are going to run salt as a non root user (there are some docs on that), or if you are going to allow jenkins to run as root to perform the commands.
19:41 forrest MTecknology, I don't think I ever got gevent working
19:42 forrest some of that stuff I copied from github
19:42 MTecknology the git repo has it, but the installed packaged doesn't
19:42 forrest MTecknology, but I remember for sure that one of those methods didn't work, but was 'supposed' to.
19:42 forrest heh
19:42 forrest maybe it didn't get added to the package then
19:42 kober forrest: but it would be the master?  Or is there a way to send commands to the master so that it can send them to the minion?
19:44 forrest kober, sounds like you might want to look into the salt api: http://salt-api.readthedocs.org/en/latest/
19:44 MTecknology forrest: nope... looks like it got missed... :(
19:44 forrest MTecknology, file an issue, should be quick to fix
19:45 MTecknology but it's missing from 0.1.16 too
19:45 forrest that's lame then
19:45 eliasp is there a way to suppress the log-output for all but a specific module? e.g. 'salt-call --local -l trace grains.get SSDs' … couldn't find anything yet to only display log messages originating from "salt/utils/ssds.py" but supress everything else
19:45 anuvrat joined #salt
19:47 marnom_ I've created an issue with the Vagrant project to get support for provisioning Windows guests: https://github.com/mitchellh/vagrant/issues/3821
19:47 forrest marnom_, cool!
19:50 marnom_ yeah I hope they can add support for Windows guest. The bootstrap that was on salt for Windows however is deprecated
19:50 MTecknology forrest: issue filed - it's missing from most of the releases... :S
19:50 MTecknology err... all of them
19:51 MTecknology how could I be the only one experiencing this issue then?
19:51 perfectsine joined #salt
19:51 forrest I have no idea
19:51 forrest maybe no one uses gevent
19:51 MTecknology but that's a bottle thing, not gevent
19:52 forrest I'm not sure then
19:52 forrest I know I've used bottle before just fine
19:52 forrest for my own projects
19:53 MTecknology I mean the app. Bottle itself is just bottle.py and nothing more. I effing love it.
19:53 MTecknology I use it for p.ngx.cc and many other projects
19:54 MTecknology main_bottle.html <-- sounds like a template file
19:55 joehoyle_ joined #salt
19:56 MTecknology forrest: did you install from pip or rpm or?
19:56 joehoyl__ joined #salt
20:01 linjan joined #salt
20:04 Ryan_Lane joined #salt
20:05 anuvrat joined #salt
20:07 jgarr joined #salt
20:09 jraby joined #salt
20:10 martoss1 joined #salt
20:11 scalability-junk joined #salt
20:12 peno joined #salt
20:14 MTecknology forrest: an execution from git clone worked perfectly great
20:14 joehoyle joined #salt
20:20 davet1 joined #salt
20:22 vejdmn joined #salt
20:24 txmoose So I just updated my master.  He's a CentOS 6.5 box.  I've installed salt via the official salt repos.  After a yum update, salt master started CRUSHING my CPU.  Went from a load average of ~.2 to ~16.  After a service salt-master restart, load is back down to ~.2.  Has anyone else seen this behavior?
20:25 patarr joined #salt
20:25 patarr does anyone know why I get 'pkg.list_pigs' is not available?
20:26 patarr same for pkg.nstal
20:26 patarr install*
20:30 ipmb joined #salt
20:32 to_json1 joined #salt
20:32 forrest MTecknology, cool!
20:33 forrest MTecknology, sorry for not responding earlier I went to lunch, and honestly I don't remember, it was a while back :\
20:34 lnxnut_ joined #salt
20:37 krichardson MTecknology, heads up: when running the halite git clone, it works for me from the command line, but fails as a salt master directive with version 2014.1.3. must be an api compatibility issue. i reverted to the pip install to start halite with salt-master
20:39 kermit joined #salt
20:41 uestra joined #salt
20:42 otter768 joined #salt
20:44 krow joined #salt
20:48 faldridg_ joined #salt
20:49 rojem joined #salt
20:49 ninkotech joined #salt
20:52 utz joined #salt
20:54 utz anybody have any trouble getting communication over 4505 and 4506 on a CentOS master? I have the rules in iptables and a netstat shows that those ports are listening, but my minion can't connect to it.
20:54 TyrfingMjolnir joined #salt
20:55 stanchan_ joined #salt
20:58 ashw7n joined #salt
21:02 patarr CommandExecutionError: The shell  is not available any ideas?
21:02 anuvrat joined #salt
21:06 toastedpenguin1 joined #salt
21:09 harobed_ joined #salt
21:09 MTecknology krichardson: forrest: all better... that directory is only needed when launching manually and that shouldn't be needed and cherrypy was causing the issues. gevent is perfect.
21:10 mr_chris joined #salt
21:10 MTecknology and now getting login failed
21:10 kermit joined #salt
21:13 smcquay joined #salt
21:13 ndrei joined #salt
21:13 forrest MTecknology, the login failed thing is common, did you make sure to add the user? I think I had issues where I couldn't use certain creds...
21:13 forrest are all your users local?
21:13 forrest or what user are you trying to log in as?
21:14 MTecknology They're local for the moment. I just got it working. I wasn't reading.
21:14 MTecknology Eventually I want to use AD for authentication which will be done with sssd
21:14 jcockhren what is this "sssd" you speak of?
21:14 jcockhren super-ssd?
21:15 eliasp jcockhren: https://fedorahosted.org/sssd/
21:15 jcockhren heh
21:16 jcockhren oh nice
21:16 MTecknology wow
21:16 MTecknology halite is sweet
21:16 eliasp jcockhren: even better: use realmd (which makes use of SSSD): http://www.freedesktop.org/software/realmd/
21:17 forrest MTecknology, if pass-by-value was in here he'd be glad to hear you say that :P
21:17 MTecknology woah
21:17 MTecknology not just sweet
21:18 MTecknology this is amazing
21:18 forrest MTecknology, can you update the docs if you felt like anything wasn't clear?
21:18 forrest or did you already?
21:18 MTecknology it seemed pretty solid, a few tweaks maybe
21:18 MTecknology will do
21:18 forrest cool thanks
21:18 jcockhren https://github.com/saltstack/halite#highstate-consistency-check
21:19 jcockhren ftw
21:19 eliasp jcockhren: given that all states respect "test=True" which is unfortunately quite often not (yet) the case…
21:19 Nazca joined #salt
21:19 Nazca joined #salt
21:20 jcockhren eliasp: sssd -> pam/nss -> ldap is possible?
21:21 eliasp jcockhren: should work… but haven't tried it only for AD integration so far
21:21 eliasp s/haven't/have/g
21:22 patarr 'host.present' is not available. i keep getting errors like these. Could any one tell me why that is?
21:22 kballou_ joined #salt
21:22 patarr is it because it is only used in states?
21:23 tharkun joined #salt
21:24 bhosmer joined #salt
21:24 lilmatt joined #salt
21:26 ejo joined #salt
21:31 Chrisje joined #salt
21:33 faldridge joined #salt
21:34 jcockhren eliasp: turns out, I know a couple of guys that have setup sssd to ldap in enterprise
21:35 jcockhren reading through the into material now.
21:35 jcockhren intro
21:35 eliasp jcockhren: I should have as well since way quite some time (running my own infrastructure completely OpenLDAP-based), but the pressure so far was only high-enough for my workplace's AD :)
21:36 jcockhren eliasp: so realmd is for discovery and auto config?
21:36 eliasp jcockhren: yes, takes all the pain out of configuring sssd on your onw
21:37 jcockhren hmm
21:38 eliasp jcockhren: installing required packages, configuring krb5 etc.
21:41 thedodd joined #salt
21:41 faldridge joined #salt
21:41 Ryan_Lane joined #salt
21:44 utz left #salt
21:47 dwilson joined #salt
21:47 pfallenop joined #salt
21:54 jgarr my minion domain isn't being picked up by grains (rhel servers) I put the fqdn in /etc/hosts as the first entry. Is there anywhere else that grain is pulled from?
21:54 schimmy joined #salt
21:57 schimmy1 joined #salt
22:01 krow joined #salt
22:05 alunduil joined #salt
22:05 fivethreeo joined #salt
22:11 krow joined #salt
22:11 frasergraham joined #salt
22:15 TyrfingMjolnir joined #salt
22:24 kermit joined #salt
22:31 dangra joined #salt
22:31 rojem joined #salt
22:33 ipmb joined #salt
22:35 berto- joined #salt
22:35 madduck joined #salt
22:35 the_lalelu joined #salt
22:35 jmccree joined #salt
22:35 nliadm joined #salt
22:35 chuffpdx_ joined #salt
22:35 svs joined #salt
22:35 mfournier joined #salt
22:35 Gareth joined #salt
22:35 NV joined #salt
22:35 georgemarshall joined #salt
22:35 codekoala joined #salt
22:35 dcmorton joined #salt
22:35 Sway joined #salt
22:35 Dattas joined #salt
22:35 dpac|away joined #salt
22:35 chutzpah joined #salt
22:35 crane joined #salt
22:35 tmmt joined #salt
22:35 r4vi_ joined #salt
22:35 [vaelen] joined #salt
22:35 wwalker joined #salt
22:35 Jahkeup joined #salt
22:35 jpcw joined #salt
22:35 emostar joined #salt
22:35 BogdanR_ joined #salt
22:35 rawzone joined #salt
22:35 chamunks joined #salt
22:35 ze- joined #salt
22:35 djinni` joined #salt
22:35 balltongu_ joined #salt
22:35 mariusv joined #salt
22:35 xDamox joined #salt
22:35 terminalmage joined #salt
22:35 eightyeight joined #salt
22:35 bezaban joined #salt
22:35 kaictl joined #salt
22:35 joshbaptiste joined #salt
22:35 jesusaurus joined #salt
22:35 retr0h joined #salt
22:35 shano joined #salt
22:35 marcinkuzminski joined #salt
22:35 manfred joined #salt
22:36 tharkun joined #salt
22:36 joehillen joined #salt
22:36 scooby2 joined #salt
22:36 magenbrot joined #salt
22:36 nocturn joined #salt
22:36 lz-dylan joined #salt
22:36 codysoyland joined #salt
22:36 kamal_ joined #salt
22:36 tonthon joined #salt
22:36 artificialexit joined #salt
22:36 emilisto_ joined #salt
22:36 __number5__ joined #salt
22:36 alainv joined #salt
22:36 luminous_ joined #salt
22:36 rawtaz joined #salt
22:36 Linuturk joined #salt
22:36 AnswerGuy joined #salt
22:36 jperras joined #salt
22:36 londo joined #salt
22:36 erjohnso joined #salt
22:36 Corey joined #salt
22:36 Doqnach joined #salt
22:36 SEJeff_work joined #salt
22:36 smkelly joined #salt
22:36 ixokai joined #salt
22:36 jasonrm joined #salt
22:36 wm-bot4 joined #salt
22:36 lazybear joined #salt
22:36 dcolish joined #salt
22:36 nhubbard joined #salt
22:36 zdong joined #salt
22:36 ronc joined #salt
22:36 fxdgear joined #salt
22:36 bigmstone joined #salt
22:36 carmony joined #salt
22:36 chitown_ joined #salt
22:36 twiedenbein joined #salt
22:36 tedski joined #salt
22:36 shadowsun joined #salt
22:36 johtso joined #salt
22:36 Ahlee joined #salt
22:36 artificialexit joined #salt
22:37 djinni` joined #salt
22:43 Corey joined #salt
22:48 lude joined #salt
22:48 quickdry21 joined #salt
22:57 stevednd anyone know how I can get a module call on the command line to accept a parameter that leads with an !
22:59 frasergr_ joined #salt
22:59 Gareth stevednd: escape the !
22:59 Gareth ?
22:59 stevednd how?
22:59 Gareth \!
23:00 stevednd I've tried \!
23:00 mpanetta joined #salt
23:00 stevednd salt doesn't like it
23:00 Gareth which module?
23:00 stevednd custom module
23:00 whiteinge yaml is casting it
23:00 stevednd whiteinge: that's what I was about to say it looked like
23:01 stevednd says it could not determine a constructor
23:01 stevednd how do I escape it, or get around it?
23:01 scarcry joined #salt
23:01 whiteinge you need to end that string with a newline
23:01 whiteinge i seem to recall another way to bypass that was added
23:02 steveoliver joined #salt
23:02 lilmatt joined #salt
23:05 whiteinge trying to find that code...
23:05 whiteinge stevednd: what command are you trying to run, ooc?
23:05 joehh mgw: 2014.1.4 packages went up with your fix last night, can you check if it works for you?
23:05 stevednd whiteinge: I'm writing a module that wraps some of the functionality from semantic_version
23:06 whiteinge neat
23:06 whiteinge i'm trying to test with file.append and appendign the "!" string
23:06 whiteinge it bypasses the yaml processing but it also appends "\n" which is less than ideal
23:07 steveoliver joined #salt
23:07 whiteinge ah, that's right. lives in salt.utils.args.py
23:07 stevednd it seems weird that salt defaults to yaml parsing args on module calls, esp from the command line
23:08 stevednd seems like functionality that would be pretty specifically desired
23:09 whiteinge it sort of transparently allows salt modules to accept non-string args without the user having to know/care
23:09 whiteinge it really needs a CLI flag though
23:09 whiteinge the magic newline thing is pretty weird
23:10 stevednd I'm assuming if I tried using my module in a statefile just passing something like '!=1.0.0' would work just fine, or would it fail there too?
23:12 bhosmer joined #salt
23:13 whiteinge from a state module will bypass the CLI yaml casting altogether. you can just call a python function from python, if that makes sense
23:14 stevednd not from a state module, but a regular sls file written with yaml, or a jinja template
23:14 whiteinge oh. still bypasses the CLI yaml casting
23:14 ashw7n joined #salt
23:14 whiteinge i can't find a CLI syntax that doesn't include the newline in the variable: salt 'jerry' test.arg '!\n'
23:15 whiteinge salt 'jerry' test.arg "\!\n"
23:15 whiteinge we should open a ticket about this
23:15 stevednd yeah, guess it salt needs a flag to let args come through plain on the CLI
23:15 redondos joined #salt
23:15 whiteinge yeah
23:15 whiteinge mind doing the honors?
23:15 stevednd sure
23:17 mpanetta joined #salt
23:20 jaycedars joined #salt
23:20 core-ix joined #salt
23:21 ipmb joined #salt
23:23 stevednd whiteinge: https://github.com/saltstack/salt/issues/12861
23:23 whiteinge ty
23:23 stevednd I'm pretty sure I captured the reasoning correctly. Feel free to comment or modify
23:24 whiteinge you got it
23:29 steveoliver left #salt
23:29 druonysuse joined #salt
23:29 druonysuse joined #salt
23:31 frasergraham joined #salt
23:36 theo-SLC joined #salt
23:37 orbit_darren joined #salt
23:38 mr_chris joined #salt
23:41 druonysuse joined #salt
23:41 druonysuse joined #salt
23:42 davidnknight joined #salt
23:44 stevednd whiteinge: Is there a way to call #update in https://github.com/saltstack/salt/blob/develop/salt/utils/dictupdate.py directly, or do I need to wrap it in a module of my own?
23:45 whiteinge you'll need to wrap it
23:46 stevednd once helium comes out(whenever that is), that should eliminate the need for that one at least since pillars will support the ability to merge with another dict
23:50 whiteinge that'll be nice
23:54 ecdhe joined #salt
23:55 jnials joined #salt

| Channels | #salt index | Today | | Search | Google Search | Plain-Text | summary