Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2014-04-15

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

All times shown according to UTC.

Time Nick Message
00:02 Gareth xDamox: invert them?
00:02 ghanima whiteinge: are you still there
00:03 manfred Gareth: the ! in his rule
00:03 Gareth xDamox: so if the source is not 127.0.0.1 go the following?
00:03 Gareth manfred: right.  clarifying :)
00:03 manfred yar
00:03 whiteinge ghanima: yeah, still here
00:04 Gareth xDamox: currently it might not be possible to do that.
00:04 freenod joined #salt
00:05 ghanima whiteinge: sorry just wondering if you were aware of this issue https://github.com/saltstack/salt/issues/10275
00:06 whiteinge somehow the docs site dns got configured to point at a single server instead of the load balancer, and the second web server got horribly out of date.
00:06 Gareth manfred: If you put an issue in, I can look into adding that ability though.
00:06 whiteinge can anyone recommend any software to help keep multiple servers in an identical state?
00:06 Gareth er
00:06 Gareth s/manfred/xDamox/
00:06 whiteinge ghanima: i'm not familliar with that one
00:07 ghanima whiteinge: I presume you are a chanel reg... just curious any recommendations on who I can asks?
00:08 whiteinge ghanima: oh, i skimmed the ticket. yeah, i think this is talking about th eproblem you and i ran into the other day
00:10 whiteinge no, i take that back. looks like a separate problem :-/
00:10 whiteinge ghanima: are you seeing that same KeyError?
00:10 ghanima whiteinge: So its two folded I think... My problem was I didn't have json installed properly
00:11 ghanima ghanima: I did fix that on my end and the puppet facter module did execute
00:11 ghanima however when running the facter.py from salt-contrib still didn't set the grains properly
00:11 whiteinge ah, nice. (still a bug that should be fixed, imo)
00:11 whiteinge are you also running salt in masterless mode?
00:12 ghanima whiteinge: no I agree however I think that if grains are yaml files that they should just generate yaml data instead of converting it to json and then converting that
00:12 ghanima seems redundant
00:12 ghanima whiteinge: No I am running it with master
00:12 whiteinge oh, in that case i'd be surprised if this bug was the culprit. what error do you see?
00:13 ghanima minion:2014-04-14 01:01:29,223 [salt.loader                                 ][CRITICAL] Failed to load grains defined in grain file facter.facter in function <function facter at 0x14498c0>, error: minion:  File "/var/cache/salt/minion/extmods/grains/facter.py", line 33, in facter minion:    output = __salt__['cmd.run']('facter -p -j')
00:13 ghanima hopefully that pasted
00:15 whiteinge can you manually run facter -p -j on that machine without error?
00:15 ghanima whiteinge: yes I can
00:15 ipalreadytaken joined #salt
00:16 analogbyte joined #salt
00:16 ajw0100 joined #salt
00:16 TyrfingMjolnir joined #salt
00:16 ghanima whiteinge: I was trying to see if there was a way for me to run the facter.py directly but couldn't figure it out
00:17 ccase joined #salt
00:18 whiteinge not exactly. not with grains modules
00:19 whiteinge hm. that error message is supressing the real error
00:19 whiteinge ghanima: are there any other facter-related log messages above or below that one?
00:20 whiteinge and what are you running to see the log messsges?
00:21 ghanima whiteinge: no it just repeats everytime
00:21 ghanima its executed
00:21 ghanima 2014-04-14 03:10:25,638 [salt.loader                              ][CRITICAL] Failed to load grains defined in grain file facter.facter in function <function facter at 0x2af2320>, error:   File "/var/cache/salt/minion/extmods/grains/facter.py", line 33, in facter     output = __salt__['cmd.run']('facter -p -j')
00:21 whiteinge everytime what is executed?
00:23 ghanima when i do sudo salt '*' saltutil.sync_grains
00:24 ipalreadytaken joined #salt
00:27 whiteinge ghanima: would you please ssh into one of the minions that shows that error and run the following, then pastebin the log messages?: sudo salt-call -l debug saltutil.sync_grains
00:27 travisfischer joined #salt
00:32 ghanima whiteinge: http://www.pastebin.ca/2696094
00:32 whiteinge ghanima: holy cow. i was wrong. same KeyError.
00:32 whiteinge thanks for doing that
00:32 whiteinge ghanima: what version of salt are you on? both master and minions?
00:33 ghanima salt-2014.1.0-1.el6.noarch  salt-minion-2014.1.0-1.el6.noarch salt-master-2014.1.0-1.el6.noarch
00:35 whiteinge ghanima: are you sending that module to minions via the /srv/salt/_grains directory?
00:37 ghanima YUP :) it looks like when I do saltutil.sync_grains it puts it in /var/cache/salt/minion/extmods/grains/
00:37 ghanima on the minion that is
00:41 whiteinge ghanima: if you're up for a little experimentation, you could try editing the /srv/salt/_grains/facter.py file on the master to remove the top-level __salt__ = { ... } lines
00:41 ghanima whiteinge: The whole stanza right
00:42 whiteinge yeah. hang on, add something while you're in there
00:43 whiteinge ghanima: http://paste.fedoraproject.org/94196/97522603
00:43 whiteinge try that, please. more debugging info :)
00:44 Math` joined #salt
00:44 whiteinge ghanima: pastebin again the: salt-call -l debug saltutil.sync_grains
00:46 linuxlewis joined #salt
00:47 schimmy1 joined #salt
00:49 ghanima whiteinge: still same error :(
00:49 ghanima :q
00:49 ghanima http://ur1.ca/h2zrf
00:50 thedodd joined #salt
00:50 ghanima whiteinfe: let me know if you need more output I showed the output of the execution
00:52 schimmy joined #salt
00:53 whiteinge thanks, no. that's good
00:54 freenod_ joined #salt
00:56 TyrfingMjolnir joined #salt
00:57 darless joined #salt
00:58 thedodd joined #salt
00:59 darless joined #salt
00:59 whiteinge ghanima: i left a comment on that ticket. i'm not sure about this one
00:59 ghanima whiteinge: on the one that I provided
00:59 whiteinge you can do the workaround mentioned in that ticket and copy it to your minions with cp.get_file
00:59 whiteinge http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.cp.html#salt.modules.cp.get_file
01:00 whiteinge yeah, issue #10275
01:00 whiteinge if you do go the workaround route, be sure to nuke the custom grain from your master and double-check it got nuked on the minions too
01:00 darless joined #salt
01:01 TyrfingMjolnir joined #salt
01:02 darless joined #salt
01:02 ghanima whiteinge: Ok I am really confused.... there is nothing wrong with the facter.py script and your saying the work execute the facter.py properly however if I run the script with the salt-call command the error appears and this error is happening on the minion... I just confused as to how the workaround fixes this its like this data is not being passed
01:02 ghanima properly to grains sub function
01:02 darless joined #salt
01:02 lukeg1 joined #salt
01:02 darless joined #salt
01:03 catpig andrej, why would using usermod be more (or less) secure than directly editing /etc/shadow? either you handle the clear text securely or you don't..
01:03 ghanima whiteinge: also... I am running python 2.6 and not 2.7
01:03 ghanima just fyi
01:03 whiteinge ghanima: however/whenever salt is loading that custom grain module isn't quite working. by moving it to the core salt file location will cause it to get loaded at a different time
01:04 darless joined #salt
01:04 whiteinge python 2.6 and 2.7 should both be ok
01:04 freenod_ joined #salt
01:05 jeremyfelt joined #salt
01:05 ghanima whiteinge: I don't see the exact directory noted from the ticket, on my box which is centos, /usr/lib/python2.6/site-packages/salt/grains
01:05 ghanima that is the directory
01:05 darless joined #salt
01:05 ghanima I presume I can store it there
01:05 whiteinge yeah
01:06 ghanima whiteinge: once I put it there how do I regenrate the grains
01:06 freenod joined #salt
01:06 whiteinge saltutil.sync_grains will still reload grains. or if you're ssh'ed into a single minion you can restart the minion service to test
01:08 darless joined #salt
01:09 mafrosis joined #salt
01:10 redondos joined #salt
01:11 darless joined #salt
01:11 ghanima whiteinge: cool man I will give it a try but going to call it a night .... thanks for all your help I will report my findings tomorrow
01:11 whiteinge gl. hit me up tomorrow
01:11 fllr joined #salt
01:12 sulky joined #salt
01:12 darless joined #salt
01:12 fllr joined #salt
01:12 tligda left #salt
01:12 tligda joined #salt
01:13 ghanima whiteinge: will do thanks again
01:14 darless joined #salt
01:16 TyrfingMjolnir joined #salt
01:17 sulky joined #salt
01:18 ipalreadytaken joined #salt
01:19 tharkun joined #salt
01:19 kermit joined #salt
01:22 Auroch joined #salt
01:23 xzarth joined #salt
01:24 tharkun joined #salt
01:27 linuxlew_ joined #salt
01:27 darless joined #salt
01:28 schimmy1 joined #salt
01:29 tharkun joined #salt
01:33 bhosmer joined #salt
01:34 tharkun joined #salt
01:38 jaimed joined #salt
01:38 freenod joined #salt
01:39 jaimed joined #salt
01:39 jalbretsen joined #salt
01:40 balboah joined #salt
01:42 acabrera joined #salt
01:45 Corey joined #salt
01:49 Corey joined #salt
01:55 Networkn3rd joined #salt
01:57 sroegner joined #salt
01:59 Daviey joined #salt
01:59 Corey joined #salt
02:04 ipalreadytaken joined #salt
02:05 Corey joined #salt
02:10 andrej catpig : because all it does is to update the file, w/o modifying which account was changed.  No good.  There are perfectly valid reasons for having both ageing policies and actual information about WHEN something was changed in shadow.
02:11 catpig all that usermod does is modify the file, you change the account by modifying the file
02:12 catpig if you want auditing, dunno, i dont think i'd do that by using usermod
02:13 Daviey joined #salt
02:13 pydanny joined #salt
02:18 schimmy joined #salt
02:18 andrej So on your own systems you change your password by editing shadow?
02:19 andrej I use chpasswd for bulk changes/after an install quite happily.
02:19 andrej And no, usermod WILL update the third field in shadow
02:20 srage joined #salt
02:20 fxhp http://salt-cloud.readthedocs.org/en/latest/topics/misc.html#setting-up-new-salt-masters
02:20 fxhp does that really work in a profile?
02:21 fxhp I just tested and it didn't install salt-master
02:21 schimmy1 joined #salt
02:21 Linz joined #salt
02:22 fxhp http://pad.yohdah.com/252/845efcf9-c20f-4b8a-b8f1-f6d389a1b299
02:22 fxhp for example ^
02:29 yawniek joined #salt
02:30 undefinednull joined #salt
02:40 Math` joined #salt
02:49 ipalreadytaken joined #salt
02:50 travisfischer joined #salt
02:51 srage joined #salt
02:52 srage joined #salt
02:58 fxhp http://docs.saltstack.com/en/latest/topics/cloud/map.html#setting-up-new-salt-masters
02:58 fxhp I'm pretty sure that syntax is wrong
03:06 Math` joined #salt
03:09 jvasallo joined #salt
03:11 xl1 joined #salt
03:14 tyler-baker joined #salt
03:21 bhosmer joined #salt
03:38 fxhp make_master: True doesn't seem to work
03:38 fxhp I've tried it in a bunch of places
03:39 fxhp salt-master daemon never gets installed
03:46 ipalreadytaken joined #salt
03:47 srage joined #salt
03:48 jeremyfelt joined #salt
03:49 catpigger joined #salt
03:52 schimmy joined #salt
03:55 martin__ joined #salt
03:55 tr_h joined #salt
04:01 alekibango_ joined #salt
04:01 Kraln joined #salt
04:01 ahammond_ joined #salt
04:01 djinni` joined #salt
04:02 echos joined #salt
04:11 ajw0100 joined #salt
04:12 smcquay joined #salt
04:13 andrej what's a "normal" size for /var/cache/salt/master/jobs on a box w/ ~ 50 minions?
04:16 ajw0100 joined #salt
04:19 jacksontj whiteinge: left you a fun pull req on salt-api :D
04:19 jacksontj https://github.com/saltstack/salt-api/pull/150
04:19 whiteinge so I see!
04:19 jacksontj did that for hackday a few weeks back
04:19 whiteinge very cool!
04:20 jacksontj just refactored it today to use the coroutines
04:20 jacksontj do you have a min to help me get these tests running on my box?
04:20 jacksontj i run the python -m unittest discover in the salt-api dir
04:20 jacksontj but i get no tests :/
04:20 whiteinge sure
04:21 jacksontj is there not an API test?
04:21 jacksontj one that verifies the rest API
04:22 whiteinge ah
04:22 whiteinge i was just going to ask why you copied the URL structure from the rest_cherrypy app. that may answer my question :-)
04:22 whiteinge that's not a requirement
04:22 jacksontj ah-- i thought it was
04:22 whiteinge netapi modules are as free-form as salt's execution modules.
04:22 jacksontj we should probably figure out an API and make everyone implement it
04:23 jacksontj i thought i saw a default salt-api client
04:23 whiteinge nah, i'd very much like to have different ideas on the same thing. Winner Takes All.  :-)
04:23 jacksontj k, if thats the case then i reserve the right to break all the URLs ;)
04:23 whiteinge please do. go with whatever fits a tornado app best
04:23 jacksontj i just matched the rest_cherrypy one since i thought we were supposed to match
04:23 * whiteinge nods
04:23 whiteinge the tests that are in there now only test the rest_cherrypy module
04:24 jacksontj IMO it doesn't really matter too much, but we should probably pick one to use
04:24 jacksontj it would be really annoying to have 3 rest modules with different clients
04:24 jacksontj :/
04:24 jacksontj not that everyone has to conform-- but it would be nice to ship a single client that we verify against a few servers
04:25 mikemar10 joined #salt
04:25 jacksontj k, well i'll think about the api over the next couple days
04:25 whiteinge i'd like to collect non-http netapi modules so this is a little more evident -- a jabber netapi module, a raw zeromq module, an smtp module.
04:26 jacksontj i was thinking as i was going thorugh that it was kinda... messy ;)
04:26 whiteinge obviously the interface for those modules will vary wildly
04:26 jacksontj yea, that'd be cool
04:26 jacksontj i was just thinking of having a test that you would enable for all "http" salt-api
04:26 jacksontj once we have a single rest interface
04:26 whiteinge sure
04:26 jacksontj we use salt-api (the cherrypy one) here
04:26 jacksontj but its going to hit a scaling wall pretty soon ;)
04:26 jacksontj threaded servers tend to
04:27 whiteinge i do see value in that, so long as that isn't holding any other http modules back
04:27 whiteinge wow, really? ooc, how many req/sec?
04:27 jacksontj yea, i was thinking more of an opt in
04:27 whiteinge works for me :)
04:27 jacksontj like i'll have "HTTP REST test" and you opt your module in to it
04:27 whiteinge yeah, nice
04:27 jacksontj that way the client knows that the restclient in the project has been verified against server X,Y,Z
04:28 whiteinge wait, y'all aren't running into req/sec problems. you're running into waiting-for-salt-threads-to-finish problems, yes?
04:28 jacksontj its a concurrency problem more than anything
04:28 jacksontj yea ;)
04:28 jacksontj if you make http calls that aren't async-- it blocks all the cherrypy thread
04:28 jacksontj s
04:28 jacksontj so, this fixes that problem by using the event system to do that ;)
04:29 jacksontj still need a little work-- since i didn't implement wheel
04:29 jacksontj or a client IP filter or anything like that
04:29 jacksontj but its a start
04:29 whiteinge ah, i see. you haven't copied over the root (sync) URL from the rest_cherrypy module
04:29 yano joined #salt
04:29 whiteinge gah, why-oh-why are wheel modules not async?!
04:30 jacksontj what do you mean by root url? i copied the / path (the magical lowstate path)
04:30 jacksontj yea, i'll have to add an async interface onto the wheel system
04:30 jacksontj auth as well :/
04:30 whiteinge (the answer to that is "because they generally run very fast". to which i rolled my eyes so hard it gave me a headache)
04:30 jacksontj auth seems to be quick enough-- so its not terrible
04:30 * whiteinge looks again
04:30 jacksontj auth fires events, but there isn't a nice API to give you the tag that you should expect
04:30 jacksontj not much work to go on there
04:31 whiteinge ah, i see it
04:32 jacksontj well, i think i'm going to head home now :)
04:32 whiteinge "saltnado" LOL
04:32 whiteinge thanks for the module!
04:32 whiteinge ttyl
04:32 jacksontj best name :D
04:32 jacksontj so, once i get the best API
04:32 jacksontj i'll just win :D
04:32 whiteinge +1 to that
04:32 jeremyBass joined #salt
04:33 jeremyBass left #salt
04:41 srage joined #salt
04:42 schimmy joined #salt
04:42 Ryan_Lane joined #salt
04:46 ixokai Hi, I'm trying to get gitfs working with salt 2014.1.1 (a new installation), and am getting this on startup: 2014-04-13 21:27:27,600 [salt.loaded.int.fileserver.gitfs ][WARNING ] GitPython exception caught while fetching: len(["66a4bd77778ef254a0cc8245c7bada6049d2c781\tnot-for-merge\tbranch 'master' of http://master1.example.com:5000/salt/dev/states\n"]) != len(['POST git-upload-pack (148 bytes)', ' * [new branch] master -> origin/master']) --
04:47 mafrosis joined #salt
04:47 mafrosis lo salters
04:47 mafrosis I'm getting "Salt configured to run as user "root" but unable to switch"
04:48 mafrosis Except my master is running as the current non-root user. Any ideas?
04:48 ipalreadytaken joined #salt
04:49 sroegner joined #salt
04:49 mafrosis oh and it's salt-cloud btw :p
04:54 fragamus joined #salt
04:54 rushm0r3 joined #salt
04:57 mafrosis https://github.com/saltstack/salt/issues/8745
05:08 modafinil_ joined #salt
05:10 bhosmer joined #salt
05:14 ipalread_ joined #salt
05:17 possibilities joined #salt
05:21 copelco joined #salt
05:28 dangra joined #salt
05:31 munhitsu_ joined #salt
05:32 jvasallo joined #salt
05:35 MasterNayru joined #salt
05:35 srage joined #salt
05:36 MasterNayru does anyone know if the salt master's ext_nodes function reads in a "parameters" section of the yaml? if so, how would i access these parameters?
05:40 adizam joined #salt
05:42 anuvrat joined #salt
05:45 q1x joined #salt
05:46 micko joined #salt
06:00 millz0r joined #salt
06:00 fllr joined #salt
06:04 * mike25ro morning
06:05 mike25ro is anyone around that can answer a stupid jinja question?
06:06 thayne joined #salt
06:10 whiteinge mike25ro: shoot
06:10 gildegoma joined #salt
06:12 fllr joined #salt
06:13 bhosmer joined #salt
06:22 Nexpro joined #salt
06:23 mike25ro whiteinge: sorry - i was getting a coffee. So .. i have a jinja tree... like: jinjamap.munin.red and jinjamap.munin.green . In my pillar['munin']='green' or 'red'  ... how can i use the value of pillar and extract the corresponding jinja value....  like jinjamap.munin.???
06:25 whiteinge mike25ro: sorry, i can't quite visualize. pastebin?
06:25 mike25ro ok
06:27 rushm0r3 joined #salt
06:28 mike25ro whiteinge: http://pastebin.com/MmfCLREP
06:29 nhubbard joined #salt
06:29 srage joined #salt
06:30 codekoala joined #salt
06:30 codekoala joined #salt
06:30 lyddonb joined #salt
06:31 whiteinge three different files?
06:31 mike25ro yeah
06:32 ipalreadytaken joined #salt
06:34 mike25ro maybe.. my jinja.. is not correct? .... or i should do it another way? in jinja i keep all possible servers, and from pillar i want to pick only one server from jinja
06:34 mike25ro i am not sure if i make any sense...
06:35 whiteinge yeah, that makes sense
06:35 whiteinge how do you want to determine if a server is 'prod' or 'test'?
06:35 whiteinge in pillar? or in the state?
06:36 mike25ro manually - i have a web interface.. when i add a new minion - i have created some checkboxes... and i generate a pillar.
06:36 mike25ro from pillar
06:36 mike25ro in pillar i set up the tag.. that this server should pick the prod or test settings from jinja
06:37 whiteinge so the web interface is writing files to the filesystem?
06:37 mike25ro yes whiteinge
06:37 mike25ro the web int is generating the entire pillar
06:38 sroegner joined #salt
06:38 mike25ro each minion has its own pillar.
06:38 whiteinge ah, i see. but not the jinja
06:38 mike25ro jinja is manually set up.. once forever
06:38 mike25ro it doesn't matter whiteinge... jinja is a file  and pillar  is anonther file.
06:39 whiteinge so when Salt is compiling Pillar, it renders the jinja first as a separate step then it renders the yaml
06:40 whiteinge meaning we can't look a value up in jinja from a value in pillar
06:40 mike25ro yes we can.
06:40 mike25ro whiteinge:  the pillar is generated once... and it stays there... forget about the pillar and when is generated
06:40 mike25ro i can access data from pillar and jinja...
06:40 eliasp ixokai: wrt your GitFS issue: did you set a different remote HEAD than "master"?
06:40 mike25ro i don't know how to combine them
06:41 mike25ro :)
06:41 eliasp ixokai: maybe try to set your remote HEAD to master and see if that fixes the problem
06:41 whiteinge mike25ro: are you importing that jinja file into the state?
06:41 mike25ro whiteinge: in my config- that needs deployed... i can access the pillar data and jinja ... i have made tests... i just can't figure out how to combine them... to pick from jinja only the value that i have in the pillar
06:41 mike25ro whiteinge: yes the jinja is imported
06:42 mike25ro i can access the values that i need from the jinja  and the pillar :)
06:42 mike25ro i just hit a brick wall ...
06:43 ixokai eliasp: I didn't set a remote head, I'm not entirely sure even what you mean. I pushed a very basic 'master' branch up with a simple top.sls and that's all. Otherwise its all plain.
06:43 meteorfox joined #salt
06:43 whiteinge mike25ro: i see what you're saying. i thought the jinja was being used at the pillar-level
06:43 mike25ro sorry whiteinge ... my bad... no .. the jinja is imported into the conf file.
06:43 ixokai aliasp: my gitfs config is - http://master0:blah@master1.ixokai.io:5000/salt/dev/states
06:46 mike25ro whiteinge: i am not even sure.. it's possible what i want... but that would be really stupid.. not to be able to pick... or to evaluate a jinja variable somehow.
06:46 whiteinge mike25ro: http://pastebin.com/p66CXhx2
06:46 mike25ro whiteinge: i will test it now.. thanks a lot
06:48 eliasp ixokai: can't access that, but your GitFS config doesn't really affect that… the remote HEAD is being set manually through git, so if you didn't do this explicitely it should default to master…
06:48 mike25ro whiteinge: it woooorks
06:48 whiteinge woot :)
06:48 mike25ro how the heck.. didn't i think of that!?! whiteinge thanks a lot buddy - i think i owe you another beer
06:48 eliasp ixokai: what does "git remote show origin" say?
06:48 ixokai eliasp: Well yeah, its an internal dns name not accessible externally. But no, I didn't do anything manually in git
06:49 eliasp k
06:50 Kenzor joined #salt
06:52 ixokai eliasp: That command shows https://gist.github.com/anonymous/e1919201789c8f0016c7 fromt he machine I pushed my change to... from /var/cache/salt/master/gitfs/4...longnumber it shows https://gist.github.com/anonymous/f45ff74c4aa2231c95a9
06:53 ixokai eliasp:  That second one is from the machine running salt-master if it wasn't clear
06:53 eliasp ixokai: ok, so your remote branch is "master"… rules out my 1st suspicion
06:53 eliasp ixokai: ok
06:55 epcim joined #salt
06:58 bhosmer joined #salt
06:58 xunil__ joined #salt
06:59 undefinednull joined #salt
07:03 harobed joined #salt
07:11 swissknife joined #salt
07:12 fllr joined #salt
07:23 srage joined #salt
07:25 Nexpro joined #salt
07:26 ggoZ joined #salt
07:32 it_dude joined #salt
07:36 ErikHH joined #salt
07:37 kadel joined #salt
07:46 swissknife left #salt
07:47 Ryan_Lane joined #salt
07:48 topochan joined #salt
07:50 ravibhure joined #salt
07:55 ndrei joined #salt
07:57 ErikHH joined #salt
07:58 gildegoma joined #salt
08:12 fllr joined #salt
08:17 srage joined #salt
08:27 sroegner joined #salt
08:36 gamingrobot joined #salt
08:37 modafinil_ joined #salt
08:37 munhitsu_ joined #salt
08:38 octarine joined #salt
08:39 Heggan joined #salt
08:46 aleszoulek joined #salt
08:46 giantlock_ joined #salt
08:46 bhosmer joined #salt
08:52 topochan joined #salt
08:55 malinoff joined #salt
09:12 srage joined #salt
09:12 fllr joined #salt
09:19 cowyn joined #salt
09:20 malinoff joined #salt
09:20 Nexpro joined #salt
09:22 CeBe joined #salt
09:43 scuwolf joined #salt
09:51 wendall911 joined #salt
09:59 jeremyBass joined #salt
10:02 mike25ro guys is this  a valid jinja?  {% if pillar['tags']['tag_group'] in ['prod','infra','eoffice'] %}      i am asking about the ['prod',]
10:06 srage joined #salt
10:06 millz0r mike25ro: looks about right
10:07 mike25ro millz0r: thanks .. i was not sure about the ... ['','']
10:07 mike25ro millz0r: i am not good with py
10:07 mike25ro :)
10:08 millz0r mike25ro: thats standard python array [1,2,3] or ['1','2','3'] for strings
10:08 millz0r however comma is also used for tuples
10:08 mike25ro oki thanks... i thought was a tuple....
10:08 mike25ro :)
10:08 millz0r so a = 'abc', is a tuple
10:08 mike25ro i read about tuples and dictionaries...
10:08 millz0r but a = 'abc' is a string
10:08 mike25ro aah ok
10:09 mike25ro nice explanation
10:09 millz0r and a = {1:'abc'} is a dictionary with integer keys and string values
10:09 millz0r :)
10:09 mike25ro thanks millz0r
10:09 millz0r no probs man
10:09 millz0r python is da shit, you should learn it
10:09 mike25ro millz0r:  .. i actually downloaded (illegally :P) some tutorials on py
10:09 millz0r oh there are plenty of free ones around
10:10 mike25ro i am going to look into it... i am ... working with php since 2000 ... it will be a bit hard to move :)
10:10 millz0r you new into programming?
10:10 millz0r ah ok
10:10 millz0r php sux, so you will gain a lot from python :P
10:10 mike25ro millz0r: "new" is always relative :)
10:10 millz0r but its actually very simple
10:10 millz0r http://learnpythonthehardway.org/book/
10:10 malinoff millz0r, https://docs.python.org/3.4/tutorial/ - this is the best tutorial you can find
10:10 mike25ro malinoff:  thanks
10:10 millz0r that book gets a lot of hate, but it has several good real-wrold examples
10:11 millz0r malinoff: yea I like the official documentation as well, its well -written and robust
10:11 mike25ro is django the only py web framework?
10:11 mike25ro i am doing a lot of web devel as well
10:11 malinoff mike25ro, Of course, it's not
10:11 millz0r no, but the most widely used one
10:11 millz0r i work at a django shop
10:11 malinoff Flask, Pyramid, CherryPy
10:12 mike25ro thanks malinoff
10:12 malinoff mike25ro, Also, you should take a look on Twisted, Tornado and Gevent
10:14 fllr joined #salt
10:15 viq joined #salt
10:15 viq joined #salt
10:16 sroegner joined #salt
10:16 mike25ro malinoff: now.. i am quite confused :PP too many
10:16 honestly not twisted
10:16 honestly twisted is terrible
10:17 mike25ro i like the souynd of tornado :)
10:17 mike25ro i am reading now about it
10:17 malinoff It's nice to know why you should use tornado or gevent instead of twisted tho
10:17 malinoff So reading the tutorial is not very bad
10:17 mike25ro well .. that is what .. i am looking for.. what are the differences.. i personally like a framework with a small footprint... not a lot of modules etc.
10:18 honestly twisted is... twisted
10:18 mike25ro honestly:  :)
10:18 malinoff mike25ro, flask is a VERY small framework
10:18 malinoff Same for CherryPy
10:18 millz0r and django's pretty bloated, but gots loads of stuff
10:18 honestly everything but toy problems is almost impossible to achieve in twisted because it's such a mess
10:18 mike25ro flask is made by the same guys as jinja
10:19 honestly and all you get is low-level plumbing and no help with your application
10:20 mike25ro those py frameworks run with apache? or some py web server? - i am REALLY new to py so i am asking stupid Q
10:21 _mel_ joined #salt
10:21 malinoff mike25ro, I don't think #salt channel is the right place to ask such questions :)
10:21 mike25ro malinoff:  that is quite true :) sorry
10:21 millz0r mike25ro: you can set up django to use whatever you want, we use nginx for instance
10:22 mike25ro thanks guys for all the suggestions... i have a lot to study now :) i know what i will be doing during Easter
10:28 honestly there's mod_python and wsgi but mod_python is dead
10:34 bhosmer joined #salt
10:38 mike25ro thanks honestly
10:42 rushm0r3 joined #salt
10:45 elfixit joined #salt
10:50 Ryan_Lane joined #salt
10:52 q1x joined #salt
10:55 ajprog_laptop joined #salt
10:55 crazysim joined #salt
10:59 munhitsu_ why is grains module inconsistent when it comes to hierarchical data?
10:59 munhitsu_ salt-call grains.setval 'apps:app1:secret' 10
10:59 munhitsu_ salt-call grains.get 'apps:app1:secret'
11:00 srage joined #salt
11:10 ndrei joined #salt
11:12 fllr joined #salt
11:13 Kenzor joined #salt
11:14 MZAWeb joined #salt
11:14 epcim joined #salt
11:17 sroegner joined #salt
11:19 rnts joined #salt
11:20 rnts Hi, is it possible to except a server from a highstate with some minion-setting or can I override the default top.sls in a simple way?
11:21 goldstar joined #salt
11:23 asciihatingcat i know this is cheating but i'd just stop the minion on that machine ^^
11:24 rnts Heh, yeah that's a bit to far, I want it managed by salt, just that it should not pickup the defaults, I suppose I can make an exception in the top.sls file for a specific grain
11:24 asciihatingcat oh i assumed its only a temporary thing
11:25 bhosmer joined #salt
11:25 rnts Nah, thing is - we manage all our servers with saltstack, but we also have a few "personal" development machines, and I want those to be excepted from highstates since those might have stuff installed or configured differently than our standard(s)
11:29 gildegoma joined #salt
11:32 yomilk joined #salt
11:35 \ask joined #salt
11:44 munhitsu_ mts: what about adding and extra entry within grains like: groups and set it to ['development'] or ['production']
11:44 munhitsu_ and based on it select hosts on state.highstate
11:46 rnts also an option, yeah
11:48 yomilk joined #salt
11:49 ravibhure joined #salt
11:50 AdamSewell joined #salt
11:54 ekristen joined #salt
11:54 srage joined #salt
11:58 munhitsu_ BTW: how can I read salt master grain from salt minion?
12:01 topochan joined #salt
12:05 che-arne joined #salt
12:05 harobed joined #salt
12:09 ekristen joined #salt
12:12 AdamSewell joined #salt
12:12 fllr joined #salt
12:15 rushm0r3 joined #salt
12:17 s0undt3ch joined #salt
12:20 asciihatingcat rnts, oh ok, just uncomment test: True in /etc/salt/minion
12:23 bhosmer_ joined #salt
12:23 jvasallo joined #salt
12:24 Math` joined #salt
12:25 pressureman joined #salt
12:25 rnts asciihatingcat: so that will exclude the node from further highstates?
12:25 asciihatingcat rnts, well it'll prevent changes being made
12:26 asciihatingcat on the client
12:26 pressureman has anyone had any success in getting env vars passed to cmd.script? i specify them, but they aren't visible in the script
12:27 fxhp mafrosis - yup
12:27 fxhp mafrosis - set, user: non-root-username
12:29 fxhp pressureman - at one point there was a mix up between env vars and salt env (like base:)
12:29 t0rrant joined #salt
12:29 pressureman fxhp, yeah i did stumble across something like that
12:29 fxhp pressureman: what version of salt are you running
12:29 s0undt3ch left #salt
12:29 pressureman latest stable, 2014.1.1
12:30 pressureman i can use script args i guess, but it would have been nice to use env vars
12:30 gildegoma joined #salt
12:31 pressureman the docs for cmd.script env say "Pass in a list or dict of environment variables to be applied to the command upon execution"
12:32 fxhp I think I switched to args
12:33 fxhp because I had control over the script
12:33 pressureman yeah fortunately in this case i do too... might have to be args then
12:34 pressureman ah wait a sec
12:34 fxhp I was also testing on an older 16.4
12:34 pressureman it works if i specify them as a dict, rather than a list
12:34 pressureman those sneaky minus symbols...
12:34 fxhp ok then either that is a doc issue or a defect in the list case
12:34 fxhp cooll!
12:42 goldstar how do I use different httpd config files for different servers ?
12:43 sandbender1512 joined #salt
12:45 CeBe joined #salt
12:46 rome joined #salt
12:48 stevednd joined #salt
12:48 srage joined #salt
12:49 jslatts joined #salt
12:53 ajprog_laptop joined #salt
12:53 rome joined #salt
12:55 jeremyBass left #salt
12:55 t0rrant joined #salt
12:55 xmj with grains and jinja
12:55 xmj SALT ZOMBIE WANTS GRAAAAAAAAAAAAAAAAAAAAAAAAAAINS
12:55 xmj scnr
12:57 jvasallo joined #salt
12:57 rome joined #salt
12:59 Leech joined #salt
13:04 modafinil_ joined #salt
13:05 fllr joined #salt
13:06 _fllr_ joined #salt
13:08 thunderbolt joined #salt
13:09 octarine joined #salt
13:10 joehh joined #salt
13:11 elfixit joined #salt
13:12 fllr joined #salt
13:12 analogbyte joined #salt
13:16 epcim joined #salt
13:17 munhitsu_ joined #salt
13:23 AdamSewell joined #salt
13:23 AdamSewell joined #salt
13:23 copelco joined #salt
13:25 vejdmn joined #salt
13:25 Ahlee Good morning all, nested dicts in pillar appear to be unsupported, but how do you return key:value data from ext_pillars if not in a dict of dicts? https://gist.github.com/jalons/9580849f8814d8415bed
13:27 sandbender1512 say what? nested dicts in pillar should work
13:27 akoumjian joined #salt
13:27 analogbyte joined #salt
13:27 * sandbender1512 goes to verify but pretty sure he's using that
13:28 sandbender1512 yeah I have at least two levels which works... ie: main pillar key, value is a dict... that dict has values whcih themselves are dicts
13:29 mpanetta_ joined #salt
13:40 rome joined #salt
13:40 Math` joined #salt
13:42 srage joined #salt
13:44 Ahlee interesting.
13:44 Ahlee given when i try to pull the embeded value i'm getting split errors
13:44 Ahlee i guess i could return them as a tuple
13:44 Ahlee don't want to depend on lists
13:47 pressureman i'm trying to pass pillar data to to state.highstate on the command line, and read it from the sls with pillar.get() with a default value, and it's resulting in a python traceback " execve() arg 3 contains a non-string value"
13:48 pressureman do variable names have to be quoted?
13:49 Leech joined #salt
13:51 sandbender1512 paste example command line? Likely need to quote, but the issue may not be that :/
13:51 pressureman salt 'minion-test.pb.local' state.highstate pillar="{gf_db_host: 'db09', gf_env_num: '8'}"
13:52 pressureman and trying to refer to that in sls with env GF_DB_HOST: {{ salt['pillar.get']('gf_db_host', 'localhost') }}
13:53 sroegner joined #salt
13:53 ndrei joined #salt
13:54 faldridge joined #salt
13:54 sandbender1512 ah
13:54 sandbender1512 you likely want to quote the keys as well as values in your pillar data on the command line
13:55 quickdry21 joined #salt
13:55 pressureman i tried quoting the keys too... unfortunately didn't work
14:00 arthurlutz joined #salt
14:01 arthurlutz hi, is it possible to re-use the id of a state in it's attributes ? (for example in name: /etc/{{ id }}.conf )
14:01 Math` joined #salt
14:01 kermit joined #salt
14:02 undefinednull joined #salt
14:04 munhitsu_ arthurlutz: not quite, I usually create jinja variable {% plum = 'foobar' %} and than use it
14:04 srage joined #salt
14:04 elfixit joined #salt
14:11 arthurlutz munhitsu_: thanks
14:13 topochan joined #salt
14:15 vejdmn joined #salt
14:18 jraby joined #salt
14:19 pressureman sandbender1512, found the problem... needed more quotes in the sls
14:20 jeremyBass1 joined #salt
14:20 pressureman specifically, needed quotes around the "{{ salt['pillar.get']('gf_db_host', 'localhost') }}"
14:21 pressureman it's funny, sometimes yaml is extraordinarily relaxed, other times it's really picky
14:21 A||SySt3msG0 joined #salt
14:21 Matsy joined #salt
14:21 jraby hi guys, I'm trying to find an easy way to upgrade salt minions. For the upgrade from 0.17.5 to 2014.1.1 I've used the bootstrap script with git v2014.1.1,  however the resulting python2.7/dist-packages/salt/ directory contains some files which were renamed between the 2 version (namely apt.py -> aptpkg.py). This causes all sorts of strange breakage.
14:22 smcquay joined #salt
14:22 Matsy Hey everyone. I've just configured my salt deamon, and the salt minions seem to be able to connect
14:22 Matsy But I can't seem to be able to execute a test.ping command
14:22 Matsy It just hangs
14:22 jraby What do you guys use to upgrade the minions from one version to the next?  when they were initially installed with bootstrap.sh git $version ?
14:26 Ahlee I build RPMs and install those
14:26 jvasallo joined #salt
14:27 asciihatingcat jraby, i would get rid of that mess and install them properly using packages
14:27 GradysGhost joined #salt
14:28 Matsy On what port does Salt listen on the client?
14:28 Matsy Or does it poll for commands from the master?
14:29 jraby we did that at first, but turns out the official apt repos, only contains the latest version, so we ended up with a mix of versions between all the nodes
14:31 napper joined #salt
14:31 asciihatingcat jraby, you can use packages without using the repo
14:31 asciihatingcat also, you're supposed to be running updates ;)
14:31 Flusher joined #salt
14:32 asciihatingcat also, you can use salt to control installed versions
14:34 herzi joined #salt
14:34 rcsheets joined #salt
14:34 asciihatingcat but yeah, really, you should never install anything on a production system that isnt packaged. build the package yourself if necessary. ofc we don't live in should-land ;)
14:36 ekristen so port_bindings on salt states for docker doesn’t work
14:37 alunduil joined #salt
14:38 oraqol joined #salt
14:38 dwiden_ I ran a highstate from the terminal (linux) with -t 1200, but the master is still waiting after about 30 minutes.  Has anyone noticed this behavior?
14:38 scalability-junk joined #salt
14:38 kermit joined #salt
14:39 gadams999 joined #salt
14:39 oraqol Any idea when the salt ppa will update their package to 2014.1.1 for ubuntu saucy?
14:39 lpperron joined #salt
14:40 sandbender1512 pressureman: cool, sorry I couldn't be of much use but glad you figured it out!
14:41 hillna_ joined #salt
14:41 TyrfingMjolnir joined #salt
14:41 pressureman sandbender1512, no worries... i'm pretty much a saltstack beginner and am somewhat overwhelmed by it all, but making progress nevertheless
14:43 asciihatingcat pressureman, are you using a guide/tutorial/howto?
14:43 tharkun joined #salt
14:43 pressureman asciihatingcat, just digging my way through the official docs, and the usual healthy dose of googling
14:44 asciihatingcat ah ok, same for me then
14:44 pressureman irc is plan C, when googling returns nothing useful
14:44 asciihatingcat hehe yep thats the route
14:44 jalbretsen joined #salt
14:44 asciihatingcat plan D is mailing list, assuming those exist
14:45 Math` joined #salt
14:45 pressureman yeah there's a google group...
14:45 pressureman it's a pretty steep learning curve, but i can see it's one worth investing time in
14:45 thedodd joined #salt
14:46 pressureman also, i had never really written yaml before... plenty of xml and json, but yaml feels rather foreign to me still
14:46 timoguin joined #salt
14:46 saguilar joined #salt
14:47 fllr joined #salt
14:48 oraqol guys, I'm pulling my hair out [ouch] with this: minion/masters on 2014.1.0, most of them respond great, but a handful stick on [DEBUG   ] Attempting to authenticate with the Salt Master at 198.49.95.19
14:48 oraqol [DEBUG   ] Loaded minion key: /etc/salt/pki/minion/minion.pem.
14:49 oraqol tcpdump on the master shows the minion sending packets to it and iptables show minion should have a route
14:49 oraqol what gives?
14:53 napper joined #salt
14:57 danielbachhuber joined #salt
14:57 konrad_ joined #salt
14:57 fragamus joined #salt
14:59 Kenzor joined #salt
14:59 abe_music joined #salt
14:59 meteorfox joined #salt
15:00 Networkn3rd joined #salt
15:00 veselin joined #salt
15:02 konrad_ hello, I'm learning salt stack and trying to use it to perform a deployment of a web application on JBoss - has anyone done it here? I'm wondering if I'm following the right path, now I got stuck on copying the file from master to minion - it requires a hash of the file to copy the file, which of course may be overcome but makes me wonder how should it be done correctly, are there any examples for that?
15:07 it_dude joined #salt
15:10 vejdmn joined #salt
15:10 veselin Hello all, what is the benefit (or example use case) of binding minions to an environment in the minion's configuration file?
15:10 davet joined #salt
15:12 timoguin veselin, the general use case is needing to, for example, test infrastructure changes in a dev environment before moving them to production
15:13 timoguin or even maintaining environment with completely different states
15:14 it_dude joined #salt
15:14 jeremyfelt joined #salt
15:16 ekristen anyone using docker and salt together?
15:17 ekristen I’m having issues with getting ports to map to the host?
15:20 munhitsu_ hi, on publish module
15:20 munhitsu_ I'm trying to get master's grain to be read from minion
15:20 munhitsu_ can someone take a look
15:20 munhitsu_ {{ salt["publish.publish"]('roles:master', 'grains.item', arg='revision', expr_form=compound).values()}}
15:22 xinkeT joined #salt
15:22 veselin timoguin: Thank you. If a minion has no environment specified, does this mean it will parse all state trees (for all envs) available on the master looking for matches or just the base?
15:24 timoguin i think the master compiles all the environments in the order you define them and will look through them for matches if it can't find one in base
15:24 timoguin but test to be sure i'm not lying. ;-)
15:27 ajprog_laptop joined #salt
15:28 tligda joined #salt
15:30 Ahlee timoguin: got a sec to help with pulling out dict values from a pillar list?
15:31 acabrera joined #salt
15:31 possibilities joined #salt
15:31 timoguin Ahlee, in between other work maybe. :)
15:33 meteorfox joined #salt
15:34 meteorfox joined #salt
15:37 rushm0r3 joined #salt
15:37 vejdmn joined #salt
15:37 Ahlee no problem there.  Basically, i have a list of dicts, and having issues pulling the key[value] out
15:37 Ahlee https://gist.github.com/jalons/9580849f8814d8415bed
15:37 Ahlee so application is a list, and MyApp and MyPackage are both dicts
15:38 Ahlee both are created via ext_pillar, so i have a lot of flexibility in representation, assuming I can figure out how to return the data
15:38 jvasallo joined #salt
15:39 veselin timoguin: thank you
15:44 rrives joined #salt
15:44 rushm0r3 joined #salt
15:45 [diecast] joined #salt
15:46 rrives left #salt
15:46 jvasallo joined #salt
15:47 bemehow joined #salt
15:49 rushm0r31 joined #salt
15:50 timoguin Ahlee, so you want the "MyApp" key for the name portion, and the "MyPackage" value for the version?
15:51 Ahlee no, the MyApp's version for version
15:51 Ahlee so application[0] is {MyApp: Release.2.1.4.rc1}
15:51 Ahlee and application[1] is {MyPakcage: 0.9.9}
15:52 Ahlee but i can't find the secret sauce to pulling application[0].iterkeys() or similar from within jinja
15:53 timoguin I'm confused about what you're using MyPackage for then. are you not using it for this example?
15:54 Ahlee this example is two dicts in a list, list[0] is one app, list[1] is a second app, MyApp is the first, MyPackage is the second
15:54 timoguin okay gotcha
15:55 Ahlee yeah, up to N items can be installed, and i need name:version info for each of them
15:55 Ahlee usually N=1
15:55 Ahlee but N can be as high as 40, so I don't want to differentiate the logic
15:56 ipalreadytaken joined #salt
15:58 Ahlee nevermind
15:58 Ahlee iteritems vs interkeys
15:58 Ahlee *sigh*
15:58 Katafalkas joined #salt
15:59 veselin left #salt
15:59 rushm0r3 joined #salt
15:59 Katafalkas Hey, anyone has tried running salt-runners with submodules ?
15:59 redondos joined #salt
15:59 timoguin Ahlee, you got it?
15:59 redondos joined #salt
16:01 Ahlee Yeah, two for loops, one over the list, then iteritems() over the resultant dict
16:02 Ahlee timoguin: thanks for taking a look
16:02 jcsp joined #salt
16:02 Ahlee making me think through it got me there :)
16:02 timoguin can you post your working version in that gist so i can see?
16:03 Ahlee https://gist.github.com/jalons/9580849f8814d8415bed#file-embeded
16:04 Damoun joined #salt
16:05 timoguin nice, thanks. i was curious.
16:05 vejdmn joined #salt
16:06 bemehow_ joined #salt
16:08 jcockhren Katafalkas: what do you mean by "submodules"
16:08 rushm0r3 joined #salt
16:08 jcockhren like git submodules? python modules? salt modules?
16:10 Katafalkas subdirectories in runners dir
16:10 schimmy joined #salt
16:11 ckao joined #salt
16:12 cnelsonsic joined #salt
16:12 ravibhure1 joined #salt
16:13 Katafalkas jcockhren: https://groups.google.com/forum/#!topic/salt-users/eYgybn7LWCY
16:13 Katafalkas here
16:13 Katafalkas it will be easier
16:14 xerxas joined #salt
16:14 Katafalkas brb
16:14 jcockhren word
16:14 timoguin jcockhren, how's the ES returner coming?
16:15 jcockhren Katafalkas: I see the issue
16:15 elfixit joined #salt
16:15 KyleG joined #salt
16:15 KyleG joined #salt
16:15 bemehow joined #salt
16:16 jcockhren timoguin: it's 'works'
16:16 timoguin saw your comments about how to handle the minion ids
16:17 timoguin so that's how salt handles it by default? with the id being the target pattern?
16:17 jcockhren yeah. I'm not sure if that still exists in the current newest versions of salt, but... I haven't had the time to test the newer salt. so I haven't upgraded
16:17 timoguin yea i get taht
16:18 arthurlutz1 joined #salt
16:18 mgw joined #salt
16:18 Katafalk_ joined #salt
16:18 sgflt joined #salt
16:19 Katafalk_ jcockhren: so what the issue
16:19 jcockhren I was happy that it worked once I figured out a couple nuiances with kibana anf the timestamp field.
16:19 thedodd joined #salt
16:19 Katafalk_ s
16:20 jcockhren Katafalk_: to load the 'submodules' try importing them in a __init__.py
16:20 ajw0100 joined #salt
16:20 Katafalk_ which one ?
16:20 Katafalk_ runners/__init__.py ?
16:21 jcockhren yep
16:21 jcockhren try that.
16:21 Katafalk_ will give it a go
16:21 jcockhren let me know how that goes
16:22 jcockhren timoguin: the ID field thingy makes it so much less useful
16:22 timoguin jcockhren, think you're going to be able to get around it by returning the actual minion id for each one?
16:22 timoguin so there'd be one entry per minion that runs the job?
16:24 jcockhren I wish I could
16:24 Kenzor joined #salt
16:25 jcockhren however, when returners are defined at the master level it's like: command -> minion(s) -> master -> returner
16:26 jaimed joined #salt
16:27 ndrei joined #salt
16:28 jcockhren timoguin: I'm thinking I can tap into the matching protocol salt uses to return the actual minion IDs
16:29 Katafalk_ jcockhren: so in the runners/__init__.py I have done " from common.connections import * ", and then tried using one of the imported functions in runner file, but it did not help. also the *.pyc file did not appear. so I assume runner did not execute the __init__.py in the root dir of salt runners
16:29 timoguin jcockhren, have you seen salt-eventsd?
16:29 timoguin https://github.com/felskrone/salt-eventsd
16:29 timoguin hooks into the event bus on the master and dumps everything to a database
16:29 rushm0r31 joined #salt
16:30 jcockhren nice!!!
16:30 timoguin seems that might get around a lot of the limitations with returners
16:31 chrisjones joined #salt
16:31 Flusher joined #salt
16:32 jcockhren salt-eventsd -> ES would be hawt
16:32 timoguin that was my first thought as well
16:32 bhosmer joined #salt
16:33 timoguin he only has a mysql backend now, but it looks liek it should be pretty simple to write alternate backends
16:34 jcockhren Katafalk_: hmm.
16:35 Katafalk_ I can import from files that are on the same level as main runner file.
16:35 Katafalk_ bus when I go to subdirs - it stops working
16:36 q1x joined #salt
16:37 jcockhren ah
16:37 jcockhren Katafalk_: ok. you can also import the files using the `imp` module
16:37 Katafalk_ what is that ?
16:38 jcockhren it allows you to bypass/control the importing of pythin modules (on your terms). one sec. there's docs
16:38 jcockhren https://docs.python.org/2/library/imp.html
16:39 Katafalk_ is it salt specific ?
16:39 Katafalk_ oh. ok
16:39 aw110f joined #salt
16:39 jcockhren hopefully, I'm not sending you down a rabbit hole
16:40 Katafalk_ jcockhren: cheers :) will check it out
16:40 jcockhren but I can't talk the time to test that use case right now. I'll be able to later. If you don't figure it out, add in salt issue and tag me in it I'll look into it
16:40 jcockhren s/talk/take
16:41 philipsd6 Q: I have built a custom ext_pillar to query an external database. It works fine when I call salt 'tgt' pillar.items, but salt 'tgt' pillar.get key or key:subkey returns nothing. What am I missing?
16:42 rushm0r3 joined #salt
16:45 gadams999 joined #salt
16:49 timoguin philipsd6, make sure you sync the pillar to the minions: salt 'tgt' saltutil.sync_all
16:49 timoguin pillar.items renders pillar data on the master. pillar.get is what the minion actually sees.
16:55 jvasallo joined #salt
16:55 rushm0r3 joined #salt
16:59 mgw joined #salt
16:59 philipsd6 timoguin: I used saltutil.sync_all, and it didn't seem to push anything new. pillar.get mykey still returns nothing.
17:00 philipsd6 I think I'm missing something, so I'll go back to the docs, but any pointers would be appreciated.
17:01 scoates philipsd6: timoguin: there's an issue for that somewhere. I don't know what the status is. Short version: pillar.get doesn't quite do what's expected (doesn't sync as expected).
17:03 scoates philipsd6: timoguin: it might be this one I'm thinking of: https://github.com/saltstack/salt/issues/11541
17:03 rushm0r3 joined #salt
17:03 jeremyfelt joined #salt
17:03 philipsd6 ok scoates, thx. I'm still confused about how it's supposed to work though. My ext_pillar is dynamic. It's configured on the master, which looks up data using parameters given in the master config file. How would this data be synced to the minion anyway? it could be different if the external database contents change!
17:04 scoates philipsd6: I forgot the exact details. it's something to do with pillar.get thinking it's on local so it doesn't actually use the master's canonical version (even when syncing), but it does work right within the states when doing a highstate
17:05 philipsd6 ok, I can build a quick state to test it, make sure it can actually get the pillar data.
17:05 scoates I bet basepi would remember, but he's on a plane (-:
17:06 thayne joined #salt
17:08 Guest69972 joined #salt
17:08 philipsd6 I'm using develop branch, so that issue you posted applies to me: pillar.get mykey doesn't return anything, but pillar.item mykey does return the expected data.
17:08 rushm0r3 any reason why '*' would not match any minions but 'm*' would ?
17:11 scoates rushm0r3: can you paste your exact command line?
17:11 jcsp joined #salt
17:12 rushm0r3 scoates: ssh user@salthost salt '*' test.ping
17:12 rushm0r3 No minions matched the target. No command was sent, no jid was assigned.
17:12 schimmy1 joined #salt
17:13 rushm0r3 same command with 'm*' returns
17:13 rushm0r3 minion2": true
17:14 nlb joined #salt
17:15 scoates rushm0r3: I suspect this is what's happening
17:16 Nazca__ joined #salt
17:16 scoates rushm0r3: try this?: ssh user@salthost salt '\'*\'' test.ping
17:16 scoates (the quotes are being dereferenced in the shell where you run ssh, non in the shell where you run salt
17:16 scoates )
17:18 scoates rushm0r3: alternatively: ssh user@salthost 'salt "*" test.ping'
17:19 rushm0r3 so why the deref only when * glob ? why not with other globs ?
17:20 scoates rushm0r3: my guess is that the glob m* doesn't match anything in user@salthost's home directory so instead of matching files, the shell just passes it through to salt
17:21 rushm0r3 joined #salt
17:22 harobed joined #salt
17:23 rushm0r3 joined #salt
17:23 harobed joined #salt
17:24 napper joined #salt
17:26 jtang1 joined #salt
17:26 rushm0r3 joined #salt
17:26 scoates [13:20:53]  <scoates> rushm0r3: my guess is that the glob m* doesn't match anything in user@salthost's home directory so instead of matching files, the shell just passes it through to salt
17:27 gadams999 joined #salt
17:29 Ryan_Lane joined #salt
17:30 jeremyfelt joined #salt
17:31 rushm0r3 interesting… just tested your theory by emptying the user dir and blammo. everything works again
17:33 scoates magic (-:
17:34 bemehow joined #salt
17:35 rushm0r3 weirdness…why should salt even care if there is a file in the user dir ?
17:36 rushm0r3 it's just exxecuting a bash command over a tunnel
17:40 philipsd6 rushm0r3: salt doesn't care, your shell does.
17:41 KyleG joined #salt
17:41 KyleG joined #salt
17:42 philipsd6 I think everyone gets bitten by the shell evaluation issue at some point.
17:42 rushm0r3 joined #salt
17:43 philipsd6 it's not specifically related to salt.
17:44 rushm0r3 how so though? i'm executing salt from the cli. it is obviously responding, but freaks out if there is a file in the users homedir ?
17:45 thedodd joined #salt
17:46 rupsky joined #salt
17:47 druonysus joined #salt
17:47 druonysus joined #salt
17:47 philipsd6 what I think is happening is what scoates described. It looks like '*' is being evaluated by the shell, and then whatever matched, is being passed to salt as the target.
17:48 philipsd6 I'd experiment -- try creating a file in the remote homedir that is the same as one of your minion names. Then retry.
17:48 scoates I bet that would work, yeah
17:48 xDamox left #salt
17:48 philipsd6 if we're right, your ssh ... salt '*' test.ping will work, but not for all your minions!
17:48 xDamox joined #salt
17:50 scoates it's actually "salt * test.ping" on the other end of the ssh conneciton
17:50 travisfischer joined #salt
17:50 ndrei joined #salt
17:50 philipsd6 basically, when using ssh, rules go like this: unquoted globs are evaluated by your local shell, quoted globs are evaluated by the remote shell, quoted-quoted globs are passed as is to the remote program.
17:50 scoates yep
17:52 philipsd6 double quoting breaks down as soon as you need to pass a string that itself contains quotes. Then you need to think about wrapping it in a script to eliminate shell globbing.
17:52 philipsd6 otherwise you will go crosseyed trying to manage all the escaping.
17:55 daenney joined #salt
17:56 daenney How do I ask the minions what their provider is for something like pkg? I changed the provider in minion but I just want to check that it did what I expect
17:57 MTecknology Trying to move from file system to gitfs is a giant pain... When I do it, I seem to end up with an unresponsive master. It's almost like every box that tries to run state.highstate causes the master to re-update the git repo and that means it's happening 200 times in a short period of time.
17:58 MTecknology I'm starting to wonder if I need to set up syndic servers. It seems like I'm possibly beating the master too hard. :(
17:58 remote left #salt
17:58 fllr joined #salt
17:59 zain_ joined #salt
17:59 MTecknology salt-call test.ping on the salt server even hangs indefinitely.
17:59 arthabaska joined #salt
18:00 daenney MTecknology: Works just fine, returns within a second here
18:01 daenney Not sure how gitfs would get you in trouble for that though
18:01 ipalreadytaken joined #salt
18:02 MTecknology if it's trying to check out the repo every time a box runs state.* and I have 180 servers that run state.highstate once they authenticate, it could be causing issues
18:03 MTecknology of course... I likely don't know what the crap I'm doing...
18:03 timoguin none of us do!
18:04 MTecknology but you at least know what you're doing!
18:04 MTecknology This is my master config - http://dpaste.com/1780611/
18:07 dwiden_ when I run a highstate from my linux master, sometimes an installer on the minion (unfortunately windows) requires extra input because something went wrong.  When this happens, my salt-master will ignore the timeout parameter that I passed when I ran my highstate
18:09 MTecknology I lied... this is what I have - http://dpaste.com/1780614/
18:10 bhosmer joined #salt
18:12 doddstack joined #salt
18:14 daenney Hmm, too bad I can't call pkg.provider or something like that to see what provider is in use
18:14 daenney This must be possible...
18:15 ajw0100 joined #salt
18:18 possibilities joined #salt
18:22 darless left #salt
18:30 harobed_ joined #salt
18:31 harobed_ joined #salt
18:32 jaimed joined #salt
18:32 ggoZ joined #salt
18:35 meteorfo_ joined #salt
18:39 jaimed joined #salt
18:40 mgw1 joined #salt
18:44 ekristen whats the best way to add debug statements to python modules when developing for salt?
18:45 gadams999 joined #salt
18:46 MTecknology daenney: file system only and I get salt-call test.ping responding on the salt server (local box) within 2sec, with gitfs (that config I pasted) the same test.ping takes 2min 27sec.
18:46 themadcanudist joined #salt
18:46 daenney MTecknology: Woha :/
18:47 themadcanudist what should a state.show_lowstate display? The logs seem to indicate that everything on the master and client are working and templates are being parsed, etc… but I get no STDOUT output from a show_lowstate? -l debug shows me its going through the motions.
18:47 themadcanudist I'm trying to wrap my head around: http://docs.saltstack.com/en/latest/ref/states/layers.html
18:50 MTecknology daenney: yup... and I can't figure out why gitfs is causing this. :(
18:51 possibilities joined #salt
18:52 bemehow joined #salt
18:52 timoguin themadcanudist, it should show a fully order-evaluated highstate basically
18:53 themadcanudist hrmmm, why no output? i wonder if it's getting stored in the job results and doesn't come to STDOUT by default… introspecting previous results, brb.
18:53 gothix Am i missing something everyone kepps talking about roles for minions but i dont see any docs on creating the mapping?
18:54 timoguin themadcanudist, it's similar to the output for a state.show_highstate, but ordered
18:55 themadcanudist that part I realize. I'm wondering why i get no output to stdout when i run the command on the master
18:55 themadcanudist even though all the rendering happens on the minion, etc..
18:55 themadcanudist in the debug logs
18:55 themadcanudist etc
18:55 whiteinge gothix: it's a convention, not a salt built-in thing. basically you just set a custom grain, called "roles" or whatever. and make it a list
18:55 whiteinge gothix: salt 'someminion' grains.setval roles '[foo,bar,baz]'
18:56 rushm0r3 joined #salt
18:56 whiteinge then you can target based on that: salt -G 'roles:foo' test.ping
18:57 gothix whiteinge, thanks i see - so just a ordered list then
18:57 timoguin themadcanudist, it's working for me on my master, using 2014.1.1 and ubuntu 12.04
18:57 * whiteinge nods
18:58 themadcanudist hrm
18:58 MTecknology whiteinge: you know gitfs! You can help? yes?
18:58 * whiteinge takes off running in the opposite direction
18:59 whiteinge MTecknology: what version of salt is your master on?
18:59 gadams999 joined #salt
19:00 themadcanudist yeah, i'm running 2014.1.0 on centos 6.5
19:00 rushm0r3 philipsd6, scoates… got disconnected…catching up on thread. I'll try a couple experiments and let you know what i come up with… thanks for the ideas
19:01 whiteinge themadcanudist: are you sure that the machine you're running show_lowstate on is targeted correctly in the top file?
19:02 themadcanudist well, the templates and whatnot render on the target if i tail the debugging file
19:02 themadcanudist so the job is sent through and stuff happens on the minion
19:02 themadcanudist i may be missing out on a fundamental concept here though
19:02 themadcanudist or point.
19:03 MTecknology whiteinge: 2014.1.0-3901-gc5a3904
19:04 whiteinge MTecknology: do any of those git repos have a large-ish number of refs? (branches, tags)
19:04 MTecknology nope, every one of them is master and no tags
19:08 st0ne joined #salt
19:09 jab416171 joined #salt
19:10 rushm0r3 joined #salt
19:12 MTecknology whiteinge: I'm just doing something dumb, right?
19:14 sgviking joined #salt
19:15 themadcanudist joined #salt
19:15 lpperron joined #salt
19:15 lpperron Hi salt peeps
19:15 themadcanudist sorry, i got knocked off… were there any responses to me in the last 15 minutes =D
19:15 timoguin MTecknology, well your config looks fine. at least i don't see anything off
19:16 themadcanudist re: my last statement "i may be missing out on a fundamental concept here, though"
19:16 timoguin no responses. :)
19:16 timoguin :( rather
19:16 themadcanudist kk, thanks
19:16 themadcanudist =D, no worries
19:16 themadcanudist *frustrating*
19:17 themadcanudist can someone show/point me to an example of what a show_lowstate output looks like?
19:17 rushm0r31 joined #salt
19:18 themadcanudist it's pretty strange, because I can execute a highstate on the same machine and I get output for all the changes =\
19:19 lpperron I asked a question on the mailing with no luck, maybe here I'll be luckier!  I'd like to work with environments and I can't figure out how to do it when asking for files on the fileserver, like when calling cmd.script...  I see I can pass an "env" argument in the docs, but it doesn't seem to work here, could it be because I'm using an hgfs backend?
19:20 timoguin lpperron, if you're on 2014.1+ you'll want to use the saltenv variable i think. env was changed to be used for environment variables
19:24 madduck joined #salt
19:24 madduck joined #salt
19:24 danielbachhuber joined #salt
19:24 timoguin themadcanudist, here ya go: https://gist.github.com/timoguin/578ef41f45acbc17e231
19:24 * themadcanudist pines for that output =D
19:24 themadcanudist thanks
19:25 timoguin themadcanudist, the CLI isn't just timing out is it?
19:25 themadcanudist no
19:25 timoguin did you try --timeout=ONEMILLIONYEARS
19:25 themadcanudist lol, i'll try, sec
19:26 meteorfox joined #salt
19:26 zain_ joined #salt
19:27 meteorfox joined #salt
19:28 lukeg joined #salt
19:28 meteorfox joined #salt
19:29 themadcanudist hmmmm. It now runs, the client says returning info for jid, but the salt command on the master is just hanging there, so it doens't actually complete/receive the data!
19:29 themadcanudist ie. after making the timeout really long.
19:29 themadcanudist i think it may be a firewall issue
19:30 themadcanudist but the highstate runs work
19:30 * themadcanudist is checking
19:30 thedodd joined #salt
19:33 tee joined #salt
19:43 lpperron timoguin, I'm using salt 2014.1.1 - so the argument should be saltenv?
19:43 travisp joined #salt
19:44 timoguin lpperron, i believe so
19:46 schimmy joined #salt
19:46 analogbyte joined #salt
19:47 rushm0r3 joined #salt
19:47 travisp If a salt command executes, then returns without any output, how can I view the return results when the minion runs the job?
19:48 themadcanudist salt-run jobs.lookup_jid <jid>
19:48 themadcanudist salt-run jobs.list_jobs
19:48 schimmy1 joined #salt
19:48 travisp themadcanudist: Thanks!
19:49 themadcanudist np
19:50 jdenning joined #salt
19:50 lpperron timoguin: thanks!
19:50 ipalreadytaken joined #salt
19:50 napper joined #salt
19:51 undefinednull joined #salt
19:52 whiteinge MTecknology: probably not. gitfs has seen a good amount of churn in 0.17 and 2014.1
19:53 fllr joined #salt
19:55 kballou joined #salt
19:56 possibilities joined #salt
19:59 ajw0100 joined #salt
20:01 bhosmer joined #salt
20:04 rushm0r3 joined #salt
20:06 rushm0r3 joined #salt
20:07 MTecknology whiteinge: any ideas what I can do to figure out how to fix this behavior?
20:09 ghanima joined #salt
20:09 ghanima hey all
20:09 timoguin MTecknology, is there a difference in the time if you only have one gitfs remote?
20:10 MTecknology checking
20:10 ghanima was wondering if I can ask an advice question... So I have about 200 machines that communicate to a salt-master, but for the past 24 hours I have been fighting with worker timeouts and trying to find a happy medium with the amount of worker_threads, but I don't want my load average to go exponentially higher because of it
20:10 ghanima Is there any rule of thumb for minion to worker thread ration
20:10 bemehow joined #salt
20:10 ghanima is it a one to one correspondance
20:11 JonGretar joined #salt
20:11 analogbyte joined #salt
20:13 rushm0r3 joined #salt
20:13 Ryan_Lane1 joined #salt
20:14 MTecknology timoguin: that was an excellent troubleshooting step! It's only when I uncomment line 29 (http://dpaste.com/1780737/) that the behavior starts.
20:15 sarlalian joined #salt
20:17 MTecknology timoguin: that entire repo is a single file called boothost_templates.py with the contents (http://dpaste.com/1780740/{
20:18 MTecknology s/{/)/
20:20 MTecknology Can extension_modules handle git? or should that actually be under ext_pillar? or...
20:21 ZombieFeynman joined #salt
20:21 ghanima curious if the salt-master failed and there was a job waiting to be executed is there a way to remove that job before restarting salt-master
20:21 it_dude joined #salt
20:21 meteorfox joined #salt
20:22 timoguin MTecknology, does that external pillar work?
20:22 timoguin i'm wondering about the indentation for the ext_pillar function
20:23 thayne joined #salt
20:24 tligda joined #salt
20:24 MTecknology timoguin: which line in that config? or are you wondering if boothost_templates.py is right?
20:25 MTecknology boothost_templates.py used to be used and it worked fine
20:25 timoguin no, i'm wondering about the repo in line 29
20:25 timoguin specifically the indentation from lines 5-13: http://dpaste.com/1780740/
20:26 MTecknology oooh.... that got screwed up
20:26 timoguin ah okay.
20:26 MTecknology http://dpaste.com/1780752/
20:28 notimpossible joined #salt
20:28 timoguin so you've successfully set the template_dir pillar with those?
20:29 MTecknology I have in the past using the file system, I've never pulled it from gitfs
20:30 ekristen I’m trying to hack on the docker module, how can I print out debugging statements?
20:30 possibil_ joined #salt
20:30 MTecknology timoguin: I'm starting to wonder if this can't actually be in a git repo
20:31 ZombieFe_ joined #salt
20:33 srage joined #salt
20:34 aw110f_ joined #salt
20:34 timoguin MTecknology, i'm wondering the same.
20:35 meteorfox joined #salt
20:37 donatello joined #salt
20:37 ajw0100 joined #salt
20:39 MTecknology crap... now I can't remember how to make this thing work
20:40 timoguin ctrl+z!
20:44 it_dude joined #salt
20:45 thayne joined #salt
20:45 MTecknology apparently this module no longer works either
20:47 Guest99617 joined #salt
20:47 timoguin joined #salt
20:49 MTecknology I lied... I actually have no clue what I'm doing.
20:51 oraqol Ok I've tried raising the ulimit to unlimited and the minion can still not authenticate to the master
20:51 MTecknology [CRITICAL] Specified ext_pillar interface boothost_templates is unavailable
20:51 oraqol tcpdump shows it can and does reach the master
20:52 oraqol any ideas?
20:54 jab416171 joined #salt
20:58 ndrei joined #salt
20:58 alunduil joined #salt
21:04 schimmy joined #salt
21:05 napper joined #salt
21:06 schimmy1 joined #salt
21:06 meteorfox joined #salt
21:07 meteorfox joined #salt
21:08 MTecknology timoguin: BAM!
21:08 MTecknology timoguin: almost everything about this changed since I last used it.
21:18 ZombieFeynman joined #salt
21:19 napper joined #salt
21:23 fragamus joined #salt
21:25 ajw0100 joined #salt
21:26 possibilities joined #salt
21:26 kvbik joined #salt
21:27 micko joined #salt
21:28 yomilk joined #salt
21:33 combusean joined #salt
21:33 aw110f joined #salt
21:33 combusean does salt -t -1 work?  we don't want to timeout at all when we're running from the command line.
21:34 druonysuse joined #salt
21:34 druonysuse joined #salt
21:34 calvinhp_mac joined #salt
21:35 calvinhp_mac what is the best way to wipe a gitfs backed state and pillar cache?
21:35 calvinhp_mac I changed the git urls in my master conf, but the changes don't appear to be picked up
21:35 calvinhp_mac and as I found out, logging for the gitfs stuff is in its infancy at best (but I love it when it works)
21:37 toofer joined #salt
21:37 Ryan_Lane joined #salt
21:39 troyready joined #salt
21:40 snowghost joined #salt
21:41 tligda joined #salt
21:42 TyrfingMjolnir joined #salt
21:42 toofer ey guys I have a quick question (hopefully quick). I am looking at some of the formulas for SaltStack and am noticing a lot of them use map.jinja instead of just using Pillar directly. Does anyone know the reasoning for this?
21:45 arthabaska joined #salt
21:46 cewood joined #salt
21:46 travisp calvinhp_mac: I just wait a while but if I'm really impatient I restart the master and that 'seems' to refresh the gitfs cache
21:47 aw110f joined #salt
21:47 travisp calvinhp_mac: but it sounds like you have already restarted your master :/
21:48 kickerdog joined #salt
21:48 Ryan_Lane whiteinge: docs.saltstack.com/en/latest/ref/states/writing.html <-- when the system is in the correct state, should it return result False?
21:48 kickerdog is there a simple way to output a unix timestamp inside a jinja template?
21:49 whiteinge Ryan_Lane: oops, no. it should return True, with an empty changes dict
21:49 whiteinge sec...
21:49 Ryan_Lane whiteinge: also, I'm unsure what "name" is actually for
21:49 calvinhp_mac travisp: it still doesn't seem to be picking it up, shouldn't state.show_top show the environments a minon would be in?
21:49 Ryan_Lane would that be something like present/absent/etc?
21:50 calvinhp_mac I added one to a "testing" env and it only shows in "base" right now
21:50 fragamus joined #salt
21:50 calvinhp_mac heh, ok, I have to push my change
21:50 calvinhp_mac one sec
21:50 whiteinge Ryan_Lane: "name" is the first parameter to all states. it can be whatever makes the most sense for your state. i'd suggest anything you're comfy with having as the ID for a state should be the "name" parameter
21:51 Ryan_Lane oh, right. name. like salt-minion: pkg.installed
21:51 Ryan_Lane salt-minion would be the name
21:51 whiteinge exactly
21:52 travisp calvinhp_mac: I've done that a lot myself, and lots of yaml typos... half of my git commits to my salt master repo are probably typo fixes or yaml related screw-ups :)
21:52 allanparsons joined #salt
21:52 whiteinge Ryan_Lane: https://github.com/saltstack/salt/commit/e222a9b
21:52 allanparsons im using rbenv and trying to use the gem state to install rails.
21:52 whiteinge thanks for pointing that out
21:52 allanparsons all i get is a hang (pressing enter kills salt-call)
21:53 allanparsons error:       Comment: Could not install gem.
21:53 allanparsons if i install rails manually as that user, it works....
21:54 allanparsons and here's my state file: http://pastebin.com/unUUFX1D
21:54 Ryan_Lane whiteinge: yw
21:55 calvinhp_mac ah, much better
21:58 napper joined #salt
21:59 bhosmer joined #salt
22:00 themadcanudist joined #salt
22:01 millz0r joined #salt
22:02 AdamSewell joined #salt
22:02 AdamSewell joined #salt
22:03 jaimed joined #salt
22:05 jnials joined #salt
22:05 sroegner joined #salt
22:06 UtahDave joined #salt
22:06 jcockhren ugh... I'm over this python packaging stuffs
22:11 vejdmn joined #salt
22:13 napper joined #salt
22:17 DaveQB joined #salt
22:18 jdenning joined #salt
22:20 individuwill joined #salt
22:21 nebuchadnezzar joined #salt
22:26 fllr joined #salt
22:26 druonysus joined #salt
22:26 druonysus joined #salt
22:28 napper joined #salt
22:31 Ryan_Lane for the S3 module, I see that it says you can put the credentials into pillars, but I don't see the module actually loading the pillar anywhere...
22:31 Ryan_Lane http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.s3.html#module-salt.modules.s3
22:31 Ryan_Lane is there some magic in salt that makes that work?
22:32 Ryan_Lane ah, I see a _get_key function...
22:33 Ryan_Lane which is a completely undocumented function :)
22:33 Ryan_Lane oh, ignore me. it's in the module
22:33 jaimed joined #salt
22:33 gamedna joined #salt
22:33 nmistry joined #salt
22:35 troyready joined #salt
22:41 notimpossible joined #salt
22:42 UtahDave Ryan_Lane: I hear lyft has opened in Salt Lake!
22:42 Ryan_Lane UtahDave: it has, very recently ;)
22:43 themadcanudist joined #salt
22:43 UtahDave cool. I'm in SF this week, but I'll have to check it out when i get back.
22:43 Ryan_Lane oh, nice.
22:44 mikemar10 joined #salt
22:45 Ryan_Lane UtahDave: yeah, make sure to.
22:45 Ryan_Lane UtahDave: I can send you an invite for a free ride
22:45 Ryan_Lane though I guess if we just launched there, a certain number of the first few rides are likely free anyway
22:46 themadcanudist left #salt
22:46 Ryan_Lane UtahDave: http://email.lyftmail.com/c/aT0yMDE0MDQxNTIwMjYxOS40Qzk3ODgzMjgwJTQwYXBpLXByb2R1Y3Rpb24taWFkLTNiZDIwZTFiLmx5ZnQubmV0Jmg9YTBlZThjNGIzYjEzMGE5ODI5ZTllYjY3OTc3NzFkMTAmcj1ybGFuZTMyJTQwZ21haWwuY29tJmQ9YTlkMWUmbD1odHRwJTNBJTJGJTJGd3d3Lmx5ZnQuY29tJTJGaW52aXRlZCUyRnJ5YW40NTgx
22:46 Ryan_Lane -_-
22:47 Ryan_Lane stupid gmail
22:47 jcockhren Ryan_Lane++
22:47 Ryan_Lane UtahDave: http://www.lyft.com/invited/ryan4581
22:47 Ryan_Lane heh
22:47 UtahDave cool, thanks!
22:47 Ryan_Lane yw
22:48 quickdry21 joined #salt
22:55 druonysus joined #salt
22:55 druonysus joined #salt
22:59 kickerdog is there a way to output a unix timestamp inside a jinja template?
23:00 kickerdog I was trying: {% salt['cmd.run']('date +%s') %
23:00 kickerdog but that blew up
23:01 schimmy joined #salt
23:04 arthabaska joined #salt
23:07 whiteinge kickerdog: no. that would be a nice addition though
23:07 diegows joined #salt
23:08 ajprog_laptop joined #salt
23:08 whiteinge oh, wait. duh, yeah calling out to date should work
23:08 whiteinge lemme double-check that syntax
23:08 whiteinge you need {{ }}
23:10 Teknix joined #salt
23:12 fragamus joined #salt
23:13 gamedna joined #salt
23:14 jslatts joined #salt
23:14 fllr joined #salt
23:15 fllr joined #salt
23:15 faldridge joined #salt
23:17 Cidan does anone else find that --config-dir on salt-call doesn't work?
23:18 manfred kickerdog: {% %} is for things like setting a variable or a for loop, {{ }} is for calling a single variable, which is what you are doing by calling salt[]()
23:18 schimmy joined #salt
23:18 manfred the second calling should be retrieving*
23:18 djaime joined #salt
23:19 manfred s/second/first
23:19 calvinhp_mac joined #salt
23:20 schimmy1 joined #salt
23:20 gadams999 joined #salt
23:23 kickerdog so this: {{ salt['cmd.run']('date +%s') }}
23:24 individuwill joined #salt
23:24 elfixit joined #salt
23:25 kickerdog haha, yes, that worked. thanks!
23:25 kickerdog With that, i've now got my entire bind9 driven by salt-cloud :)
23:26 [diecast] joined #salt
23:27 UtahDave nice, kickerdog!
23:27 Eugene I see I am not the only one who believes in a SOA serial of UNIX timestamps
23:28 ipalreadytaken joined #salt
23:28 Eugene Any chance you could github your bind9 state? That's one I haven't tackled yet.
23:29 kickerdog I could pastebin it to you
23:30 kickerdog Eugene: http://pastebin.com/WtC290rF
23:32 Eugene Oh so this is just for zonefiles
23:32 kickerdog yeah, i'm not doing anything else special
23:32 Gareth Ryan_Lane: Lyft should come sponsor SCALE 13x :) Can't let Uber have a monopoly!
23:33 kickerdog whenever that file is updated, bind is restarted with a watch: file
23:33 Ryan_Lane :D
23:33 * Eugene has several dozen zones >_>
23:33 Eugene Not nearly hundreds, but hey
23:33 Eugene Also, does watch: support reload, rather than restart?
23:33 kickerdog I believe it does
23:34 manfred Eugene: watch: can watch wahtever you want, it could be attached to a server: reload: True
23:34 manfred s/server/service
23:34 manfred if i could type today, that would be super duper
23:34 Eugene Aha, so it does.
23:34 manfred you can attach watch: the same way you attach require:
23:34 manfred i believe there is also a watch_in:
23:35 Eugene Yeah, reading the relevant docs.
23:35 Eugene Nifty.
23:35 manfred starting drinking at 1pm really kills your productivity for the day.
23:35 calvinhp_mac joined #salt
23:35 Eugene s/kills/turbocharges/
23:40 allanparsons any idea why that gem.installed doesnt work for rails?
23:40 manfred Eugene: also bought a straight razor today, but I don't think i am in a good state to try it out :P
23:41 Eugene And you call yourself a man!
23:41 manfred heh
23:41 manfred you're right, i should do it with a glass of scotch in my hand
23:42 combusean joined #salt
23:43 manfred if it matters, I bought it with a bag of legos I had just purchased from the lego store in the other hand.  It was a good day
23:43 sroegner joined #salt
23:44 freelock joined #salt
23:46 Eugene I do most of my Lego buying on Amazon. Cheaper.
23:47 manfred I just signed a lease for a new apartment today, and my roomate is the manager of our lego store, and he has a crazy discount
23:47 Eugene Aha
23:48 Eugene I visited a mall with one recently; filled up a large pack-your-own tub with translucent studs, tires, and various fun bits.
23:48 manfred nice
23:48 Eugene Worked out to a pretty good deal
23:49 kickerdog Did you guys run a booth at PyCon?
23:49 kickerdog The salt peeps that is.
23:50 manfred kickerdog: http://www.saltstack.com/salt-blog/2014/3/25/pycon-2014-saltstack-sprint
23:50 manfred looks like they did
23:50 kickerdog I wish I had been there.
23:51 TyrfingMjolnir joined #salt
23:55 gamedna joined #salt
23:55 nmistry joined #salt
23:56 freelock joined #salt
23:59 patrek_ joined #salt

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