Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2015-03-03

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

All times shown according to UTC.

Time Nick Message
00:00 vschum1 Is it possible to use requisites in top.sls? I want to make sure a given sls runs completely before a second is executed.
00:00 murrdoc ppa needs to http://www.downloadmoreram.com/
00:00 vschum1 I've also tried include/extend but that doesn't seem to suit my use case either.
00:01 murrdoc require?
00:02 ajw0100 joined #salt
00:02 vschum1 basically, i'm being bitten by the fact that included sls files are executed before those that include them
00:03 vschum1 i want the included sls to run after
00:03 aurynn dependency resolution
00:04 otter768 joined #salt
00:05 druonysuse joined #salt
00:16 hal58th joined #salt
00:17 ajolo Guys any idea why I'm getting this result ? (I'm trying to filter out and get only what's next to the ':')
00:17 ajolo salt *6836* cmd.run "fuser 80/tcp| cut -d ':' -f 2"
00:17 ajolo frontend-i-6836d184.vpc:
00:17 ajolo 80/tcp:
00:17 ajolo 25034
00:17 ajolo I've tried many awk combinations also
00:18 dkrae joined #salt
00:18 nicktrs @murrdoc so you're saying this is most likely an issue on the side of the PPA (in this case launchpad)?
00:19 murrdoc nicktrs:  i cant say that for a fact, i normally mirror the ppa down to a local server and use that
00:19 murrdoc but its possible
00:19 murrdoc its known to happen with ubuntu mirrors, could happen with ppa too
00:19 nicktrs murrdoc: ok thanks for the info!
00:25 Diaoul joined #salt
00:31 nich0s joined #salt
00:31 nich0s Hey, y'all. Are there any events happening tonight as part of SaltConf?
00:33 ajw0100 joined #salt
00:34 notnotpeter joined #salt
00:38 Ahlee not that i've heard of.  I'm going to find a bar somewhere in the vicinity
00:38 Ahlee stupid rain
00:38 Gareth UtahDave: ping
00:38 karimb joined #salt
00:39 nich0s ahale: Me, too. I'm getting in tonight with a co-worker and don't really feel like spending N hours in a hotel alone. :P
00:39 nich0s ahale: Sorry.
00:39 nich0s Ahlee: Ooops. :P
00:39 meefs n hours
00:40 Ahlee i'm going to walk over to the hotel the event is in (i cheaped out and booked at the doubletree
00:40 iggy it's saltpad
00:41 Diaoul joined #salt
00:41 nich0s Ahlee: Nothing wrong with that. I'll be staying in the event hotel. I'm sure the drinks there are overpriced. :p
00:41 iggy and the new UI is for saltstack enterprise
00:42 Ahlee saltpad is halite for enterprise?
00:44 murrdoc no way
00:45 Ahlee oh, https://github.com/tinyclues/saltpad is saltpad
00:45 terinjokes joined #salt
00:45 Ahlee anyway, i need to brave the cold and stock the minifridge
00:45 Ahlee as i don't remember utah liquor laws well enough
00:45 Ahlee bbl
00:46 murrdoc there is like disillaries everywhere
00:46 murrdoc around the conf
00:48 notnotpe_ joined #salt
00:50 ajw0100 joined #salt
00:50 kanaka_ joined #salt
00:51 bfoxwell joined #salt
00:54 nich0s murrdoc: I run on caffeine and alcohol, so I may pop back on in a bit looking for advice.
00:56 aparsons joined #salt
00:56 \ask joined #salt
00:57 bluenemo_ joined #salt
00:57 UtahDave hey, Gareth!
00:57 bluenemo_ joined #salt
00:57 ajolo UtahDave: o/
00:57 murrdoc http://www.yelp.com/biz/squatters-craft-beers-salt-lake-city
00:57 UtahDave hey, ajolo!
00:58 baweaver joined #salt
00:58 murrdoc http://www.yelp.com/biz/beerhive-pub-salt-lake-city
00:58 ajolo UtahDave: hey, sorry to bother you
00:58 murrdoc nich0s:  ^^
00:59 nich0s @murrdoc: thanks!
00:59 murrdoc uh hmm
00:59 ajolo UtahDave: any idea why salt *6836* cmd.run "lsof -i :80 | awk '{ print $2 }' | tail -n 1" is returning the whole line ?
01:06 otter768 joined #salt
01:08 UtahDave hm. lemme see
01:10 Corey UtahDave: Hello.
01:11 forrest Corey: Are you already in SLC?
01:11 Corey forrest: No, I'm at SFO.
01:11 forrest Head to SLC?
01:11 forrest *headed
01:11 Corey Is anyone else here in the airport? I can sneak you into the Amex lounge.
01:11 forrest lol
01:11 nich0s haha.
01:11 UtahDave :)
01:11 gladiatr joined #salt
01:12 UtahDave ajolo: I think your awk command put together correctly.
01:12 UtahDave hey, Corey!
01:13 UtahDave don't get too tipsy before you even get on the plane!
01:13 Ryan_Lane is there a salt execution module that'll read a json file and turn it into a python  dict that can be used in jinja?
01:13 Corey UtahDave: You put a Jew who drinks professionally into a bar where EVERYTHING IS FREE. Exactly what did you expect? :-)
01:15 eliasp Ryan_Lane: would the "load_json" filter probably help? http://docs.saltstack.com/en/latest/ref/renderers/all/salt.renderers.jinja.html#salt.utils.jinja.SerializerExtension
01:15 Ryan_Lane eliasp: is there a way for me to call that from a state?
01:15 Ryan_Lane via jinja?
01:16 eliasp Ryan_Lane: {% import_json "defaults.json" as defaults %}
01:16 eliasp Ryan_Lane: would that be what you're looking for?
01:16 ajolo UtahDave: there's something odd
01:16 ajolo salt *frontend* cmd.run 'echo $(hostname)'
01:16 ajolo salt-master
01:16 Ryan_Lane eliasp: I don't see that as a jinja feature...
01:17 Ryan_Lane is that something that salt adds?
01:17 eliasp Ryan_Lane: that's no native Jinja, but Salt-enhanced Jinja AFAICS
01:18 eliasp Ryan_Lane: see also: https://github.com/saltstack/salt/blob/develop/salt/utils/jinja.py#L206
01:18 pdayton joined #salt
01:18 eliasp Ryan_Lane: have to head home now (02:18 AM here now) … good luck!
01:19 bemehow joined #salt
01:19 aqua^mac joined #salt
01:20 Ryan_Lane @eliasp thanks!
01:22 forrest eliasp: You seem to work way too much man :\
01:29 jacksontj joined #salt
01:36 robinsmidsrod joined #salt
01:38 theologian joined #salt
01:40 theo__ joined #salt
01:43 mafro joined #salt
01:44 mafro lo anyone any thoughts on salt bootstrap might be giving me "Failed to start salt-minion.service: Unit salt-minion.service failed to load: No such file or directory"
01:45 mafro what file could it be that salt can
01:45 mafro can't* find?
01:46 UtahDave have you updated to the latest bootstrap script?
01:46 mafro yeah I'm grabbing from bootstrap.saltstack.com on every build
01:48 hal58th joined #salt
01:49 yidhra joined #salt
01:49 UtahDave Hm. what OS?
01:49 iggy UtahDave: long time no see
01:49 MTecknology DAVE!!!!
01:50 UtahDave heh, yeah.  I've been crazy busy with some of our customers and getting ready for SaltConf
01:50 UtahDave how are you all?
01:50 MTecknology come alcohol with us
01:50 MTecknology we are great, but lonely without you
01:51 mafro UtahDave: I got lucky with you being here eh? :)
01:51 UtahDave you getting all juiced up already, MTecknology???
01:51 MTecknology yup
01:51 UtahDave mafro: yeah.  My wife just called asking me to come home.
01:51 KyleG same ^ lol
01:51 KyleG damn wivesd
01:51 KyleG -d
01:51 mafro UtahDave: it's a jessie build - Debian 8
01:51 tkharju joined #salt
01:52 MTecknology iggy, me, and another are at gracie's
01:52 UtahDave mafro: systemd on that?
01:52 UtahDave MTecknology: how is it?
01:53 MTecknology decent, but we need you here
01:53 meefs nice UtahDave
01:53 mafro UtahDave: I believe so! Want to see how our salt config behaves on jessie.. I have to admit to having ignored all this systemd kerfuffle
01:54 UtahDave mafro: Yeah, it looks like it might not be detecting your init system correctly.
01:54 iggy we could kind if use a tour guide, but wives trump saltines
01:55 UtahDave I may come up in a little bit after stopping home for dinner
01:56 Corey UtahDave: Am I still texting you when I land?
01:56 UtahDave mafro: I think you may need to open a bug report on that.
01:56 Corey Holding steady at 10:59 so far.
01:56 UtahDave Corey: Yep! I'll be there!
01:58 yomilk joined #salt
01:58 \ask joined #salt
01:59 UtahDave MTecknology: pm me your cell number and I'll text you if I can make it up there
01:59 UtahDave and your real name.  lol
02:00 nitti joined #salt
02:00 mafro joined #salt
02:00 hal58th1 joined #salt
02:03 amcorreia_ joined #salt
02:04 desposo joined #salt
02:04 pdayton joined #salt
02:05 druonysuse joined #salt
02:09 druonysus joined #salt
02:11 MatthewsFace joined #salt
02:15 donmichelangelo joined #salt
02:15 fxhp joined #salt
02:20 rudi_s I noticed that during a salt run it calls many external programs multiple times (for example "systemctl", "--all", "--full", "--no-legend", "--no-pager", "list-units" ~20 times). Also when I look at the output of salt-call it runs many things multiple times. Is this expected? I've the feeling that the salt run could be much faster if those redudant calls were optimized.
02:26 Ahlee where is gracies? it's nasty out there
02:28 Ahlee damn,walked right past it
02:29 iggy Ahlee: its on broadway... about 2 blocks up and a block over
02:30 Ahlee im up by the hotel from last year lookibg for a grocery store, will swing by
02:32 teambrad joined #salt
02:32 iggy theres a store at main and briadway
02:32 bemehow joined #salt
02:33 Hazelesque joined #salt
02:33 iggy red awning
02:34 druonysuse joined #salt
02:34 SubOracle joined #salt
02:36 intellix joined #salt
02:36 favadi joined #salt
02:37 iggy funny how i'm freezing my tits off and mteck is walking around with a thin shirt ob like its nothing
02:37 bemehow joined #salt
02:42 iggy rudi_s: it could be from modules reloading
02:45 iggy rudi_s: do you have a lot of states that install packages or have reload_modules set?
02:46 rudi_s iggy: Actually no states which install packages, but some which star/tenable services.
02:47 rudi_s And shouldn't the module be loaded once per salt ran?
02:48 __number5__ rudi_s: that would be too slow and too much load on master if you have lots of minions
02:48 rudi_s So even less?
02:48 rudi_s Makes it even worse that they get called so oftne.
02:50 logix812 joined #salt
02:50 logix812 can rest_tornado start up without SSL enabled?
02:51 toddnni_ joined #salt
02:51 logix812 even when I salt-api -l debug, using rest_tornado (2014.7.1) it stops with this error: Not loading 'rest_wsgi' which I know is a safe to ignore error, but I get no further info about what isn't working
02:52 iggy well thise commands will be run each time something calls module_reload
02:53 mosen joined #salt
02:54 joehh joined #salt
02:58 mafro joined #salt
02:59 rudi_s iggy: I see. Still feels a little expensive.
02:59 rudi_s The salt runs take quite a while and I'm looking for performance bottlenecks.
02:59 Corey rudi_s: Runs are asynch.
03:00 toddnni joined #salt
03:00 rudi_s Corey: When I want to test something I'll have to wait until the run is complete.
03:01 Corey rudi_s: What form of testing?
03:01 rudi_s Corey: Like deployment of new features?
03:02 subsignal joined #salt
03:06 fsero__ joined #salt
03:08 Auroch joined #salt
03:09 rgarcia_ joined #salt
03:15 druonysuse joined #salt
03:19 pdayton joined #salt
03:22 evle joined #salt
03:28 intellix joined #salt
03:28 wnkz joined #salt
03:29 ojintoad joined #salt
03:32 nich0s joined #salt
03:33 druonysuse joined #salt
03:33 druonysuse joined #salt
03:42 kiseok7 left #salt
03:42 rgarcia_ joined #salt
03:43 sfxandy joined #salt
03:47 iggy quit using highstate to test... there's state.sls
03:49 rudi_s Well, that's nice. But from time to time I need a full run.
03:49 mosen indeedy
03:49 mosen are people testing states w kitchen salt?
03:52 fsero_ joined #salt
03:53 iggy i test states in prod
03:58 mosen livin on the edge
03:58 mafro joined #salt
03:58 Linuturk1 joined #salt
04:04 wnkz joined #salt
04:07 Nazca joined #salt
04:08 thedodd joined #salt
04:15 thayne joined #salt
04:17 Corey Gah. Delayed flight.
04:22 Phibs gah on you :)
04:26 bhosmer joined #salt
04:26 JDiPierro joined #salt
04:26 ajw0100 joined #salt
04:27 iggy its snowy here right now
04:28 nich0s Yeah. The roads don't seem to be badly impacted tho.
04:29 malinoff joined #salt
04:29 Furao joined #salt
04:30 iggy i dont even want to go outside
04:30 iggy much lews see the roads
04:30 kaictl joined #salt
04:35 tkharju joined #salt
04:36 fsero__ joined #salt
04:37 desposo joined #salt
04:37 catpig joined #salt
04:40 nullptr`` joined #salt
04:44 JlRd joined #salt
04:46 pogotech joined #salt
04:46 xsteadfastx joined #salt
04:46 pogotech joined #salt
04:48 Furao joined #salt
04:50 pogotech I am new to Salt and I was wondering what is a good text editor for creating SLS files?
04:51 Furao pycharm/inteliji (not free version) support jinja and yaml both at the same time in the same file
04:55 pogotech Thank you, I will look into those/
05:13 davet joined #salt
05:20 auser joined #salt
05:31 Ryan_Lane joined #salt
05:33 MTecknology joined #salt
05:37 thedodd joined #salt
05:38 kaictl joined #salt
05:48 ramteid joined #salt
05:49 kermit joined #salt
05:53 Ahlee there's vim plugins for states, yaml, and jinja
06:00 fsero_ joined #salt
06:01 swa_work joined #salt
06:02 catpigger joined #salt
06:02 swa_work joined #salt
06:04 tmh1999 joined #salt
06:04 monkey66 left #salt
06:05 * MTecknology looks at Ahlee
06:32 MatthewsFace joined #salt
06:33 krelo joined #salt
06:48 malinoff joined #salt
06:49 sfxandy joined #salt
06:54 xist joined #salt
06:55 krelo joined #salt
06:58 mafro joined #salt
06:58 jhauser joined #salt
06:59 stoogenmeyer joined #salt
06:59 catpiggest joined #salt
07:12 flyboy joined #salt
07:15 dstufft joined #salt
07:18 MaliutaLap joined #salt
07:18 MaliutaLap joined #salt
07:20 AndreasLutro joined #salt
07:21 kawa2014 joined #salt
07:29 linjan joined #salt
07:37 bhosmer joined #salt
07:40 I3olle joined #salt
07:41 aqua^mac joined #salt
07:43 xist joined #salt
07:54 dRiN joined #salt
07:57 otter768 joined #salt
08:00 fsero__ joined #salt
08:05 jgelens joined #salt
08:06 lb1a joined #salt
08:07 stoogenmeyer_ joined #salt
08:07 tmwsiy joined #salt
08:07 seshan joined #salt
08:09 Aikar :( it doesnt make sense: Unable to determine upstream hash of source file /srv/keys/foo
08:09 Aikar the file exists
08:09 Aikar and was working under a diff context
08:10 Aikar oh hmm difference sems to be file.copy vs file.maanged
08:10 jhauser joined #salt
08:11 eseyman joined #salt
08:14 jri joined #salt
08:15 yomilk joined #salt
08:18 Aikar ok so file.managed needs salt://keys
08:18 Aikar got it
08:21 __gotcha joined #salt
08:24 KermitTheFragger joined #salt
08:24 Auroch joined #salt
08:24 babilen Aikar: It needs a source in file_roots, yes
08:25 babilen (and relative to it)
08:25 markm joined #salt
08:25 babilen Good morning #salt!
08:26 wincyj joined #salt
08:27 davet joined #salt
08:29 LaProvokatrice joined #salt
08:40 fivmo joined #salt
08:51 aquinas joined #salt
08:52 xist joined #salt
08:58 stoogenmeyer__ joined #salt
08:59 mafro joined #salt
09:03 seshan Can somebody tell me what is going wrong here
09:03 seshan v
09:03 seshan https://www.refheap.com/98045
09:04 seshan Error log and code in the above link
09:07 chiui joined #salt
09:08 intellix joined #salt
09:10 jtang joined #salt
09:16 karimb joined #salt
09:18 AndreasLutro seshan: you need to remove the "copy_files:", and remove the "- " in front of each "file.copy"
09:18 I3olle joined #salt
09:19 seshan Ooo.. The "-"
09:19 seshan missed that
09:19 seshan thanks a lot :)
09:19 seshan AndreasLutro: :)
09:23 sfxandy joined #salt
09:25 ndrei joined #salt
09:27 ocdmw joined #salt
09:27 lothiraldan joined #salt
09:30 robinsmidsrod joined #salt
09:34 kawa2014 joined #salt
09:36 Twiglet god damn stupid naming of salt functions, "saltstack mine returning old machines"
09:36 Twiglet all the results are about mining bloody salt
09:36 Twiglet *range*
09:38 che-arne joined #salt
09:42 intellix joined #salt
09:46 fredvd joined #salt
09:52 phx Twiglet, lol
09:54 Furao Twiglet: old minions are there because you probably deleted the VM but the key are still in the master
09:54 Furao salt-key -d $oldminionid
09:56 losh joined #salt
09:57 losh hi all.  Is there a salt module that manages sshd host keys?  So that host ssh keys persist between resinstallation?
09:58 otter768 joined #salt
10:01 Furao losh: file.managed\n    -name: /etc/ssh/ssh_host_rsa_key\n    - content: {{ salt[‘pillar.get’](‘sshd:private’)|indent(10) }}
10:01 MatthewsFace joined #salt
10:01 yidhra_ joined #salt
10:01 Furao followed by a cmd.wait that create the .pub from it
10:01 Furao and a watch in the service: ssh
10:02 losh Furao, when a new machine is installed, how does the key get added to the pillar?
10:03 Furao you have to create it in first place, but to make it automatic and persistent… hmmm
10:03 Furao you can use salt mine
10:03 Furao but not a good idea to store a private key in mine
10:04 Twiglet Furao: Yup that looks like the cause, even after flushing the mine from the master they were still showing up in the mine.get. Needs more garbage collection, not very helpful if you're scaling/unscaling stuff a lot
10:04 Twiglet Cheers for the help!
10:05 losh Furao: I'm not familiar with salt mine, I'll read up on it now.  Thank you very much for your help.
10:05 Furao losh: well I understand your requirement and i can’t find a simple solution with the “batteries” that come with salt
10:05 Furao I know some hacks to achieve what you want by writing code
10:07 yawniek_ is there a way to supply ssh keys for ext_pillar git remotes
10:07 losh Furao: I'm coming from bcfg2 which provides a functionality SSHBase to handle this use case.  We're looking for an equivalent functionality in salt.  I don't mind coding if it comes to that.  What's the problem with storing the keys in the mine?
10:07 yawniek_ since github wants different deployment keys
10:08 Furao losh: mine data is available to all minions
10:08 babilen I have written an execution module that provides functions to generate certificates with easyrsa. I use this with reactors to automatically generate certs on one "cert server" and send them to minions ... One could use a similar approach with SSH keys I guess.
10:08 losh Furao: OK, I see the problem there.
10:09 losh babilen: That sounds interesting.  Is the module available publicly?
10:09 Furao i was thinking to write an ext_pillars module that generate a private key and store it on the master. maybe using data salt module. so as long as the master is not cleared keys are persistents
10:09 babilen losh: I haven't open sourced it yet
10:10 babilen (sorry)
10:10 aqua^mac joined #salt
10:10 bhosmer_ joined #salt
10:10 losh babilen: No worries, I've got nothing, so I'm prepared to consider any options.
10:10 amcorreia_ joined #salt
10:11 Furao yawniek_: you have to configure the ssh client for that
10:11 Furao for this we have something like this https://doc.robotinfra.com/ssh/client/doc/pillar.html#ssh-keys
10:11 yawniek_ Furao: i just did that, seems to be an issue: https://github.com/saltstack/salt/issues/16176
10:11 yawniek_ Furao: thanks
10:12 losh Furao & babilen: Thank you both for your ideas.  It looks like I'll have to code up the solution.
10:15 saltuser joined #salt
10:15 Twiglet Furao: doesn't look like old keys afterall :/
10:17 saltuser Gurus, is there any way to pass arguments to sls? For example I have a for cycle for creating users. Now i'd like to invoke the same code but pass an argument that defines what users to create - os-admins, db-admins etc.
10:20 Furao saltuser: pillars
10:23 saltuser Users are defined in pillars but how to tell the SLS which pillar group to use?
10:25 ujjain joined #salt
10:25 ujjain joined #salt
10:26 markm_ joined #salt
10:26 saltuser I'd like to use something like {% set groupname = "os-admins" %}; - include users.sls
10:29 babilen losh: I have no problem showing you (sanitised) ideas, but it simply isn't in a state in which I want to put it on GH
10:31 _sfxandy ok, mental block here guys .... in a file.managed state, the source attribute uses the directories defined in the file_roots section in /etc/salt/master?
10:31 babilen _sfxandy: Yes (/srv/salt by default)
10:31 _sfxandy hmmm, moans my source file cannot be found
10:32 babilen _sfxandy: You are not referencing it correctly then. Please provide details about your setup on http://refheap.com
10:33 _sfxandy pasting stuff there now babilen
10:43 _sfxandy ok babilen ... https://www.refheap.com/98055
10:43 pf_moore joined #salt
10:45 losh babilen: I'd be greatful to see how you wrote the reactor.
10:52 SheetiS joined #salt
10:53 N-Mi joined #salt
10:53 N-Mi joined #salt
10:56 mikkn joined #salt
10:56 jakubek joined #salt
10:58 jakubek any ideas who to handle cloned vms with salt-minions and the same /etc/salt/minion_id?
10:59 babilen _sfxandy: Your reference to salt://sa51dev/ is wrong. These are environments and a minion either is in an environment or not. The file you mean would be referenced as: salt://15w04/files/common/gridhosts
11:00 robothands jakubek: if it was me, I'd set salt-minion to not start on boot. clone the VM, then change the minion_id before starting and enabling service on boot
11:00 nich0s joined #salt
11:00 _sfxandy ok, will give that a shot babilen
11:02 rudi_s Can I write a jinja macro in a way that works independently of indentation? I haven't tried it, but I guess that the indentation must match the surroundings. For example I want a macro which appends stuff to the surrounding list, like (- foo\n- bar\n<macro here>\n- bla) and it works no matter the indentation of the list.
11:04 _sfxandy thanks babilen!  now i just need to understand why my salt mine function reference isn;t quite working as i expect!
11:06 _ale1_ joined #salt
11:06 giantlock joined #salt
11:06 jakubek robothands: sure, but sometimes i don't have any influence and my client are clooning their production servers and after all I have a lot of instances with the same minion_id
11:07 jakubek robothands: of course I could say, please don't clone anything. but it won't work :-)
11:14 babilen losh: The general idea is https://www.refheap.com/98059
11:15 __gotcha joined #salt
11:15 losh babilen: thank you very much .. i'll read over it after lunch and get back to you.
11:15 babilen losh: I trigger the "request_cert" event manually (but that could easily be tied into the minion start or key accept event)
11:18 losh babilen: yip.  a minion start would be a good entry point to determine if the ssh_key exists on the host and compare it with the master's copy.
11:18 babilen losh: It is probably hard to understand it. The general idea is that minions send data to each other via the reactor (which just hands over Python dictionaries). The salt master reacts to certain events .. if a minion requests a certificate it asks the pki host to provide it. The pki host then checks if it has created a cert before and, if so, send it or generates a new one. The master then receives the newly generated it received back to the ...
11:18 babilen ... original minion and manages it there with manage_crt (and similar manage_ca, ... functions)
11:18 lothiraldan joined #salt
11:18 babilen losh: I do, however, like the external_pillar idea, but am not entirely sure how I would trigger that. :-/
11:20 losh bablien, yes I tend to agree ... I'm reading up on pillars as I'm still green when it comes to salt.
11:23 babilen losh: Sure, that shouldn't prevent you from gathering ideas though
11:24 babilen losh: Pillars are, at its core, simply Python dictionaries that you can target to specific minions and then reference this data in various places. This makes them usable for sensitive data as you can control which data is available to which minion.
11:25 yomilk joined #salt
11:26 losh It's a huge help, thanks a lot
11:26 losh babilen: got it, it sounds more secure than a salt mine.
11:27 kawa2014 joined #salt
11:32 Kraln joined #salt
11:35 yomilk joined #salt
11:35 fsero_ joined #salt
11:42 jri joined #salt
11:46 asdqweasdzxc joined #salt
11:47 evle joined #salt
11:48 asdqweasdzxc What's preferred way to transfer folders from master to minions? Is it better to use salt.modules.cp.get_dir or salt.states.file.recurse ?
11:50 asdqweasdzxc Also, I tried both of them and salt.modules.cp.get_dir appeared to be slow (8kb took around 60seconds) and salt.states.file.recurse seems to not working all the time. Sometimes it just doesn't copy the files
11:50 sfxandy joined #salt
11:54 XenophonF joined #salt
11:55 XenophonF eliasp: re: sslerror i just realized i'm running 2014.7.1 on some of my windows minions, so i'm going to upgrade them all (manually, *sigh*) and then re-test https file transfers
11:59 otter768 joined #salt
12:03 sfxandy is there anyway I can tell if my mine_functions are  being correctly added to the Salt mine?
12:03 __gotcha joined #salt
12:07 _ale1_ joined #salt
12:16 __gotcha1 joined #salt
12:17 lothiraldan joined #salt
12:18 sfxandy or perhaps a better question is, if I add "network.get_hostname" and "grains.item (roles)" to my mine_functions .... how do I access them via Jinja?
12:18 tmh1999 joined #salt
12:20 tmh1999 joined #salt
12:39 fredvd joined #salt
12:44 JlRd joined #salt
12:45 tmh1999 joined #salt
12:46 tmh1999 joined #salt
12:50 tmh1999 joined #salt
12:52 tmh1999 joined #salt
12:54 tmh1999 joined #salt
12:55 toanju joined #salt
12:58 zer0def uh, ok, my dumb issue again: is there any reason for module.run: - name: saltutil.refresh_modules to fail over salt-ssh?
12:58 zer0def as per the end part of this comment: https://github.com/saltstack/salt/issues/21223#issuecomment-76896210
13:02 zer0def it might be due to the fact, that it's a salt-minion specific thing
13:04 sfxandy ok, i need some help with Salt Mine.  I thought i'd got my head around it but cleawrly missing something fairly crucial.  anyone available to help please?
13:04 __gotcha joined #salt
13:11 helderco joined #salt
13:14 tkharju joined #salt
13:15 yomilk joined #salt
13:17 saltuser left #salt
13:18 CeBe joined #salt
13:19 cpowell joined #salt
13:21 stoogenmeyer_ joined #salt
13:21 tensorproduct joined #salt
13:25 losh joined #salt
13:29 lothiraldan joined #salt
13:29 bluenemo joined #salt
13:29 bluenemo joined #salt
13:32 asdqweasdzxc joined #salt
13:41 nullptr`` joined #salt
13:41 mikkn joined #salt
13:42 N-Mi joined #salt
13:43 tensorproduct Hello again all. Is it possible to do a relative import of custom state execution modules within another modules in salt://_states/ ?
13:43 jaloren joined #salt
13:43 tensorproduct so, if I have salt://_states/foo.py and salt://_states/bar.py, I would like to be able to do "from . import foo" in bar.py
13:44 tensorproduct But that doesn't seem to work
13:45 jaloren Hi all....i am noticing an odd behavior with globbing for minion targeting. Salt doesn't seem to handle a numbe rrange like [1-6]. It say its invalid character range https://gist.github.com/anonymous/b149bcc2923c119f13c5
13:45 jaloren I understand that would be so for a regex but i thought by default salt did globbing
13:45 jaloren And i beleive that's a valid glod
13:46 subsignal joined #salt
13:46 jY [1-6] should work
13:46 jY whats the full command you are using?
13:47 asdqweasdzxc What's preferred way to transfer folders from master to minions? Is it better to use salt.modules.cp.get_dir or salt.states.file.recurse ?
13:47 asdqweasdzxc Also, I tried both of them and salt.modules.cp.get_dir appeared to be slow (8kb took around 60seconds) and salt.states.file.recurse seems to not working all the time. Sometimes it just doesn't copy the files
13:47 jY i use file.recurse
13:47 jaloren jY: salt 'node-[3-12].*' test.ping
13:48 asdqweasdzxc jY: does it work for you all the time ?
13:48 jY it does
13:48 asdqweasdzxc ok
13:48 nich0s joined #salt
13:49 jaloren tensorproduct: I believe trying to access the modules that way is probably going to be tricky because of the python path and remote execution etc. Have you looked at the python client api http://docs.saltstack.com/en/latest/ref/clients/
13:49 jaloren The API allows any custom module to access the functions in any other custom module
13:51 tensorproduct Thanks Jaloren, I'll take a look.
13:52 jaloren_ joined #salt
13:53 wincus joined #salt
13:53 jaloren_ tensorproduct: take a look here for an example http://docs.saltstack.com/en/latest/ref/modules/#cross-calling-modules
13:54 tensorproduct As far as I understand it, jaloren_, the __salt__ dunder dictionary only holds execution modules, not state modules.
13:55 linjan joined #salt
13:57 asdqweasdzxc jY: btw how big is folder you transfer and how fast is it ?
13:58 mafro joined #salt
13:59 jaloren_ tensorproduct: according to the documentation it also includes state modules
13:59 rudi_s Hi. Is it possible to set makedirs: True per default?
13:59 otter768 joined #salt
14:00 jeremyr joined #salt
14:03 dunz0r My top.sls's matches are getting a bit complex... could I use jinja-templating to make some sort of "default"-matching function or something?
14:04 jaloren_ tensorproduct: i suspect its just a simple namespace implementation though the documentation does not give an example unfortunately. I bet that for all functions in a state module they are loaded into the salt dunner dictionary as <name of module>.<func name>
14:04 dunz0r Like {{ default_match() }} or something
14:04 tensorproduct jaloren_: not from my reading of this: http://docs.saltstack.com/en/latest/topics/development/dunder_dictionaries.html. That doc indicates that __salt__ is available "in" a state module, but that is only contains the execution modules
14:04 jaloren_ tensorproduct: see here http://docs.saltstack.com/en/latest/ref/states/writing.html#cross-calling-modules
14:05 jaloren_ It says you can but you shouldn't and then it does NOT give an example so we are left to guess
14:05 \ask joined #salt
14:05 cpowell joined #salt
14:06 tensorproduct jaloren_: I think that the simplest solution would be to move all of the logic I want to import from a state module into an execution module.
14:06 jaloren_ tensorproduct: the design idiom for custom state modules is to create an execution module that defines a simple set of functions and then create a state module that uses them. That's how all the internal modules are written for the most part
14:06 jaloren_ tensorproduct: yes, that's what they think you should do
14:06 jaloren_ tensorproduct: and that's how i am designing my state modules
14:07 tensorproduct Yeah, that seems to be the idiom that the salt architecture is designed around
14:07 tensorproduct Thanks for helping me think that through.
14:07 jaloren_ tensorproduct: yep no prob
14:07 jaloren_ jY: so do you think this globbing issue is a bug?
14:07 jaloren_ it certainly looks like one to me
14:12 nitti joined #salt
14:13 TomJepp joined #salt
14:14 TomJepp Hi, I'm trying to create a nodegroup that matches on the grain 'virtual_subtype:Xen PV DomU'. I can't find a way to format this in my /etc/salt/master file that works - I'm assuming because of the spaces. I currently have xenpv: 'G@virtual_subtype:Xen PV DomU'
14:15 N-Mi joined #salt
14:15 N-Mi joined #salt
14:15 TomJepp is there a sensible way to escape spaces or to quote it somehow?
14:15 dyasny joined #salt
14:17 jaloren_ TomJepp: did you try quoting the value in the file?
14:17 TomJepp jaloren_: I've tried (for example) xenpv: 'G@virtual_subtype:"Xen PV DomU"' and that doesn't seem to work
14:18 racooper joined #salt
14:18 jaloren_ TomJepp: can you provide a gist ofr the actual master conf file?
14:18 TomJepp it's actually an extra file in /etc/salt/master.d/groups.conf. I've had other (working) groups in it - I created one using just a simple list of minion names to test
14:19 TomJepp but yes, sure
14:19 jaloren_ TomJepp: yea whichever. I jus want to see if the file is valid yaml first of all
14:21 TomJepp https://gist.github.com/tomjepp/22c224a8905e536a4488
14:21 rbjorklin joined #salt
14:23 douglassssssssss joined #salt
14:23 jaloren_ yep valid yaml and python parses it the way yo uwould expect
14:23 jaloren_ TomJepp: does it work if you replace the spaces with an underscore?
14:24 TomJepp no, I get "No minions matched the target." I'm issuing a /etc/init.d/salt-master force-reload after every change
14:25 TomJepp but for example "salt -G 'virtual_subtype:Xen PV DomU' test.ping" works as I'd expect
14:25 dude051 joined #salt
14:26 fsero__ joined #salt
14:26 mpanetta joined #salt
14:26 jaloren_ ah right so you verified that the grain exists on the minion
14:26 lietu is there a way to use file.recurse, cp.get_dir or similar for files outside the salt:// tree?
14:26 jaloren_ is there anything in the maste ror minion logs when it says it didn't find anythign?
14:27 murrdoc joined #salt
14:27 pogotech joined #salt
14:27 TomJepp jaloren_: aha. "Invalid compound target: G@virtual_subtype:Xen PV DomU"
14:27 TomJepp I'm guessing that's because of the spaces
14:27 lietu trying to send from the salt master a directory with the full source of the project to minions. that folder also contains the salt configuration in it, so if we symlink it under the salt:// -tree it will get infinite recursion
14:28 TomJepp because a compound target is space delimited, right?
14:28 TomJepp that's why I was assuming I needed to escape the spaces or quote the value somehow
14:29 TomJepp the documentation handily doesn't give any examples of grain matching where the value contains a space :)
14:29 jaloren_ TomJepp: probably cause spaces are evil :)
14:29 sfxandy joined #salt
14:29 TomJepp jaloren_: unfortunately I kind of need to match against them :p
14:30 jaloren_ TomJepp: I never use spaces in anything but LDAP and even then i hate them. I have never seen any program handle them particularly well
14:30 jaloren_ TomJepp: there's always horrible corner cases etc
14:31 jaloren_ TomJepp: ah well that is a problem
14:31 jaloren_ TomJepp: is your targeting based on hypervisor or something?
14:31 TomJepp salt -C 'G@virtual_subtype:Xen?PV?DomU' test.ping "works" though
14:31 TomJepp even if it is an ugly hack :p
14:31 _JZ_ joined #salt
14:31 murrdoc whats ugly about it
14:32 sfxandy quick question ... is it possible to add grains to the Salt Mine?
14:32 TomJepp murrdoc: it'll also patch XenaPVaDomU won't it?
14:32 jaloren_ TomJepp: yes
14:32 murrdoc sure with the grain.get function added under the mine functions
14:32 TomJepp I know that's not particularly likely, but it'd be nice to match against the exact value
14:33 cberndt joined #salt
14:33 jaloren_ TomJepp: yes and actually important because thats the kind of corner case that sys admins hit and lose hours debugging
14:33 jaloren_ TomJepp: does that match support regex?
14:33 sfxandy murrdoc, so something like ..... grain.get: [roles] where roles is my grain?
14:33 jaloren_ [[:space:]]
14:33 murrdoc yeah
14:34 TomJepp jaloren_: P@ is grains PCRE, I could do it that way.
14:34 murrdoc you could also make a node group
14:34 perfectsine joined #salt
14:34 TomJepp murrdoc: that's what I'm trying to do!
14:35 * murrdoc goes quiet
14:35 murrdoc :D
14:35 jaloren_ murrdoc: its not handling the spaces in the value correctly it seems
14:35 TomJepp jaloren_: actually, using P@ fails in the same way.
14:35 jaloren_ I am actually leaning towards that being a bug in salt parser but its hard to say
14:35 diegows joined #salt
14:35 jaloren_ TomJepp: now that's interesting
14:35 sfxandy hmmm ok, trying to verify that with salt '*' mine.get '*' grain.get [roles] but not working...
14:35 TomJepp and I'm guessing it's because it's splitting it on the spaces *before* it passes it to the glob/pcre parser
14:36 diegows does anyone use linode with salt-cloud?
14:36 jaloren_ TomJepp: according to python re module, whitespace is denoted b \s
14:36 jaloren_ did yo utry that
14:36 TomJepp jaloren_: yeah, \s works
14:36 diegows I have problem launching 10-15 machien clusters :)
14:36 TomJepp but again, that's "any single whitespace char"
14:36 TomJepp so for example \t or \n would match too :p
14:37 debian112 joined #salt
14:37 jaloren_ TomJepp: yea...as i said spaces are evil.
14:37 TomJepp that is rather more splitting hairs than matching against any character though.
14:39 dunz0r Is there some way I can output my compiled sls-files? I want to see if my state looks like I think it does when using Jinja
14:39 jaloren_ TomJepp: yes that seems so unlikely as to be good enough
14:39 ninkotech joined #salt
14:40 clmsy joined #salt
14:42 Ligthert dunz0r: This was discussed last week.
14:42 wm-bot4 joined #salt
14:42 murrdoc state.show_sls
14:42 dunz0r Let's hope my scrollback reaches to last week then
14:42 murrdoc ?
14:43 Ligthert dunz0r: What comes to mind just now is dumping a file on the minion what ends up being your state maybe.
14:43 jerematic joined #salt
14:43 dunz0r There has to be some "cleaner" way...
14:43 Ligthert redirecting stdout into a file when using state.show_sls?
14:44 dunz0r I'm happy just getting it into stdout tbh.
14:44 dunz0r The "problem" is that isn't a state per se, but my top.sls, where I've done some jinja-trickery, and I'm not sure that it renders how I think it should render
14:45 dunz0r Oh wait...
14:45 dunz0r state.show_top
14:45 dunz0r But that just gives me what states it would apply, not the compiled sls
14:45 TomJepp aha, this is why. string.split() is used to split up compound matches so any spaces in that match string are going to cause issues :(
14:46 Ligthert In the mean time I am having trouble with salt-cloud's AWS mishap it seems. I can't seem to specify a security-group and a subnet at the same time. :s
14:46 Ligthert This is the AWS API bugging out on salt-cloud. While doing this manually this is apparently fine. :s
14:47 trikke joined #salt
14:48 dunz0r Basically I just want to see my "real" top.sls without the jinja, but I don't really know how to do that :(
14:49 bluenemo joined #salt
14:49 bluenemo joined #salt
14:51 rudi_s Hi. Is there a defined order for master_tops?
14:52 rudi_s It looks like it randomizes the order I return from my module. At least according to salt minion state.show_top
14:55 huddy joined #salt
14:56 __gotcha joined #salt
14:58 TomJepp If anyone's interested, I've raised https://github.com/saltstack/salt/issues/21260. I might have a bash at it but my python is rusty :p
14:59 harkx joined #salt
15:02 Brick__ joined #salt
15:02 losh Is it possible to get grain.items from within a grain?
15:02 Twiglet Us there a way of forcing the master to clear the mine cache in a state?
15:03 stylica joined #salt
15:08 andrew_v joined #salt
15:12 thedodd joined #salt
15:12 shaggy_surfer joined #salt
15:13 shaggy_surfer joined #salt
15:13 iggy Twiglet: you want it cleared or updated?
15:13 babilen losh: Whatfor?
15:16 losh babilen: A colleague had a grain item that he'd like read in another grain function.  But I her has worked around the requirement.
15:17 tmh1999 joined #salt
15:17 twobitsprite joined #salt
15:17 btorch morning, is there a way to make apt.held not to fail during a highstate test=true ?
15:18 twobitsprite good morning everyone... I'm trying to update the salt-minion package on a RHEL5 system from EPEL, and it's giving a dependency error regarding python26-distribute
15:18 btorch the pkg.installed for the pacakges which apt.held will work on, does pass during the highstate test
15:18 babilen losh: You might not want such complicated grains
15:18 twobitsprite anyone else experiencing this, or know of a solution?
15:19 losh babilen: I suspect you are correct.  It seemed to be a circular dependency.
15:22 kanaka_ joined #salt
15:23 nich0s joined #salt
15:23 CheKoLyN joined #salt
15:24 sfxandy hi everyone.
15:24 nich0s hi, dr. sfxandy.
15:24 murrdoc dr. ?
15:24 murrdoc woah like phd ?
15:24 Twiglet iggy: Updated, I'm having issues with old noes mine data stick around after they have been killed off/are offline
15:24 sfxandy if i have multiple grains in my Salt Mine, a salt '*' mine.get '*' grains.item returns all grains.  how do I extract a specific grain??
15:25 Twiglet granted I've just realised that I didn't have the minion running on my dev master which may not be helping
15:25 murrdoc grains.get param
15:25 sfxandy hmmm, that doesn;t work murrdoc
15:25 sfxandy i just get an empty result set
15:26 murrdoc have u tried mine aliasing ? so you can do module.function and param
15:26 Matt__ joined #salt
15:27 clintberry joined #salt
15:27 XenophonF joined #salt
15:27 sfxandy murrdoc - no i haven;t.  am a relative noob!  would have thought i'd be able to access a specific grain with grains.item param but that fails.
15:27 XenophonF does anyone have a SLS coding style doc they'd be willing to share?
15:28 murrdoc saltstack publishes one, so does ansible
15:28 XenophonF yeah, but it's for python
15:29 pdayton joined #salt
15:29 XenophonF i might try adapting it
15:29 hal58th joined #salt
15:30 perfectsine_ joined #salt
15:30 lothiraldan_ joined #salt
15:31 murrdoc if all these sites would use a better cdn, translation ours, i wouldnt haev to wait for cloud flare to render js files, gawd
15:31 Matt__ Hi, how to use the show_full_contex function to debug a salt/pillar template? Where can I add it? I've a conf.sls, init.sls, map.jinja and a pillar/varnish.sls
15:31 iggy Twiglet: lower your mine_interval?
15:31 iggy Twiglet: there's also a config file setting in recent versions that impacts the clearing out of old data
15:32 Brew joined #salt
15:33 chalcy0n joined #salt
15:33 thehaven joined #salt
15:33 toanju joined #salt
15:34 murrdoc XenophonF:  few things i do, set variables at the top of the file, only use salt[pillar.get] and salt[grain.get], name all states, instead of using the implicit naming, use listen_* over requires, 80 chars limit :)
15:34 carlgeorge joined #salt
15:34 XenophonF listen instead of requires?
15:34 XenophonF going to have to google that :)
15:34 stej_ joined #salt
15:34 murrdoc google saltstack requisites
15:35 carlgeorge XenophonF: http://docs.saltstack.com/en/latest/ref/states/requisites.html
15:35 sword- joined #salt
15:37 iggy Twiglet: look into preserve_minion_cache (you probably want it set to false) and make sure you are removing keys of hosts you take down
15:38 kanaka_ joined #salt
15:41 Twiglet iggy: thanks for the pointers, will take a look into it. As for removing keys that is something we're looking into as a general garbage collection issue, scaling stuff with salt gets messy :/
15:41 stej_ Hi. How do people that use the syndic keep their statefiles synced?
15:42 stej_ I'm using gitfs on my master, but it's not an option on my syndic
15:42 ekristen joined #salt
15:42 iggy Twiglet: if you don't suffer the dreaded "minions go missing" issue constantly, you could automate a "salt-run manage.down removekeys=True"
15:42 Matt__ anybody know how to use show_full_context?
15:42 stej_ is file.recuse of the state and pillar files the best option for keeping the syndic in sync?
15:43 pdayton joined #salt
15:46 thayne joined #salt
15:46 ecdhe I learned about the chocolatey module, but there is no chocolatey state.  Would this issue resolve this?  https://github.com/saltstack/salt/issues/15709
15:48 murrdoc1 joined #salt
15:48 murrdoc1 joined #salt
15:48 murrdoc1 joined #salt
15:50 jri joined #salt
15:51 Andre-B joined #salt
15:54 fivmo joined #salt
15:56 numkem can the mine_interval option be set in pillar or it has to be in the minion's config?
16:00 notnotpeter joined #salt
16:00 penguin_dan joined #salt
16:00 ajw0100 joined #salt
16:00 jerematic joined #salt
16:00 otter768 joined #salt
16:00 jri joined #salt
16:01 Twiglet iggy: nope we get that a fair bit unfortunately combined with stuff spinning up and down constantly it becomes a bit annoying
16:02 iggy numkem: pretty sure it's  config file only thing
16:02 iggy sadly
16:02 hal58th iggy, you sitting in a conference training or are you coming tonight?
16:02 numkem iggy: the example shows it so I'll just add a state. Thaks
16:02 numkem *Thanks
16:03 signull joined #salt
16:03 hal58th1 joined #salt
16:03 iggy hal58th: I have class this afternoon (didn't opt for the morning class) and then the test
16:03 covox joined #salt
16:04 iggy numkem: there is a salt-formula
16:04 hal58th1 All right, Which class you taking? I'm doing Devops. I will see you at the test hopefully. Just have to find you
16:04 vxitch joined #salt
16:04 Corey Good morning from Salt Fundamentals.
16:04 XenophonF ecdhe: use the module state, maybe?
16:05 XenophonF ecdhe: hang on i'll show you an example
16:05 conan_the_destro joined #salt
16:05 numkem iggy: yeah about that, is there a way for the gitfs thing to go through a squid proxy? my master doesn't have straight access to the internet
16:05 hal58th1 I am in Salt Fundamentals too Corey. Front row, three left from projector.
16:05 numkem iggy: Or I have to clone them locally
16:05 ecdhe XenophonF:  ???   Do you have an example? I'm not sure what you mean.
16:05 Corey numkem: Ugly. You'd have to either do https and offload the SSL, or else treat it as a dumb tcp stream.
16:05 murrdoc joined #salt
16:06 Corey hal58th1: I'm in the back, preparing to heckle utahdave when he gets done speaking.
16:06 _ale1_ joined #salt
16:06 hal58th1 I did not realize this was UtahDave.
16:06 iggy numkem: should be possible for git https:// url's (https://github.com/saltstack-formulas/salt-formula.git)
16:06 Corey hal58th1: The beard threw me too. That's new.
16:06 iggy hal58th1: I'm taking the advanced class
16:06 hal58th1 I have never met him before, nor did I remember his real name
16:07 Corey (I'm in the back row, working on my slides.)
16:07 iggy my badge says iggy... I should be easy to find
16:07 XenophonF ecdhe: https://bpaste.net/show/7dd61c4d0715
16:07 clintbe__ joined #salt
16:07 hal58th1 Badges don't list github/irc names. Very dissappointing.
16:07 ocdmw joined #salt
16:07 XenophonF ecdhe: http://docs.saltstack.com/en/latest/ref/states/all/salt.states.module.html#salt.states.module.run
16:07 iggy mine does!
16:08 XenophonF iggy: hah
16:08 hal58th1 Hmmm, you must be special. Oh well
16:08 Corey My badge says my nick. Imagine that. :-)
16:08 Corey I'm also the only person at this conference (I think) who wears a tie.
16:08 ecdhe Thanks XenophonF
16:08 XenophonF iggy that's a rad lookin mixer on your gh profile
16:08 hal58th1 That's probably true Corey
16:09 iggy It was actually supposed to say "Iggy ." but someone put my real last name on it ... "Iggy Jackson" just doesn't have the same ring to it
16:09 numkem Corey: not sure what you means, my squid can do http and https. The problems is I seems like salt-master doesn't obay http_proxy and https_proxy environment variables
16:09 iggy XenophonF: Allen & Heath Xone 92
16:09 nich0s This Pre-Conf training is exactly what I was expecting. It's really well done so far. +1
16:10 XenophonF iggy: got a cousin who's an audio engineer, he's got all sorts of fun toys
16:10 Corey numkem: Are you setting the proxy settings in your git config?
16:10 XenophonF i love visiting his recording studio
16:10 numkem Corey: I didn't think of that at all... I didn't really know git could be configured that way. I will try that.
16:10 iggy That's at the club where I used to have a residency
16:10 iggy No time for that any mmore :/
16:11 Corey numkem: Yeah, you'll have better luck that way. :-)
16:11 numkem Corey: thanks I'll check it out
16:11 Corey No worries. I GENERATED VALUE!
16:11 murrdoc haha
16:12 btorch has anyone seens this salt minion bug/error ? http://pastebin.com/kH6e2hMA
16:12 ALLmightySPIFF joined #salt
16:12 btorch [salt.log.setup   ][ERROR   ] An un-handled exception was caught by salt's global exception handler:
16:12 cpowell joined #salt
16:12 murrdoc you have bad config
16:12 btorch on master  ?
16:13 murrdoc i think so yes
16:13 btorch hmm never saw that on 0.17.5 and the only log related config param is "state_verbose: False"
16:13 btorch let me try removing that I guess
16:14 Corey Hah, I thought you said 0.17.5
16:14 chalcy0n LOL
16:14 aphoriser joined #salt
16:15 vschum1 https://github.com/saltstack-formulas/mysql-formula/pull/61 =)
16:15 btorch Corey: I did :)
16:15 Corey btorch: You're running that version?
16:15 btorch but now these test boxes are on 2014.7.1+ds-3precise1
16:17 btorch yeah don't think that was it
16:18 getling joined #salt
16:19 getling I'm trying to set up a master->syndic and I'm still having issues. This page: http://docs.saltstack.com/en/latest/topics/topology/syndic.html says all that needs to be done is set the syndic_master section up on the syndic, and set order_masters on the MoM
16:19 getling but there appears to be some sort of key issue, maybe
16:19 getling the MoM now knows about the syndic minions, but cannot contact them
16:20 robothands hello, does anyone find the minion->master communication is a bit "unsuitable" for production. What I mean is, if you break the connection between minion and master, then fix it, the minion doesnt seem to reconnect in a timely fashion
16:20 murrdoc no one likes talking to mom
16:20 murrdoc :(
16:20 murrdoc call your parents people!
16:20 aphorise joined #salt
16:21 robothands we can restart the minion service, but that is not really a solution obviously.
16:22 robothands even if you send test.pings, the connection will not reestablish itself without a service restart...quite frustrating
16:22 conan_the_destro joined #salt
16:23 stylica joined #salt
16:26 fredvd joined #salt
16:26 losh babilen: In your pki execution module, you use the os module but you don't explicitly import it, how did you know it was available?
16:27 btorch murrdoc: any other clue ? http://pastebin.com/L7M9nDsi ... my master config consists of nothing more that worker_threads, interface, file_roots and pillar_roots .. that's all
16:27 losh babilen: oh wait, I think you may have excluded the file header on purpose.
16:27 btorch and the minion just master for the ip and grains
16:27 getling OK, for my problem I needed to recycle all syndic services to grab syndic_master.pub
16:28 murrdoc btorch:  i am sorry was the error from master log or minion ?
16:28 murrdoc and have u restarted services after config updates
16:28 btorch minion
16:29 murrdoc check minion configs too
16:29 btorch yeah I did that
16:29 murrdoc i should have asked that first
16:30 btorch I gotta a bit confused about this "proxyminion.start(self.opts['pillar']['proxy'][p])" part
16:30 murrdoc btorch:  are u running a proxy minion ?
16:30 btorch since I also have a pillar called proxy
16:30 SheetiS joined #salt
16:30 murrdoc maybe u cant hvae a pillar called proxy ?
16:30 murrdoc can u paste in your minion config
16:31 btorch sure
16:31 cedwards joined #salt
16:32 btorch murrdoc: http://pastebin.com/eMjRqdb6
16:32 che-arne joined #salt
16:33 murrdoc can u try with   stype: webproxy
16:33 murrdoc for testing sakes
16:34 hal58th1 robothands Have you tried changing keepalive settings in minion config?
16:35 __gotcha joined #salt
16:36 shaggy_surfer joined #salt
16:36 shaggy_surfer joined #salt
16:38 btorch murrdoc: sure
16:38 btorch is this something new ? salt proxy ?
16:41 robothands hal58th1: actually I sort of am one step closer to sorting it. The default auth_tries value is 1
16:41 hal58th1 that's oddly small.
16:41 msheiny joined #salt
16:41 robothands which is ridiculous really...anyway, so according to the minion logs, it reconnects now, but the master still cant send jobs until the minion service is restarted
16:42 robothands i have keepalive at 1min, and I can see pings in logs, but minion wont accept jobs
16:42 ALLmightySPIFF joined #salt
16:43 cpowell joined #salt
16:43 tligda joined #salt
16:44 numkem Corey: doesn't seem like the master reads /root/.gitconfig
16:45 StDiluted joined #salt
16:45 btorch I think having that pillar named proxy is causing the salt-minion to start as this proxy minion :(
16:47 thayne joined #salt
16:47 btorch [salt             ][INFO    ] Setting up a Salt Proxy Minion "data3.dev1.swift.racklabs.com"
16:48 rgarcia_ joined #salt
16:48 murrdoc das a bug
16:49 murrdoc or some undocumented goodness
16:49 murrdoc github tickets
16:51 btorch murrdoc: yep that was it
16:51 ocdmw joined #salt
16:51 btorch well I just glanced over http://docs.saltstack.com/en/latest/topics/topology/proxyminion/index.html
16:52 btorch but by quickly looking over the states there seems like perhaps "proxy" keyword is now something reserved for this type of setup ?
16:52 diegows joined #salt
16:53 ocdmw joined #salt
16:55 perfectsine joined #salt
16:56 andrew_v joined #salt
16:57 JDiPierro joined #salt
16:58 scoates is there a way for me to get `pillar.item` or `pillar.refresh` to report errors? e.g. if I do `salt-call -ldebug saltutil.refresh_pillar; salt-call pillar.item test_a` the refresh will give me True and that item is empty, if there's a rendering problem in my pillar, somewhere.
16:59 murrdoc nah man, its in the logs
16:59 btorch I guess there is no way to disable the proxy minion feature on the master config, is ther e?
17:00 scoates murrdoc: if that was to me: which logs? I was hoping the `-ldebug` would give me that…
17:00 murrdoc master log
17:01 Corey numkem: I wouldn't expect it to. :-)
17:01 scoates ah. yeah, I see it there. Thanks murrdoc.
17:01 Corey numkem: /etc/gitconfig is your friend.
17:01 theologian joined #salt
17:02 numkem Corey: seriously... /etc/gitconfig is documented nowhere
17:02 Corey numkem: Lies. https://www.kernel.org/pub/software/scm/git/docs/git-config.html
17:03 numkem Corey: correction, nowhere that Google showed me :)
17:03 Corey numkem: (I teach Git classes.)
17:03 Corey "The Screaming Horrors of Git" is the title.
17:04 numkem Corey: Some DeprecationWarning about something that will be removed in Salt Boron but I'm no longer getting the error. Thanks!
17:04 numkem Corey: I shall receive your teachings, master
17:05 Corey numkem: Can you pastebin that deprecation warning?
17:05 Corey numkem: I'll go assault UtahDave in the middle of his teaching a hundred people about it.
17:06 numkem Corey: http://pastebin.com/A4yrAygm
17:06 Corey numkem: Oh, that's not gitconfig related. Sweet.
17:06 numkem Corey: added bonus
17:07 Corey That's likely a config setting.
17:07 schlueter joined #salt
17:08 jalbretsen joined #salt
17:10 btorch hmm maybe there should be something here on "proxy" being a reserved pillar word ? http://salt.readthedocs.org/en/latest/topics/pillar/index.html
17:10 murrdoc btorch:  submit a pull request for that
17:11 vschum1 Anyone here attending SaltConf15?
17:11 bantone i am now
17:11 btorch would that file really be the best location though ? I was going to just create an issue
17:11 iggy why didn't anybody tell me it was snowing?
17:12 btorch and let whoever is more familiar with the docs decide the best place it should go
17:12 thayne joined #salt
17:12 wendall911 joined #salt
17:12 iggy btorch: I would file a general issue... there's more than just proxy and they should probably be documented somewhere
17:13 rap424 joined #salt
17:13 eseyman joined #salt
17:14 eliasp damn… fiddled with file.managed + file.replace for the last 2h and now I realize, I just should've looked at the available states: http://docs.saltstack.com/en/latest/ref/states/all/salt.states.ini_manage.html :)
17:16 thayne_ joined #salt
17:18 numkem mine_functions are a list of module calls correct? Trying to wrap my head about how to use the mine system. I want to check if a package is installed and if a service is running
17:18 desposo joined #salt
17:20 furball365 joined #salt
17:21 KyleG joined #salt
17:21 KyleG joined #salt
17:21 MaliutaLap joined #salt
17:24 ocdmw joined #salt
17:24 aparsons joined #salt
17:24 beneggett joined #salt
17:25 schlueter joined #salt
17:26 iggy numkem: you generally don't check if a service is running, you either want it running or you don't
17:29 spookah joined #salt
17:30 beneggett joined #salt
17:31 JDiPierro joined #salt
17:32 MatthewsFace joined #salt
17:34 Ahlee hey, iggy
17:34 Ahlee it's snowing. pretty hard
17:34 murrdoc snowing!
17:34 * murrdoc goes to repack again
17:35 murrdoc gawd
17:35 iggy yeah, I tried to go to the liquor store already (protip, they don't open till 11 in Utah)
17:35 Ahlee I can't see the grand america from a block away
17:35 murrdoc crazy
17:35 iggy We don't get much snow where I'm from... so it's kind of a novelty
17:36 iggy I definitely wouldn't want this very often
17:36 Ahlee nevermind, i can now.  White out about 30 minutes ago
17:36 rgarcia_ joined #salt
17:36 Ahlee *shrug* you get used to it
17:36 iggy yeah, it was pretty thick there for a minute
17:36 iggy there was a little mini snow plow barreling down the sidewalk
17:36 Ahlee The locals are giddy
17:36 __gotcha joined #salt
17:36 murrdoc what u mean
17:36 Corey Ah, snow.
17:36 Ahlee this snow'll be good for skiing
17:36 Corey I'd forgotten.
17:37 Ahlee so the hotel staff are all happy
17:37 bantone yeah pretty aggressive snow
17:37 Ahlee at least, the snow bum ones
17:37 numkem iggy: in my case i think service.missing would do the trick
17:37 murrdoc man we should go tobagganing
17:37 Ahlee prepare for the b team at resturants as people call out to go skiing tomorrow
17:37 iggy numkem: what are you actually trying to achieve
17:37 iggy Ahlee: lol, b team
17:38 Corey 09:37:32 < murrdoc> man we should go tobagganing <-- not sure if indecent proposal...
17:38 numkem iggy: I want to try to do service discovery
17:38 murrdoc not sure how
17:38 Corey numkem: Look into the salt mine.
17:38 murrdoc but yes
17:38 murrdoc totes
17:38 iggy lol
17:38 iggy murrdoc: when do you get in?
17:38 Ahlee ~$80-100 to get up to park city, just sayin'
17:39 Corey Ahlee: Is that via taxi?
17:39 Corey I want to visit the High West distillery if I get the chance.
17:40 Ahlee Corey: unsure on taxi, would wager it's higher.  That is what i've seen in the hotel lobby of the two hotels i've been in here
17:40 CeBe joined #salt
17:40 numkem Corey: thats what I'm trying to do and I would use the service.missing function in the mine_functions
17:40 Ahlee pretty sure they all just use a charter bus service
17:40 numkem Corey: Can't say I understand very well how the documentation is written
17:40 __gotcha1 joined #salt
17:41 murrdoc iggy:  tonight at 10~ then bail on conference for park city tomorrow with ahlee
17:41 iggy hah
17:41 iggy fair enough
17:42 murrdoc haha nah, get in tonight
17:42 murrdoc leave thursday at 3
17:42 getling Anyone set up salt LDAP to Active Directory with nested groups?
17:43 murrdoc Ahlee:  park city tomororw ?
17:44 Ahlee murrdoc: after my talk, sure!
17:45 Ahlee or i could just make terminalmage give my talk for me
17:45 iggy play the youtube video from the last time you did it
17:45 murrdoc delegate cos u can man
17:45 murrdoc delegate cos u can
17:46 Gareth morning morning
17:47 __gotcha joined #salt
17:47 robawt good morning!
17:48 Gareth robawt: hey hey, hows it going?
17:48 Corey Gareth: Are you here yet?
17:48 robawt Gareth: first day back from a small vacation to the pacific west, so I'm 10/10
17:48 Gareth Corey: not yet.  flight leaves burbank at 4:30pm and I land in SLC at 7:20ish I think.
17:49 Corey Gareth: High West Distillery before you leave?
17:49 Gareth Corey: could be interesting.
17:49 smcquay joined #salt
17:49 Gareth Corey: I fly out Thursday at 8pm.
17:50 cwyse joined #salt
17:50 ocdmw joined #salt
17:52 jaloren joined #salt
17:52 robawt this is going to be a busy channel this week :D
17:52 robawt also bummed I'm not raiding a distillery with Corey
17:53 jaloren hi all....has anyone had problems with globbing for minion targeting. When i target based on a glob like node-[1-3]* it fails. Here's the log https://gist.github.com/anonymous/edd7c64bb94f509c5a6c
17:53 Gareth robawt: Corey isn't banned from the state of Utah....yet.
17:53 Corey Gareth figured out the real reason I wear suits to conferences.
17:53 Corey It's the only time I get called "sir" without it being immediately followed by "...you're causing a scene."
17:54 Ahlee lol
17:54 chalcy0n lol
17:54 Gareth Corey: haha
17:54 Gareth Corey: bonus points for the simpson's quote.
17:54 murrdoc Corey:  haha
17:55 Corey That's from the Simpsons? TIL.
17:55 murrdoc its from irl for me
17:55 murrdoc is there a 'drinks' thing planned for wednesday ?
17:55 murrdoc if not lets plan that shit right now
17:56 bemehow joined #salt
17:56 thayne__ joined #salt
17:56 bemehow joined #salt
17:56 murrdoc ok good talk
17:56 Gareth Corey: yeah.  Episode where Marge finds a designer dress in a discount store, keeps altering so no one is suspecious.  They go to a party and Homer wants to valet, since it's the only time someone calls him sir without it being immediately followed by "..you're causing a scene." :)
17:56 * murrdoc goes back to work
17:56 stoogenmeyer_ joined #salt
17:57 tomh- joined #salt
17:57 kanaka_ joined #salt
17:59 vschum1 possible to use sudo with the manage.bootstrap runner?
18:01 thayne__ joined #salt
18:01 otter768 joined #salt
18:02 pacopablo how would one figure out how a given grain populated?  specifically, the domain grain on ubuntu
18:03 murrdoc have to read the code
18:03 pacopablo k
18:03 Corey pacopablo: Chcking.
18:04 flebel joined #salt
18:04 Corey pacopablo: socket.gethostname()
18:04 linjan joined #salt
18:04 Corey pacopablo: Then, (grains['host'], grains['domain']) = grains['fqdn'].partition('.')[::2]
18:04 pacopablo thanks
18:05 Corey Which is... horrible.
18:05 Corey But there you have it.
18:05 pacopablo hahaha
18:06 Corey I wrote some of that file, but not that line. Thank go.
18:06 Corey god*
18:06 murrdoc git blame
18:06 Corey (git shame absolved me)
18:06 iggy murrdoc: Sounds like a plan... nothing like being hungover for my presentation!
18:07 \ask joined #salt
18:07 Corey iggy: "Thank you for coming to Slap and Tickle with Saltstack. I'd like to start by saying Shhhhhhh.  Just Shhhhhhhhhhhhhhhhhh. Just for a minute. Shhhhhhh"
18:07 murrdoc haha
18:07 murrdoc corey u at the conference ?
18:07 Corey Incidentally, someone needs to give a talk called "Slap and Tickle with Saltstack"
18:07 Corey murrdoc: I'm the only person here wearing a tie.
18:08 Corey I'm giving a talk and a panel.
18:08 Corey Well, I'm giving a talk.
18:08 Corey I may be ejected before my panel.
18:08 murrdoc what talk
18:08 Corey "There and Back Again: A Saltstack Retrospective"
18:08 ajw0100 joined #salt
18:08 murrdoc whats it about
18:08 * murrdoc waits for title to be restated
18:09 dimeshake "how to deploy with saltstack, screw up, and rewrite from scratch"
18:09 dimeshake :D
18:09 Corey In this talk, Corey will share how configuration management at large (and SaltStack in particular) has evolved in recent years. Join this light-hearted talk about the past, present and future of configuration management at scale. He will talk at length about how SaltStack turned someone who couldn’t code his way out of a paper bag, into a “valued” contributor. This will include a brief history of configuration management and touch upon ...
18:10 Corey ... the future of the field.
18:10 iggy sounds better than mine... let's hope it's at the same time and it'll draw more people away from mine
18:10 Corey iggy: What's yours?
18:11 Corey The last talk I gave publicly was https://www.youtube.com/watch?v=3gU6K_QHNHY
18:11 Corey "Did you REALLY give a lightning talk about drinking?"
18:12 iggy mine is titled "Please don't come to this talk"
18:12 Corey iggy: Do you have enough jokes?
18:13 iggy I've got jokes for days
18:13 iggy That's really all I've got
18:13 TomJepp do you have something horribly inappropriate to set off the twitter brigade?
18:13 iggy and a terrible network diagram drawn using open source software
18:13 fsero_ joined #salt
18:14 bhosmer_ joined #salt
18:14 Gareth Corey: we both took a chance on that talk....fortunately it worked :)
18:14 iggy I've got som slanderous comments about leaders of large open source projects... that ought to do nicely
18:14 Corey TomJepp: "Iggy said something that's offensive to some people when taken in a certain light. Quick, let's destroy his career!"
18:14 TomJepp Corey: sounds about right :)
18:15 murrdoc thats a 5 minute talk
18:15 Corey Gareth: Gambling on my delivering a funny talk is usually a solid bet. :-)
18:15 Ahlee oh man, that template import just did a number on my slidedeck
18:16 Corey murrdoc: Lightning talk, yes. 5 minutes, slides auto-advance. Keep up or get out.
18:17 Gareth Corey: Your delivering wasn't the concern, audience reaction was :)
18:17 Ahlee I've got no jokes :(
18:17 murrdoc slide one
18:17 * Ahlee googles corny salt puns
18:17 murrdoc i am on 0.17.5 and i am happy
18:17 Ahlee 0.17.6!
18:17 Ahlee I incremented my own version!
18:17 murrdoc and with that bombshell of an entry
18:18 murrdoc I WOULD LISTEN TO THE WHOLE TALK
18:18 Ahlee "We've been using salt in production since 0.13.2, all the way up to 0.17.5ish"
18:18 ksalman1 Why does the Packages file in the debian reposiitory only list the latest package? I'd ike to be able to install older versions
18:18 Corey I'm telling the story of the time I broke production.
18:18 murrdoc this week
18:19 iggy ksalman1: that's usually a limitation of the software used to generate the repo (i.e. reprepro)
18:19 ksalman1 http://debian.saltstack.com/debian/dists/wheezy-saltstack-2014-07/main/binary-i386/Packages
18:19 ksalman1 ugh
18:20 iggy yes, they use reprepro... I tried to talk them into using aptly
18:20 ksalman1 =(
18:21 budman joined #salt
18:21 \ask joined #salt
18:22 Corey Ahahahahaha
18:22 Corey Speaking of "things I broke..."
18:22 Corey I was the original Ubuntu packager.
18:24 jngd joined #salt
18:26 murrdoc praise be the joey hh
18:28 jtang joined #salt
18:31 beneggett joined #salt
18:32 rgarcia_ joined #salt
18:33 I3olle joined #salt
18:34 ksalman1 iggy: have you played with mirriring the apt repo? I haven't mirrored a apt repo before but I just tried it with apt-mirror and it also only grabs the latest packages. I guess it depends on the Packages file as well
18:35 iggy well, the old packages generally aren't even going to be there anymore
18:35 intellix joined #salt
18:35 iggy so it's not a matter of getting the package and writing a new Packages file
18:35 iggy you'd have to have the old package files somewhere
18:35 ksalman1 iggy: they are there, no? http://debian.saltstack.com/debian/pool/main/s/salt/
18:35 johanek joined #salt
18:35 iggy but if you start mirroring now, you can keep the old ones around
18:36 ksalman1 salt-minion_0.14.1-1~bpo60+1~dst.1_all.deb
18:36 iggy I don't know how aptly (or apt-mirror or ...) works well enough to know if they will grab everything they see
18:36 iggy 0.14?
18:36 ksalman1 i can see all the older versions there
18:36 iggy give it a shot?
18:36 murrdoc so if u want to install it u can do
18:36 iggy I don't know tbh
18:36 ksalman1 i did lol
18:37 ksalman1 with apt-mirror
18:37 ksalman1 but it only grabbed the latest
18:37 murrdoc apt-get install salt-api=0.14.1-1~bpo60+1~dst.1
18:37 forrest joined #salt
18:37 jaloren joined #salt
18:37 jaloren Hi all....trying to use the python client api. I copied over the example from here verbatim: http://docs.saltstack.com/en/latest/ref/clients/#salt-s-loader-interface
18:37 Ryan_Lane joined #salt
18:38 ksalman1 murrdoc: that does not work because the Packages file does not list the old version
18:38 jaloren However, this leads to fatal import recursion error when i do __salt__ = salt.loader.minion_mods(__opts__)
18:38 jaloren any idea what's going on?
18:38 cbrinley joined #salt
18:38 murrdoc apt-cache show salt-minion
18:38 ksalman1 only lists the latest =)
18:39 iggy ksalman1: download the packages manually and then publish them locally useing aptly
18:39 iggy there's not really any way apt-mirror or aptly are going to know what packages there are outside of the Packages file
18:41 brick__ joined #salt
18:41 agend joined #salt
18:43 Matthews_ joined #salt
18:43 forrest iggy: Aren't you at the conference? What are you doing in here.
18:44 murrdoc helping people
18:45 murrdoc its an affliction
18:45 Matthews_ joined #salt
18:45 iggy I'm only doing the afternoon class today
18:45 iggy about to head out actually
18:45 baweaver joined #salt
18:46 spookah joined #salt
18:51 helderco joined #salt
18:51 jaloren the hang seems to be localized at this function /usr/lib/python2.6/site-packages/salt/loader.py(931)load_modules()
18:51 XenophonF murrdoc: so why listen* instead of requires*?
18:52 __gotcha joined #salt
18:52 murrdoc i am part of a small group of people i think, that like the ordered nature of salt execution
18:52 jaloren and here's where it s eems to just hang:
18:52 jaloren 929                      submodules = [ 930                          getattr(mod, sname) for sname in dir(mod) if 931  ->                        isinstance(getattr(mod, sname), mod.__class__) 932                      ]
18:52 jaloren hmmm submodules...okay
18:53 vectra joined #salt
18:54 numkem Are the videos from the classes and talks be available online in the comming days/weeks?
18:55 forrest numkem: I'm not sure if they will be this year. basepi do you know if the talks are being recorded again this year?
18:55 XenophonF murrdoc: do you mean, like ordering manually or something?
18:55 XenophonF i rely a lot on require/watch dependencies, but i think about them in terms of makefile targets/dependencies
18:55 XenophonF maybe that wouldn't make sense to my colleagues, and ordering states another way would be easier for them to understand
18:55 murrdoc XenophonF:  http://docs.saltstack.com/en/latest/ref/states/ordering.html
18:55 XenophonF they're not generally programmers
18:56 jaloren In /usr/lib/python2.6/site-packages/salt/loader.py(930)load_modules() function, does anyone know what this expression is supposed to do: https://gist.github.com/anonymous/8b4de5e7a09bcdff6858
18:56 jaloren it  seems to be what's causing the recursive loop of doom
18:57 XenophonF murrdoc: thanks, gonna ponder this
18:58 jaloren I might be completely off base here but it really does seem like this code example is causing an infinite recursion loop http://docs.saltstack.com/en/latest/ref/clients/#salt-s-loader-interface
18:59 baweaver joined #salt
19:00 murrdoc XenophonF:  are u at the conf ?
19:00 XenophonF no
19:00 murrdoc ah too bad, Ryan_Lane is presenting about it
19:01 murrdoc at this point i dont understand why confs dont hvae a stream only option
19:01 XenophonF maybe they'll post videos later
19:01 Ryan_Lane they'll be recording the talks
19:01 murrdoc like i ll pay money to be able to attend conferences remotely
19:01 Ryan_Lane guess you can't ask questions that way, though ;)
19:01 murrdoc totes ok with that
19:01 Ryan_Lane sequential ordering is great
19:01 XenophonF why?
19:02 * XenophonF only asks the easy questions in life.
19:02 Ryan_Lane it's way easier to understand what's going on
19:02 ocdmw joined #salt
19:02 Ryan_Lane your code executes in the order you've written it
19:02 robawt speaking of which, props to Scale 13x for getting videos up this year
19:02 Ryan_Lane just like every other language your devs are used to
19:02 murrdoc robawt:  got link
19:02 Ryan_Lane you don't need some massive mental map of what your requisites will do, and adding a new requisite won't change the entire map
19:03 XenophonF so lower cognitive load
19:03 XenophonF that's a pretty good reason
19:03 Ryan_Lane and that means more reliable runs
19:03 Ryan_Lane especially for first run vs additional runs
19:04 Ryan_Lane we're getting close to the point where we may switch to docker, so it's less of an issue (since we won't have any requisites at all), but even in docker it's still really useful
19:04 Ryan_Lane since we create our docker images with salt and no docker files
19:04 Ryan_Lane it's also way less code
19:05 robawt murrdoc: https://www.youtube.com/user/socallinuxexpo/videos
19:06 murrdoc robawt:  u the person (cos everyone is a girl on the internet)
19:06 zwi joined #salt
19:06 Ryan_Lane we /do/ use a bit of out of order code, with using order: last and such
19:06 XenophonF that, i don't do
19:07 robawt murrdoc: i'm really a dog :|
19:07 lifelearner joined #salt
19:07 lifelearner Hi, good day!
19:08 hal58th joined #salt
19:08 hal58th joined #salt
19:08 ecdhe hi lifelearner!
19:08 murrdoc u dawg
19:08 lifelearner I'd like to start my day with this Q:  Does Salt use both pull & push model? Or, mostly pull model?
19:09 lifelearner HI 3DEH3
19:09 lifelearner oops... Hi ecdhe
19:09 XenophonF Ryan_Lane: i personally more comfortable with explicit dependencies
19:09 XenophonF the extra lines of code don't bother me
19:09 Ryan_Lane well, the important thing when not using dependencies is to use the global failhard
19:09 Ryan_Lane so that a single failure causes a failure of the entire highstate run
19:10 XenophonF but i am also careful to marshal all of the dependencies in obvious states
19:10 Ryan_Lane then you never need to worry about explicit dependencies, because if anything fails it stops immediately
19:10 Ryan_Lane XenophonF: yep. that's true
19:10 XenophonF so for example, if i have an apache config, eventually, the service: apache state ends up requiring/watching them all
19:10 Ryan_Lane the way my infrastructure is organized makes that really easy.
19:10 Ryan_Lane XenophonF: meh. use listen/listen_in for those
19:11 Ryan_Lane it's the same as watch, except that it doesn't reorder
19:11 Ryan_Lane it triggers a state, but that state will happen after all other states have run
19:11 Ryan_Lane all of your triggers happen at the end of the run if you only use listen
19:12 Ryan_Lane it's really nice because it means you reconfig everything, then all at once you change the running state
19:12 Ryan_Lane I still use watches if I need to immediately trigger something
19:12 hal58th1 joined #salt
19:12 ecdhe lifelearner, salt minions create a secure connection back to the master; then the master controls them through those connections.
19:12 XenophonF so if using with services, all of the service restarts would happen at the end of a run instead of somewhere in the middle
19:12 XenophonF (just to come up with one example)
19:13 Ryan_Lane XenophonF: yep
19:14 Ryan_Lane I actually go a step further and ensure nothing service related restarts during a salt run, but do so in a post-deploy (through a single salt state)
19:14 hal58th1 lifelearner, minions use zeromq to subscribe to the master. When master wants to run a command on the minions, he will publish a topic.
19:14 lifelearner So, it's both pull & push, right?
19:14 Ryan_Lane that way if a deployment fails, I can change the code and try again and my services are still running their old state
19:14 hal58th1 Minions will then read the topic and decide if they need to run or dismiss the job.
19:15 Ryan_Lane XenophonF: I know my use is a bit extreme, though :)
19:15 lifelearner When I ran "yum install salt-minion", I don't remember seeing it installed zeromq, though. Should I install it on every minion for anything better?
19:15 XenophonF Ryan_Lane: how do you implement the post-deploy?
19:15 hal58th1 More of a push model. Minions can also request service manually.
19:16 Ryan_Lane salt-call state.sls myservice.post_deploy
19:16 Ryan_Lane (I also do masterless)
19:16 XenophonF ah
19:16 Ryan_Lane so, myservice.post_deploy isn't included in the highstate, but is a single sls file that can handle restarting services
19:16 hal58th1 lifelearner it probably just installed the library used for zeromq on the mininon. Main package is on master. I'm sure yum installed all dependencies it needed.
19:17 Ryan_Lane I restart services every single deployment, so no need for requisites for those
19:17 Ryan_Lane for system-level services I use listen or watch
19:17 Ryan_Lane I don't care if those restart in a salt run
19:18 XenophonF Ryan_Lane: understood
19:18 johanek joined #salt
19:19 gladiatr joined #salt
19:19 lifelearner OK, thanks for the answers.
19:20 Ryan_Lane XenophonF: anyway, the biggest reason is that it's easier for devs to grok, and in my case our devs maintain their own config management and orchestration
19:20 fkobzik joined #salt
19:21 dyasny joined #salt
19:21 lifelearner For community editions, are all the CM software free? Even Chef and Ansible for unlimited # of nodes?
19:21 Ryan_Lane lifelearner: all of the main config management platforms are free/open source for community editions
19:22 lifelearner OK, somehow I couldn't find community edition for Ansible from their website.
19:22 Ryan_Lane it may not be called community edition :)
19:22 ckao joined #salt
19:23 lifelearner I'll try looking for it.
19:25 stylica joined #salt
19:28 XenophonF Ryan_Lane: do none of your devs use Makefiles? :)
19:28 stylica joined #salt
19:28 Ryan_Lane XenophonF: we use makefiles
19:29 Ryan_Lane the make files manage our orchestration, though
19:29 Ryan_Lane and test and ci
19:29 XenophonF ha
19:29 Ryan_Lane so, building artifacts, calling salt-call for orchestration states, running tests, etc.
19:29 XenophonF i conceptualize salt states more like makefile targets than lines of code
19:30 Ryan_Lane well, make runs sequentially too ;)
19:30 sfxandy joined #salt
19:37 pviktori joined #salt
19:37 ocdmw joined #salt
19:42 pviktori_ joined #salt
19:50 Ryan_Lane -_- https://github.com/saltstack/salt/issues/21281
19:50 wincyj joined #salt
19:52 baweaver joined #salt
19:53 eamo joined #salt
19:54 linjan joined #salt
19:55 forrest Ryan_Lane: so you're saying bower is shit?
19:56 Ryan_Lane forrest: no, it's the onlyif that's the problem
19:56 forrest I know what you meant, I'm just joking since it's bower
19:56 Ryan_Lane it propagates its return code through
19:56 Ryan_Lane :)
19:56 Ryan_Lane I only kind of hate bower
19:56 Ryan_Lane I really, really hate grunt
19:56 forrest Everyone does
19:56 murrdoc poor bower
19:57 Ryan_Lane and I hate NPM even more
19:57 forrest yep
19:57 forrest That whole ecosystem
19:57 Ryan_Lane NPM is a massive piece of shti
19:57 forrest turrible
19:58 murrdoc is it worse then bundler
19:59 aurynn it's younger, certainly
19:59 Ryan_Lane it requires that everything exist in the same directory as the npm package file
19:59 Ryan_Lane that's my biggest gripe
20:00 stylica joined #salt
20:00 stylica joined #salt
20:00 signull what about the NPM -g global flag?
20:02 helderco joined #salt
20:02 otter768 joined #salt
20:07 nich0s joined #salt
20:07 agend joined #salt
20:09 MTecknology Turns out, I've been heavily abusing the reactor system and should have been learning about orchestrate.
20:09 pacopablo nothing wrong with abusing systems
20:10 pacopablo at least until the take over
20:10 pacopablo s/the/they
20:10 nich0s joined #salt
20:11 MTecknology not true
20:12 MTecknology apparently when things process in the reactor system, they're blocking. By using the reactor to kick off state.orchestrate, I'd be eliminating blocking and making things prettier.
20:13 Ryan_Lane MTecknology: at minimum you should call some runner from the reactor
20:13 Ryan_Lane it's in the master thread, which is the biggest issue
20:14 Ryan_Lane by calling a runner it forks
20:14 MTecknology I'll definitely be making changes when I get back home...
20:16 SheetiS A lot of my orchestration/reactor stuff was written for 2014.1 and I have not updated it for later versions
20:16 hackel joined #salt
20:16 SheetiS there really wasn't a reasonable way in 2014.1 from the reactor to push pillar data to the runner to be able to have targets and whatnot be variable.
20:17 SheetiS Too much hack-fu in my reactor for that reason
20:17 Kel_ joined #salt
20:17 MTecknology side note... holy crap it's beautiful out here. Even the grey over the mountain caps is just lovely.
20:17 SheetiS I love how the mountains look in the distance from the city in almost all directions
20:17 nich0s Mtecknology: +1 It's brilliant.
20:21 MTecknology I'm confused. I'm pretty sure I'm in the room for the advanced concepts, but this seems waaaaaay too small
20:21 MTecknology ten chairs doesn't seem right
20:21 aurynn advanced stuff is advanced
20:22 jaloren anyone know why sync_modules doesn't test the import of custom modules BEFORE syncing them?
20:24 MTecknology ah... I can't read... duhrp
20:24 logix812 is there preference when using git? pygit2/libgit2, GitPython, or Dulwich
20:25 iggy jaloren: because they get imported on the minion, so testing import on the master would be pointless
20:26 zer0def ok, so i've got a curveball: using salt-ssh on a debian minion, i'm installing python-apt, so that i could get grains['oscodename'] during that same runtime - possible?
20:26 iggy logix812: GitPython is older (and probably better documented) pygit has more functionality
20:26 ajw0100 joined #salt
20:26 logix812 iggy: but as far as Salt is concerned
20:26 iggy zer0def: installing python-apt how?
20:26 jaloren iggy: it would catch obvious syntactical problems that you prevent python interpret from parsing the file. That would fail anywhyere.
20:26 iggy logix812: that was in reference to salt
20:27 logix812 ah... but there's isn't like a movement in the dev of salt: "hey we should only support GitPython or pygit2"
20:27 iggy jaloren: also, the master has limited grains/modules imported
20:27 zer0def iggy: with a pkg.latest state that also has reload_grains set to true
20:27 iggy logix812: they will both be supported for a while
20:27 logix812 bam!
20:27 logix812 iggy thanks!
20:28 zer0def i know that the docu clearly states, that it oughta be preinstalled.
20:28 iggy zer0def: itym reload_modules: True
20:28 jaloren iggy: oh so the import may fail on the master while succeeding on minion. I see. Well, its just driving me crazy when the sync happens, the custom module is for whatever reason 'bad' and then everything just hangs
20:28 hal58th joined #salt
20:28 zer0def iggy: reload_grains does the same thing.
20:28 jaloren I then have to pdsh and remove the cache and restart the miknion
20:29 hal58th1 joined #salt
20:29 zer0def iggy, just so we're clear, the latter part of this comment is all i've tried already: https://github.com/saltstack/salt/issues/21223#issuecomment-76896210
20:30 iggy zer0def: https://github.com/saltstack/salt/issues/15125 ?
20:30 bash124512 joined #salt
20:30 I3olle joined #salt
20:32 stylica joined #salt
20:32 zer0def iggy: it does? check salt/state.py:757, the definition of check_refresh
20:32 zer0def i'm not sure if it looks the same in 2014.07.2
20:33 beneggett joined #salt
20:34 zer0def oh, never-ffin' mind
20:34 zer0def check_refresh doesn't do refresh_grains in check_refresh()
20:34 zer0def welp, can't even construct a coherent sentence :)
20:34 dyasny joined #salt
20:35 cingeyedog joined #salt
20:37 zer0def iggy: ok, so any other ideas as to how i could actually reload grains in my curveball scenario?
20:37 MTecknology whew.. slow internet
20:40 hal58th1 Yeap. Just said they are experiencing conflicts with next door wifi.
20:40 mangas joined #salt
20:40 jaloren joined #salt
20:41 jaloren i have a question about cross calling functions between two execution modules
20:41 nich0s joined #salt
20:41 jaloren this specifically has to do with the service execution module
20:41 jaloren in execution module 1, i have a function that calls the service state execution module directly
20:41 jaloren in execution module 2, i call the custom function in execution module 2
20:42 jaloren when i do that, it fails with the following error
20:42 jaloren KeyError: ('ps',)
20:42 iggy yeah, I switched to tethering on my phone
20:42 jaloren and i believe THAT is happening because the grains dict is not getting populated
20:42 jaloren I just don't understand why that's occurring
20:42 murrdoc are u doing grains[ps]
20:42 murrdoc or __salt__[grains.get](ps)
20:42 jaloren murrdoc: the service module is doing that internall
20:43 murrdoc o_0
20:43 jaloren murrdoc: i am calling the service.func execution module which is internally doing the ps
20:43 murrdoc nice
20:43 jaloren http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.rh_service.html#module-salt.modules.rh_service
20:43 murrdoc do u have paste of the error, and maybe small function snippets of what u are doing
20:43 jaloren sure i can do that
20:44 murrdoc paste it into the chat for much hate
20:44 murrdoc or use like gist or refheap or somethign
20:44 jaloren i will do a gist thank you very much :)
20:44 aurynn such hatepaste
20:45 baweaver joined #salt
20:45 MTecknology hal58th1: should we go unplug them? :)
20:46 murrdoc MTecknology:  u dont have a mifi device ?
20:46 murrdoc are u a sysadmin
20:46 murrdoc on call
20:46 murrdoc without a personal mobility device
20:46 murrdoc *gasp*
20:46 hal58th1 Mtecknology easier to just find their breakers
20:46 MTecknology :P  I've asked, but work never provides one
20:46 jaloren murrdoc: here you go https://gist.github.com/anonymous/66949c9bbe4eb0891399
20:46 jaloren Note i can reproduce this even when the two fucntions are in the custom execution module
20:47 jaloren same
20:47 hal58th1 I would never ask for a mifi device because then they would think that I can always be on call.
20:47 Ahrotahntee is watch_in deprecated?
20:48 murrdoc u only have the one file
20:48 * MTecknology is always on call... usually do most work via vocal instructions
20:48 babilen Ahrotahntee: Why do you think so?
20:48 jaloren i actually have two...but i can reproduce it in a single execution module where one function calls the other
20:48 murrdoc got it
20:48 Ahrotahntee 'warnings': ["'__reqs__' is an invalid keyword argument for 'service.mod_watch'.
20:48 Ahrotahntee goes away when I take out watch_in
20:49 hal58th1 post your sls file
20:49 babilen Ahrotahntee: Out of what? watch_in has not been deprecated
20:49 thayne__ joined #salt
20:49 jonher937 joined #salt
20:49 iggy if you can see "FBI Monitoring Post 18", I'll tell you the password
20:49 murrdoc that is weird jaloren
20:49 viq joined #salt
20:49 Ahrotahntee https://gist.github.com/Ahrotahntee/bc915facf5e89737ea59 nginx.load_balancer
20:50 Ahrotahntee https://gist.github.com/Ahrotahntee/48c04ff76ed80dbd011c nginx.base
20:50 jaloren murrdoc: i actually attached pdb and hunted through the actual service execution module. Its definitely trying to do a dict lookup on grains but at that point grains dict is empty. So that explains the key error. What it doesn't explain is why grains would be empty
20:51 jaloren in other words this: __grains__['ps']
20:51 murrdoc on your local machine
20:51 murrdoc if u change that to __salt__[grains.get]('ps')
20:51 murrdoc does it work
20:53 che-arne joined #salt
20:53 hal58th1 Ahrotahntee not sure. looks fine.
20:53 hal58th1 look up on github issues for that error.
20:54 jaloren murrdoc: change in what module? The actual built in service execution module?
20:54 * Ahrotahntee trots off to the issue log
20:55 murrdoc yeah
20:55 murrdoc it will be in the pip directory on your minion server
20:55 stylica joined #salt
20:55 hal58th1 First reply on google. https://github.com/saltstack/salt/issues/16709
20:56 hal58th1 Ahrontahntee here
20:56 babilen Ahrotahntee: I am using watch_in in a bazillion places and haven't seen the error/message you mentioned. What are you doing to get it?
20:57 murrdoc watch != watch_in
20:58 babilen murrdoc: Ahrotahntee was quite specifically referring to watch_in earlier. I assumed (so far, but I start to doubt that) it was in reference to https://gist.github.com/Ahrotahntee/bc915facf5e89737ea59#file-gistfile1-txt-L23
20:59 murrdoc my bad
20:59 thayne__ joined #salt
21:00 babilen No problem, it might actually be about the watch statements :)
21:00 babilen Either way that bug looks related, but for that we would have to see the managed fils
21:00 babilen *files
21:00 * murrdoc agrees
21:00 thayne_ joined #salt
21:01 iggy hah, just spotted MTecknology
21:02 murrdoc is steve linn up in here
21:02 murrdoc paging linn, steve linn
21:02 babilen let the stalking begin!
21:02 murrdoc and or Gareth Greenaway
21:02 lothiraldan joined #salt
21:02 murrdoc i bring u high fives from our common friend
21:03 sdm24 joined #salt
21:04 sdm24 Hello  everyone. I have a (hopefully) easy question. Where can I find a list that contains all of the available mine_functions, such as network.ip_addrs? I want to know exactly what data I can and cannot get to the mine
21:04 iggy sdm24: any module
21:04 sdm24 Oh really?
21:04 thayne joined #salt
21:05 murrdoc ya rly
21:05 murrdoc and it gets better
21:05 iggy but wait!
21:05 sdm24 I guess that explains why I can't find any specific list then. thank you very much!
21:05 murrdoc for the cost of one terribly confusing coding session
21:05 sdm24 no wai!
21:05 murrdoc u can add more
21:05 murrdoc WRITE YO OWN
21:05 murrdoc then use logging
21:05 murrdoc and forget where the logs go
21:05 murrdoc BUT First
21:06 murrdoc we can send u a ebook with all this knowledge
21:06 murrdoc in one shipment
21:06 murrdoc for NIEN.99$
21:06 murrdoc ok going offline to prep for flight to salt lake city
21:07 murrdoc where da white women AT !
21:07 sdm24 I know this is very very bad practice, but could I potentially include "mine_functions: *" at the end of each minion config file?
21:07 iggy see you later
21:07 hal58th1 where da mormons are at
21:07 sdm24 have a safe flight
21:07 babilen wtf murrdoc?
21:07 zer0def ok, so apparently i'm lacking msgpack when trying to call sync_grains from state.
21:08 zer0def further down the rabbit hole!
21:09 iggy sdm24: I don't think mine_functions supports globx
21:09 iggy *globs
21:09 sdm24 oh ok
21:09 sdm24 I just want access to EVERYTHING
21:09 iggy no you don't
21:10 iggy you _Really_ _realy_ don't
21:10 sdm24 :(
21:10 iggy that would be a ton of runtime and data
21:10 sdm24 gotcha
21:11 baweaver joined #salt
21:11 beneggett joined #salt
21:12 sdm24 where is the cache data stored from the mine, on a master running debian 7? Also, would it be possible to manually add/modify that data and then call it with mine.get?
21:14 iggy to what end?
21:14 stylica joined #salt
21:16 ocdmw joined #salt
21:16 sdm24 I guess I'll start from the top. I have 3 different test minons, each with their own IPs and hostnames. I also have a seperate list of different IPs and hostnames. I want to give each of the minions a new IP and corresponding hostname from the list
21:17 stylica joined #salt
21:18 sdm24 The end result will be that when a new VM is created from a template (that will have salt minion and the config state and template files), and then can change one variable  in the state (like the hostname from the mine) to the wanted value, and salt will find the corresponding IP and give it to the new minion
21:19 iggy this doesn't sound like a job for mine
21:19 iggy maybe pillar/ext_pillar?
21:20 sdm24 with pillar, wouldn't you need to connect the minion to the master first to get the pillar values?
21:20 thedodd joined #salt
21:21 sdm24 cause the issue I have with that is that the minion will connect to the master with the same hostname as the template, and then when the hostname changes, the master won't auto accept the new one and delete the old one
21:25 smcquay joined #salt
21:26 bantone I just updated my version of salt and its minions to 2014.7.1 now I'm getting this error in debug
21:26 bantone Attempt to authenticate with the salt master failed
21:26 bantone where are the error logs for salt
21:27 aurynn /var/logs/salt/[master|minion]
21:27 iggy bantone: stop master, check to make sure there aren't any salt-master processes running
21:27 aurynn (On debian-like systems)
21:28 SpX joined #salt
21:30 gladiatr joined #salt
21:31 aparsons joined #salt
21:31 SpX joined #salt
21:32 bantone joined #salt
21:33 XenophonF left #salt
21:35 bantone this is what i'm seeing in regards to this error
21:35 bantone https://pastee.org/kp2fb
21:35 bantone not sure why its failing
21:36 Wylie_ joined #salt
21:36 bantone and the minion keys are accepted by the master
21:37 iggy did you do what I said?
21:38 giantlock joined #salt
21:38 bantone i checked that file
21:38 bantone no i got disconnected
21:38 bantone tell me again
21:39 bantone i checked the /var/log/salt minion and master files
21:39 iggy ENOPARSE
21:40 iggy bantone: stop master, check to make sure there aren't any salt-master processes running
21:41 bantone k
21:41 FYI joined #salt
21:42 bantone nope, nothing out of the ordinary
21:42 iggy that's not specific
21:42 iggy what's ordinary?
21:42 overyander can i upgrade the server version before I upgrade the minions?
21:43 iggy you should
21:43 bantone there's no other salt master processes running
21:43 mosen joined #salt
21:44 iggy okay, well, that's one way you see that error message
21:44 FYI Hello i am trying to highstate my minion and i am getting this error https://www.refheap.com/9a898af2bd7a037c602edc0e9
21:44 Tecnico joined #salt
21:44 iggy FYI: paste your top file
21:44 beneggett joined #salt
21:45 sdm24 FYI, check the line above that error, it might be missing a : or another character
21:45 iggy and you shouldn't use unicode in your salt top/state/pillar files
21:46 aurynn the only reasonable approach is to use emoji
21:47 thayne joined #salt
21:47 markmarine joined #salt
21:47 FYI HEre https://www.refheap.com/a1f2be9b92b4d3bccd4bf5706
21:48 markmarine Does anyone know if you can install Salt in a box BEFORE you create an AMI out of it? I'd like to have salt pre-installed, but I don't want all the minions to have the same leys
21:48 iggy sc1login should be indented
21:49 jaloren markmarine: why not bootstrap via cloud init when the vm launches from the ami?
21:49 markmarine It's the time involved
21:49 markmarine I'm working on a load based autoscale group, and currently bootstrapping takes about 2-3 minutes
21:49 iggy delete the minion_id file and they keys
21:49 sdm24 FYI: I think you have an extra space on line 21
21:50 sdm24 or actually, you are missing one or two on line 1
21:50 FYI got it.
21:50 markmarine I need the boxes up as soon as possible, because then they need all their web data, and our traffic is really spikey... we have little then get slammed and my ASG isn't reacting fast enough to keep my latency low enough
21:51 markmarine iggy: Thank you
21:51 FYI thank you.
21:51 JDiPierro joined #salt
21:51 iggy I'm actually retaining a fair amount of this talk too
21:51 ocdmw joined #salt
21:52 mohae markmarine: packer might help here
21:53 garthk joined #salt
21:55 schlueter joined #salt
21:56 Andre-B joined #salt
21:58 peters-tx joined #salt
21:58 linjan_ joined #salt
22:02 jaloren markmarine: will the hostname of the saltmaster vary or will that always be constant?
22:02 gibmachine depends on your config doesn't it?
22:03 otter768 joined #salt
22:04 denys joined #salt
22:04 bantone iggy: i got it working now
22:04 bantone i made new keys though
22:05 loggyer joined #salt
22:06 nitti_ joined #salt
22:06 markmarine The hostname of my salt masters (there are three) are always the same
22:08 loggyer guys how can i restart a service if it fails due to dependency on some service..
22:08 loggyer not sure if thats possible..watch allows you to restart a service based on some changes in the config file
22:11 carlgeorge left #salt
22:12 nich0s joined #salt
22:14 LtLefse loggyer: so you have a service dependent on another service?
22:15 thayne joined #salt
22:15 loggyer LtLefse, so the case is, the service is not dependent when starting it....i want it to restart if the original service fails
22:16 loggyer so i guess it should work with services being dependent on another service..like you asked
22:16 loggyer LtLefse: does that make sense ?
22:17 beneggett joined #salt
22:17 LtLefse ah, so if service1 fails to start, you want Salt to start service2
22:18 thayne_ joined #salt
22:19 LtLefse I wouldn't know how to do that, I'm afraid
22:19 jerematic joined #salt
22:20 loggyer LtLefse: if service 1 stops for some reason, service 2 also stops. Now, for starting service2 again service 1 is not required. Is there a way i can start service2 from salt using requisite or other keyword
22:21 * MTecknology highjacks iggy's net
22:21 MTecknology How nice of you to set your password to my name ;)
22:22 jaloren markmarine: okay then on the ami 1. install salt minion 2. modify the minion conf file to point to the three salt masters 3. then do this http://superuser.com/questions/695917/how-to-make-salt-minion-generate-new-keys
22:22 jaloren presumably when the VM launches from AMI, you'll have to accept the key on the master
22:23 LtLefse loggyer: onfail looks promising:
22:23 LtLefse http://docs.saltstack.com/en/latest/ref/states/requisites.html#onfail
22:23 pdayton joined #salt
22:24 loggyer LtLefse: already looking at it.. thanks :)
22:25 v0rtex I am having an issue when I run commands from my main master on minions under a syndic-master. I get multiple returns for some reason like this: http://hastebin.com/utucevunud.sls
22:25 v0rtex anyone know why this is?
22:27 mangas joined #salt
22:28 dimeshake v0rtex: is that minion connected to multiple syndics?
22:29 dimeshake i'd check netstat/ ss -tnp to see which control/message ports the minion is connected to
22:29 v0rtex nope
22:29 v0rtex I'll check that
22:35 v0rtex dimeshake: I am seeing that the minion is connected only to it's own syndic's IP on ports 4505 and 4506 as expected
22:35 baweaver joined #salt
22:38 N-Mi joined #salt
22:38 N-Mi joined #salt
22:42 dimeshake v0rtex: that's good, but doesn't help identify the problem :D
22:42 dimeshake i'd suggest starting minion in foreground with -l debug
22:42 dimeshake and watching its output to a call from syndic master
22:43 v0rtex dimeshake: I'll try that
22:43 markmarine jaloren: ah thank you.
22:44 smcquay joined #salt
22:45 linjan_ joined #salt
22:45 linjan joined #salt
22:47 xentest1 joined #salt
22:48 xentest1 left #salt
22:48 hal58th joined #salt
22:48 josephleon joined #salt
22:50 bash1245_ joined #salt
22:50 baweaver joined #salt
22:56 schlueter1 joined #salt
22:56 ryuhei joined #salt
22:57 jaloren in custom execution module, i am using this function  __salt__['service.status'](name)
22:57 jaloren when i do, i get this error https://gist.github.com/anonymous/0c88f484d2bc3e1405ad
22:57 jaloren the cause of this error is that grains dict is empty....problem is i don't understand why grains dict is not getting populated
22:58 ryuhei hi all,  I use digital ocean to create droplets. how do I deal with minions that failed to install salt-minion or ssh-key?
23:01 dimeshake jaloren: is the grain dict set somewhere else?
23:02 dimeshake hm what distro are you on?
23:02 jaloren dimeshake: well that's the issue. This is a built-in execution module. I am not familiar with when or where its setting it. Though it certainly looks like its NOT setting it when it should.
23:02 dimeshake the 'ps' grain should always be present. what OS?
23:03 jaloren RedHat 6.5
23:03 jaloren salt version: salt 2014.7.1 (Helium)
23:03 jaloren I am trying t call this function from custom execution module http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.rh_service.html#salt.modules.rh_service.status
23:03 dimeshake salt 'minion' grains.get ps
23:04 ocdmw joined #salt
23:04 jaloren result:     ps -efH
23:04 dimeshake so grain exists as expected
23:04 jaloren see the thing is if i call the function from the salt command line it then works as expected
23:04 jaloren yes
23:04 ocdmw joined #salt
23:05 dimeshake i think you're hitting a bug of some sort.
23:05 jaloren the grain dict is ONLY empty when i call it from custom execution module
23:05 jaloren yes that is my thought as well
23:05 jaloren i'll open up an issue
23:05 dimeshake how are you calling it when it happens? the state/function would be useful
23:05 dimeshake i think it's issue-worthy, yeah
23:06 jaloren this is literally the entire module: https://gist.github.com/anonymous/18f7839c400bd5379198
23:06 jaloren i have a much complex one but i decided to write a much simpler module to see if i could reproduce the problem....and i can
23:06 yomilk joined #salt
23:10 wincyj hello
23:10 wincyj http://pastebin.com/s4F3WTvZ
23:10 wincyj im back with pillar
23:10 wincyj it doesnt replace pillar vars wtih their values
23:10 wincyj how do i do that?
23:10 wincyj in php?
23:12 beneggett joined #salt
23:12 iggy wincyj: need more context
23:12 wincyj well
23:13 iggy the state that installs that file? the actual pillar file? etc?
23:13 wincyj http://pastebin.com/gs4AThpF
23:13 wincyj this is the part of state
23:13 wincyj i got vars in pillar named as in php code
23:13 wincyj it doesnt work
23:13 iggy - template: jinjja
23:13 wincyj ye already added this
23:13 wincyj but reviced that its not in dict
23:13 wincyj is it wrong path provided or what?
23:14 iggy what's the actual error?
23:14 wincyj hold on
23:14 KyleG joined #salt
23:14 KyleG joined #salt
23:15 iggy and use gist or something that allows multiple files per paste... it's a bit annoying opening up 14 pastebin.com tabs (with all it's shitty ads)
23:15 wincyj http://pastebin.com/bJ8mmPsq
23:16 wincyj gist?
23:16 wincyj :>
23:16 iggy gist.github.com
23:16 iggy it's a fancier pastebin
23:16 Aikar you should put the " " around it too
23:16 wincyj ah nice :)
23:16 dimeshake jaloren: wow
23:16 wincyj Aikar: around what?
23:16 dimeshake iggy: what do you make of jaloren's issue?
23:16 Aikar your pillar tags
23:16 logix812 joined #salt
23:16 Aikar so its = "{{ pillar['x'] }}"
23:17 Aikar but ultimately, id recommend setting up an external config file at least an ini file
23:17 Aikar then manage the ini file with salt
23:17 Aikar its really scary to go modifying source code with salt o.o
23:17 iggy on the minion run "salt-call pillar.get mysql_glpi_user"
23:17 logix812 when using external_auth/pam (using salt-api) what is the proper perm for local and local_async?  I have @wheel and @runner just fine and those work
23:17 wincyj iggy: i use salt-ssh
23:17 jaloren dimeshake: what did i do ? :)
23:17 wincyj Aikar: my boss told me to attach vars in taht file :)
23:17 dimeshake nothing wrong that i can find :)
23:17 wincyj so i... need to do this :d
23:17 iggy wincyj: okay, well, there's got to be an equivalent, figure it out
23:18 dimeshake but i'm no python dude, looks right to me though
23:18 Aikar then impress your boss when you do it a better way :)
23:18 wincyj Aikar: i already did
23:18 wincyj and he wasnt amused :D
23:18 Aikar tell him his recommendation is extremely bad practice and was unable to work
23:18 wincyj Aikar: this is config file
23:19 wincyj its not a deployment or something
23:19 Aikar .... class DB better not be a "Config file"
23:19 jaloren issue opened https://github.com/saltstack/salt/issues/21284
23:19 jaloren booyah
23:19 wincyj config as understood as vars of pass,login,dbname etc
23:19 jaloren_ joined #salt
23:20 jaloren_ dimeshake: sorry irc dropped me
23:20 jaloren_ issue opened https://github.com/saltstack/salt/issues/21284
23:20 Aikar right, but .php is a source code file, not a configuration file. sure put static config in a php file, but not something you expect to manage through salt o.o
23:20 Aikar we got that message ja
23:20 Aikar jaloren: *
23:20 jaloren_ okay
23:20 jaloren_ irc seems less stable these days
23:20 jaloren_ ah well
23:21 Aikar jaloren: as a senior php dev - the appropriate solution is to make an ini file that holds your db credentials, that salt manages with http://docs.saltstack.com/en/latest/ref/states/all/salt.states.ini_manage.html#salt.states.ini_manage.options_present
23:22 jaloren_ Aikar: i think that's for a differnet person.
23:22 Aikar err yeah
23:22 Aikar wincyj: ^
23:22 jaloren_ Aikar: i wouldn't touch php with a 10 foot pole
23:22 jaloren_ :)
23:22 Aikar then wincyj $config = parse_ini_file("path"); and load config from $config
23:22 iggy jaloren_: why did you overwrite all the dunder dicts?
23:23 wincyj hm
23:23 wincyj seems like its getting much more complicated
23:23 jaloren_ iggy: http://docs.saltstack.com/en/latest/ref/clients/#salt-s-loader-interface
23:23 wincyj than it should be
23:23 jaloren_ iggy: following that example
23:23 Aikar no, your about to build it really complicated
23:24 wincyj ye
23:24 Aikar your introducing risk of failure just because someone generated a secure password
23:24 wincyj thats what i meant
23:24 wincyj i will stuck with static file
23:24 wincyj and edit those php vars manually for each installation
23:24 wincyj much better
23:24 Aikar I'm saying your static file is introducing incredible risk to your app
23:24 Aikar its not
23:24 iggy jaloren_: is this a custom script or a module (i.e. /srv/salt/_modules)?
23:24 Aikar its extremely risky
23:24 wincyj Aikar: its not
23:24 iggy your bug seeemed to imply module
23:25 jaloren_ iggy: module
23:25 wincyj idk why you saying that
23:25 Aikar wincyj: experience :/
23:25 wincyj since its just replacement
23:25 Aikar its a dangerous replacement
23:25 wincyj why?
23:25 wincyj if everything is confed well?
23:25 Aikar set your password to "; exit
23:25 Aikar now your app is dead
23:25 wincyj dude
23:25 wincyj its for admin usage
23:25 vschum1 gist is pretty neat
23:25 wincyj to install glpi oon machines
23:25 vschum1 ➜  ~  echo 'testing gist ruby gem from zsh command line' | gist -a -c
23:25 vschum1 https://gist.github.com/f27a1af6620490607324
23:25 iggy jaloren_: you shouldn't have to do that in modules, only in custom scripts
23:26 vschum1 much better than pastebin :D
23:26 Aikar yep vschum1 :) I use to use pastebinit to go to paste.ubuntu.com but they are strict on file types
23:26 Thiggy joined #salt
23:26 jaloren_ iggy: ah...hmm let me remove it and see if it works
23:26 Aikar wincyj: ok do what you need, but my suggestion only takes 10 minutes to implement
23:26 Aikar or less really
23:27 jaloren_ iggy: that would be it....well then let me go close that issue. how embarrassing
23:27 wincyj Aikar: previous one with link?
23:27 wincyj maybe its better but more complicated
23:28 wincyj and for that simple stuff i dont need it since it will be used by about 4 ppl which i can instruct
23:28 wincyj but thx for your commitment i apprepriate it :)
23:28 vschum1 Aikar, yes, but can you then git clone the resulting pastebin, modify it and push to it?
23:28 Aikar vschum1: I'm saying I prefer gist too :P
23:28 vschum1 hehe
23:29 vschum1 i knew it existed
23:29 vschum1 but i just took the 5 min to discover how to _use_ it
23:29 logix812 here is how my external_auth is setup, and 2 commands one fails: (local client) and the runner client works w/o issue: https://gist.github.com/aventurella/ef09265402db9d3010d3
23:31 spookah joined #salt
23:31 nich0s Beacons: They give you wings.
23:32 * spookah opens a can of redbull
23:32 * nich0s event fires, state runs.
23:33 Aikar wincyj: 3 mins: https://gist.github.com/aikar/a5035a2cfac8463aadc3
23:34 Aikar ignore whitespace issue... writing yaml and php in a javascript file was quite awkward
23:35 tkharju joined #salt
23:37 kermit joined #salt
23:40 ndrei joined #salt
23:40 hybridpollo joined #salt
23:45 stevednd does anything special need to be done to mount a fuse based fs with the mount state?
23:46 ajw0100 joined #salt
23:48 zwi joined #salt
23:48 Ryan_Lane joined #salt
23:51 thayne_ joined #salt
23:54 slappy joined #salt
23:56 slappy hi everyone
23:57 josephleon joined #salt
23:58 slappy anyone here to chat?
23:58 shaggy_surfer joined #salt
23:58 jaloren_ slappy: if you have a question, just ask. If someone knows the answer, they'll let you know
23:59 iggy stevednd: shouldnt be (assuming you can mount that manually on said minion)
23:59 shaggy_surfer joined #salt

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