Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2014-07-24

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

All times shown according to UTC.

Time Nick Message
00:00 m1crofarmer joined #salt
00:01 m1crofarmer joined #salt
00:02 m1crofarmer joined #salt
00:04 ajolo joined #salt
00:04 FeatherKing looks like i am unable to reach github from my datacenter, probably blocking me
00:04 m1crofarmer joined #salt
00:05 m1crofarmer joined #salt
00:05 bhosmer joined #salt
00:05 n8n joined #salt
00:05 m1crofarmer joined #salt
00:06 m1crofarmer joined #salt
00:07 m1crofarmer joined #salt
00:07 FeatherKing i may just update my master, will this rpm salt-master-2014.1.7-3.el6.noarch.rpm from epel testing be the final one in epel?
00:08 FeatherKing i dont need to load git dependencies on all these vms to load an old version, if i can get my master updated
00:08 m1crofarmer joined #salt
00:09 m1crofarmer joined #salt
00:09 m1crofarmer joined #salt
00:10 m1crofarmer joined #salt
00:12 zandy joined #salt
00:13 hhenkel joined #salt
00:14 jcockhren I wonder is salt would perform better on pypy vs. cpython
00:14 jcockhren clearly we'd have to define 'perform better'
00:14 jcockhren s/is/if
00:18 Luke joined #salt
00:21 fannet joined #salt
00:22 fannet can anyone point me in the right direction in deploying a module
00:22 markm joined #salt
00:24 manfred what do you mean
00:24 manfred http://docs.saltstack.com/en/latest/ref/file_server/dynamic-modules.html
00:27 fannet well I'd like to add some of the modules from the 2014.7 branch into the 2014.1 branch since many of them are missing from 2014.1
00:29 fannet putting a .py modules in _modules and calling load_modules does nothing
00:36 whytewolf new error in a file.managed for windows while testing a state "unable to manage file: list index out of range"
00:45 manfred fannet: it is possible that they the 2014.7 modules are not compatible, but have you also done a salt \* saltutil.refresh_modules ?
00:47 otter768 joined #salt
00:48 Luke_ joined #salt
00:50 dude051 joined #salt
00:55 fannet yes I have
00:56 fannet the minions respond with "None"
00:59 manfred and if you attempt to use the module on the minion using salt-call, do you get an error? if so... that module might not be compatible back to 2014.1
00:59 manfred sometimes the dynamic modules work, but it isn't gauranteed to work
00:59 fannet i will try that real quick. the module did get sent over via sync-all
01:01 oz_akan joined #salt
01:05 fannet says function is not available
01:06 fannet nothing in the minion log indicating that it tried to load it though
01:06 manfred what if you do it with -l debug
01:06 manfred salt-call <module>.<function> -l debug
01:06 n8n joined #salt
01:07 tinytub joined #salt
01:09 fannet shows a bunch of stuff loading but no errors
01:10 pclermont joined #salt
01:10 higgs001 joined #salt
01:11 fannet also when my minion tries to install from a recipe calling apt it fails
01:12 fannet Command ['apt-get', '-q', '-y', '-o', 'DPkg::Options::=--force-confold', '-o', 'DPkg::Options::=--force-confdef', 'install', 'redis-server'] failed with return code: 100
01:12 zandy joined #salt
01:17 fannet this is only when called from CRON and not from CLI
01:17 fannet by guess there is some sort of PATH breakdown
01:21 manfred sounds like it can't find the package
01:21 manfred ¯\(°_o)/¯
01:22 manfred failed with return code: 100
01:22 manfred that is the reason it is returning that the module isn't available
01:27 fannet it couldnt find apt-get
01:28 manfred ahh excellent
01:28 zandy joined #salt
01:33 mapu joined #salt
01:36 arthabaska joined #salt
01:39 bhosmer joined #salt
01:41 to_json joined #salt
01:45 zandy joined #salt
01:46 tkharju joined #salt
01:52 elfixit joined #salt
01:54 zandy joined #salt
01:56 ckao joined #salt
01:58 ika2810 joined #salt
01:58 ghartz joined #salt
02:04 deepz88 joined #salt
02:11 n8n joined #salt
02:12 kivihtin joined #salt
02:16 CeBe1 joined #salt
02:34 stevednd dstokes: That's similar to what I'm doing, but that's already doable with orchestration as it is. You just have the build salt.state, and then have a release salt.state that has a require of salt: build-whatever
02:36 stevednd dstokes: I think the onerror could still be useful. At least if you were deploying the app to its own contained space or something. That could then trigger a rollback state that removes any of the failed build or something
02:36 dstokes right, i didn't grok orchestration at first. gating application reload on successful build across all minions removes the need for rollback-on-error so i'm all set i think
02:36 dstokes a little painful not being able to pass args (deploying multiple different apps / pillars w/ the same orchestration logic) but i'll take it
02:37 stevednd dstokes: you can
02:37 stevednd with helium the orch runner accepts pillar data to be passed in
02:37 dstokes kwargs?
02:37 stevednd so you can template your orch file
02:37 manfred it isn't helium anymore
02:37 dstokes ah, ok
02:37 manfred it is now 2014.7
02:38 stevednd look, it's been helium for eleventy-nine months now
02:38 stevednd it's still helium
02:38 stevednd at least that's how long it feels like I've been waiting for it to come out
02:38 manfred http://www.saltstack.com/salt-blog/2013/10/27/salt-version-numbers
02:38 manfred heh it has only been 6 months
02:38 dstokes omgeeee there's a 2014.7 tag :D
02:39 * dstokes updates bootstrap s/develop/2014.7/
02:40 stevednd 6 months feels like forever with all of the new functionality that it has that I've been waiting on
02:41 dstokes manfred: any plans for more frequent releases? seems scary to rollout 6 months worth of changes
02:43 manfred i mean... i only run develop
02:43 manfred ¯\(°_o)/¯
02:43 davet1 joined #salt
02:43 stevednd There's so much churn in develop though
02:44 davet joined #salt
02:45 dstokes lulz
02:45 Supermathie joined #salt
02:46 stevednd I think salt is at that awkward stage where it's old enough that it has most of what it needs to do, but at the same time, is still missing a lot of the polish which necessitates a fair amount of work
02:47 ika28101 joined #salt
02:48 manfred sure, i also don't actually have my own production environment that just can't be down for days because i broke something
02:48 manfred mostly just my playgrounds
03:02 ika28101 left #salt
03:04 fannet whats the easiest way to install develop on deb/ubuntu
03:05 manfred salt-bootstrap
03:05 manfred curl -sL https://bootstrap.saltstack.com | sh -s -- git develop
03:05 fannet can I use it to upgrade from an apt install or should i grab it fresh?
03:05 manfred fannet: http://docs.saltstack.com/en/latest/topics/tutorials/salt_bootstrap.html
03:05 fannet thx
03:05 manfred i would remove the apt install
03:06 mgw joined #salt
03:07 fannet thanks - one more question - can you trigger an action automatically upon a salt-key -A ?
03:09 fannet or really just force highstate once the key is accepted
03:12 manfred fannet: yes
03:13 manfred fannet: startup_states: highstate would be the best way
03:13 joehillen joined #salt
03:13 manfred http://docs.saltstack.com/en/latest/ref/states/startup.html
03:13 ramishra joined #salt
03:13 bchung joined #salt
03:14 fannet sweet for some reason im having a search fail w/ google today
03:15 manfred np :) there are a ton of docs for salt, sometimes it is hard to find them
03:15 fannet as a humorous side note im using puppet to install salt which will then remove puppet =)
03:16 manfred nice, kicking off puppet syncs was actually the original purpose for salt when it was first written.
03:16 manfred https://github.com/saltstack/salt/blob/develop/salt/modules/puppet.py
03:17 Eugene You're puppets.
03:17 fannet lol. i wish we knew that before we deployed our own solution to manage a few thousand puppet nodes
03:17 manfred heh
03:19 fannet foreman ended up solving most of our needs but still
03:28 ndrei joined #salt
03:28 bhosmer joined #salt
03:37 fannet hypothetically if I was to spin up a bunch of VMs and wanted them to be nginx servers. Would it be better for the VM to have nginx and everything pre-installed so that it would just be updated by salt or would it be better for salt to install from baseline onto the VM
03:37 MZAWeb joined #salt
03:38 Blacklite i would say it would be better to have salt install them
03:38 Blacklite because then if you decide to change your stack later on, you don't have to change the VM image
03:39 seanz joined #salt
03:41 fannet how about if speed-to-deployment is a big issue
03:42 fannet (node needs to be operational in < 60s)
03:42 manfred fannet: depends on what type of infrastructure you are coming from, in our datacenters, if you customize an image, it gets pull out of cloud files, which is so much slower than just using the base image
03:43 fannet we own all our own hardware so that part is fast
03:45 manfred then i would say just preinstall all your software, and just lay down configs
03:45 manfred when they start to get far out of date, you will want to make new images after updating
03:46 mgw joined #salt
03:46 fannet we were also contemplating coreos + docker and using salt to fire up / trash docker instances but that all seems too 'bleeding edge' for production
03:47 Blacklite yeah if speedy deployment is a requirement then you will likely have to do custom images
03:47 manfred meh, docker is really nice, and salt 2014.7 can manage them for you really well
03:47 manfred docker is pretty awesome
03:48 jalaziz joined #salt
03:48 fannet *sigh* I know...
03:48 manfred i am using it to containerize environments that setup for each tech to have the exact same environment setup for our internal tools
03:48 fannet hows the stability been
03:48 manfred and I control the backend, and just can update it and add stuff to it, and they each have their own volume mounted inside the container in /home
03:48 manfred it is pretty solid, I haven't run into any problems
03:49 manfred I am trying to get them to put coreos images on our internal openstack deploys, so that i can use that instead of ubuntu.
03:49 manfred i want to cluster them, and throw the authentication through ldap on a master node
03:50 fannet ok well good to know others are thinking the same way
03:50 manfred we have a docker shell, and then use nss's attribute overwrite to change their shell to a custom script that just drops them into a docker container created and tagged with their ldap user
03:50 manfred it is pretty solid
03:51 fannet sweet
03:51 manfred all of our default configs are in /etc/skel/home on the master, then docker has a -v '~/home:/home' -v '~/.ssh:/home/.ssh' so that they can also manage their .ssh/authorized hosts keys as well
03:52 manfred and the first time they login via ldap, it drops the home directory into their users home
03:52 manfred it is pretty slick once we figured it out
03:52 manfred we haven't rolled it out for wide use yet, i want to get the clustering part working first
03:56 kermit joined #salt
04:03 mosen joined #salt
04:05 oz_akan joined #salt
04:07 TyrfingMjolnir joined #salt
04:17 deepz88 joined #salt
04:20 ramteid joined #salt
04:30 ajolo joined #salt
04:37 ajw0100 joined #salt
04:42 mkoskar joined #salt
04:42 q1x joined #salt
04:45 oz_akan joined #salt
04:45 oz_akan_ joined #salt
04:53 higgs001 joined #salt
04:53 q1x joined #salt
05:01 skullone man, zmq is fast
05:01 mkoskar joined #salt
05:01 skullone id be interested to see performance with >1000 nodes
05:02 skullone how fast would ping be to respond from that many nodes?
05:05 higgs001 joined #salt
05:10 Sauvin joined #salt
05:12 q1x joined #salt
05:16 tligda joined #salt
05:17 bhosmer joined #salt
05:17 mkoskar joined #salt
05:18 ajw0100 joined #salt
05:18 q1x joined #salt
05:23 tligda joined #salt
05:27 fannet We have around 1000
05:27 fannet its VERY fast
05:27 robawt fannet++
05:27 fannet 1 datacenter on east coast and one west
05:28 tligda joined #salt
05:30 bhosmer joined #salt
05:34 skullone i have about 450 nodes in puppet right now, starting to test out salt and try my hand at it
05:34 ghartz joined #salt
05:38 fannet sweet thats how we deployed salt
05:39 fannet def stick with the stable branch lol
05:40 robawt yeah new features are fun to test on VM but stable is a nice place to be
05:40 robawt also while you read doc, lookout for version numbers in methods
05:40 robawt sometimes it's in the dev release
05:43 skullone yah, ill stick to stable
05:43 skullone we use puppet enterprise for that reason
05:43 robawt anyone work with the netapi?
05:43 robawt interested in cool tools people have built with it
05:46 skullone i dont even hate puppet, but its just getting on my nerves for small things
05:47 skullone puppet is a fantastic tool
05:48 mosen theres a few cases where it seems to get ugly
05:48 mosen and i say that even though i develop a few modules for puppet :)
05:49 stephanbuys joined #salt
05:50 mosen but i havent tested the limits of salt yet, and some people say jinja templating can get gnarly eventually
05:52 ajolo joined #salt
05:58 aw110f joined #salt
05:58 schimmy joined #salt
05:59 skullone if you get into gnarly on a CM tool, then maybe you shouldnt be doing it with CM, and find another way
06:00 skullone thats what im finding with puppet, not being able to easily express something, but salt clears a couple things up
06:01 mosen yeah im in a different situation, where just the ability to write in python clears some stuff up
06:01 aw110f_ joined #salt
06:03 schimmy joined #salt
06:04 m0nky joined #salt
06:08 Ryan_Lane joined #salt
06:12 poogles joined #salt
06:16 oz_akan joined #salt
06:30 Katafalkas joined #salt
06:30 roolo joined #salt
06:31 ndrei joined #salt
06:32 mosen joined #salt
06:38 saravanans joined #salt
06:40 saravana_ joined #salt
06:45 aquinas joined #salt
06:54 chiui joined #salt
07:06 bhosmer joined #salt
07:10 ml_1 joined #salt
07:10 yomilk joined #salt
07:12 alanpearce joined #salt
07:17 oz_akan joined #salt
07:20 Katafalkas joined #salt
07:20 tkharju1 joined #salt
07:21 oz_akan_ joined #salt
07:29 cDR__ joined #salt
07:39 saravanans joined #salt
07:40 tkharju2 joined #salt
07:41 linjan joined #salt
07:41 thehaven joined #salt
07:42 azmelanar joined #salt
07:48 saravanans joined #salt
07:51 topochan joined #salt
07:51 ajolo joined #salt
07:52 felskrone joined #salt
07:52 q1x joined #salt
07:58 saravanans joined #salt
08:00 jhauser joined #salt
08:01 ndrei joined #salt
08:01 tkharju3 joined #salt
08:16 SachaLigthert Everytime I switch to this channel, ready to ask a (stupid) question. I check online just one more time to see if I am not the only one. And I always find my answer. :)
08:20 tkharju4 joined #salt
08:24 pfallenop joined #salt
08:24 viq joined #salt
08:25 saravanans joined #salt
08:32 intellix joined #salt
08:32 CeBe joined #salt
08:32 TyrfingMjolnir joined #salt
08:34 Katafalkas joined #salt
08:41 luette joined #salt
08:51 Katafalkas joined #salt
08:54 matthiaswahl joined #salt
08:54 giantlock joined #salt
08:55 bhosmer joined #salt
09:05 derito joined #salt
09:08 saravanans joined #salt
09:11 darkelda joined #salt
09:11 darkelda joined #salt
09:12 miqui joined #salt
09:14 Debolaz joined #salt
09:14 tkharju joined #salt
09:14 Debolaz What's the correct way to install a .deb package from an url?
09:15 Debolaz Using "sources"?
09:16 babilen yeah
09:19 fxhp joined #salt
09:23 N-Mi joined #salt
09:23 greyhatpython joined #salt
09:29 derito Does anyone know if the onchange requisite coming in 2014.7.0 will activate the linked state every time or if it will act somewhat like ansible's notify/handler ? (eg. if a couple of the config files for service X are changed then salt will restart the service only once)
09:35 kivihtin joined #salt
09:37 ujujinsan joined #salt
09:37 jhauser joined #salt
09:38 Debolaz Hmm... salt bootstrap ignores -i now.
09:38 ujujinsan hi, I've got salt stack 0.17 branch installed. salt-master/salt-minion on ubuntu machines. I am trying to use group.present -members, however the group is not modified. addusers and delusers also does not seem to work.
09:38 ujujinsan Does this work on this system, I havent seen anything stating contrary in the docs
09:40 babilen ujujinsan: Could you try it with a recent release of salt? (i.e. 2014.1.7)
09:41 ujujinsan yeah sure, (it'll take some time )
09:43 babilen ujujinsan: You have to install the adduser package if you want to use adduser (rather than useradd), but then you are probably either after the user states directly or https://github.com/saltstack-formulas/users-formula
09:45 haegga joined #salt
09:47 ajolo joined #salt
09:49 TheThing joined #salt
09:55 luette joined #salt
10:02 topochan Hi, I am trying to configure gitfs with bitbucket and I have this beatuful error : 2014-07-24 09:21:30,736 [salt.loaded.int.fileserver.gitfs][WARNING ] GitPython exception caught while fetching: len([]) != len(['@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@', '', '', '', '', '', '', '', '', '', 'and the repository exists.'])
10:03 topochan someone know why I have this error?
10:08 tkharju1 joined #salt
10:08 TyrfingMjolnir_ joined #salt
10:08 saravanans joined #salt
10:09 saravanans joined #salt
10:12 babilen topochan: Does that happen with *all* bitbucket repos or just a specific one?
10:13 topochan it’s happening with my private repo, I configure deployment key to access to the server from salt and put in root user .ssh
10:13 workingcats joined #salt
10:13 topochan I made a ssh access to put in knowhost bitbucket
10:14 topochan babilen: and I remove the cache every time
10:15 babilen topochan: Can you clone that repo manually?
10:20 ggoZ joined #salt
10:20 m0nky joined #salt
10:23 mortis_ can i somehow call "salt-run manage.status" via salt-api?
10:25 topochan bailen: now works, it was the permission in the key files
10:25 mortis_ maybe client runner works, ill try
10:25 ujujinsan babilen: ok, it works now in 2014.1.7 vs 0.17, thanks!
10:25 topochan bailen: thanks, rechecking ssh clone I detect the problem
10:26 babilen topochan: Yeah, it always helps to check the basic functionality ... quite often it isn't really salt's problem, but the fact that it doesn't work if you do it manually either :)
10:26 babilen Glad you figured it out!
10:26 babilen ujujinsan: yay! :D
10:26 ujujinsan :):)
10:26 mortis_ client runner worked, nevermind my question :)
10:27 topochan babilen: the only issue was the error mesage, kinda weird
10:28 babilen Yeah, indeed horrible
10:28 ujujinsan man gpasswd | grep ldap
10:28 tkharju2 joined #salt
10:28 ujujinsan ups not here ^^
10:28 ujujinsan sory
10:29 babilen .oO( As long as you don't poweroff production boxes all is fine )
10:34 superted666 joined #salt
10:35 superted666 Hey all, quick question. When is Helium supposed to be released? I can see it in github and see the release notes but it's not yet listed as latest stable release so i'm not clear?
10:42 babilen superted666: I am not aware of a definite release date yet
10:42 babilen soon™ seems to be it :)
10:43 bhosmer joined #salt
10:49 tkharju3 joined #salt
10:50 superted666 I've hears that lots :( lol.
10:51 giantlock joined #salt
10:52 ghartz joined #salt
10:55 bhosmer joined #salt
10:58 oz_akan joined #salt
11:00 n8n_ joined #salt
11:10 tkharju4 joined #salt
11:12 saravanans joined #salt
11:17 ramishra joined #salt
11:19 m0nky joined #salt
11:20 mechanicalduck joined #salt
11:22 N-Mi joined #salt
11:24 saravanans joined #salt
11:24 higgs001 joined #salt
11:27 bhosmer joined #salt
11:30 tkharju joined #salt
11:31 hhenkel Hi all...I'm wondering if there is a way to check if a pillar file exists before I include it?
11:32 hhenkel Problem I'm currently facing is, that I'm able to have something like "hosts.{{ grains['domain'] }}.{{ grains['host'] }}" pointing to a file
11:33 hhenkel and salt "fqdn" pillar.items works
11:33 diegows joined #salt
11:34 ndrei joined #salt
11:34 hhenkel But once I do a 'salt "fqdn' state.highstate' I get a 'Pillar failed to render with the following messages: Specified SLS 'fqdn' in environment 'base' is not available on the salt master'
11:35 hhenkel Maybe some workaround like if file is not found use a default name "no-host-specific" or something like that?
11:35 hhenkel By the way the topic is rather old, 2014.1.7 is current...
11:35 masterkorp hello
11:35 masterkorp http://pastie.org/private/pyv965fdgyo7erpuiteq1w
11:35 hhenkel basepi: ^^
11:36 masterkorp what is this supposed to mean ?
11:38 hhenkel masterkorp: I don't know your sls but you are aware that including a file such as sensu.settings.sls will not work like "- sensu.settings" as the dots seperate slashes.
11:38 hhenkel arg, dots are like slashes therefore seperates directories
11:40 intellix joined #salt
11:40 elfixit joined #salt
11:51 kivihtin joined #salt
11:54 viq hhenkel: where are you referencing that fqdn that salt complains about?
11:54 hhenkel viq: top.sls in my pillar dir
11:55 viq hmm... And what's your purpose with this?
11:55 hhenkel viq: I'm looking for a way to load the file if it is there and if not do nothing as I can not be sure that a file exists for all of the 450+ servers
11:56 viq And that's pillars, right?
11:56 hhenkel viq: Mainly I got several files that set more or less common pillar information. I'm looking for a way to set that in some cases host specific.
11:56 hhenkel Yes, pillars, but I'm open for different approaches.
11:57 viq hhenkel: well, for that in the pillars I was doing if based on grains
11:57 viq but there are external pillar systems that may be easier to work with for that. One of them being reclass, but I haven't really looked at it personally. I believe there are others too
11:57 hhenkel viq: Grains are minion information - my problem is master centric
11:58 viq what do you mean?
11:58 hhenkel grains are minion information like kernel and stuff. I need to check if the file exists on in my pillar tree on the master.
11:58 viq File based on the grain information.
11:59 oz_akan joined #salt
12:00 hhenkel I was thinking about using the import mechanism of jinja2 with if and if it fails the files not there and I can set something different.
12:06 elithrar left #salt
12:08 bhosmer joined #salt
12:09 Outlander joined #salt
12:15 viq I guess that's another way to go about it
12:18 giannello joined #salt
12:18 saravanans joined #salt
12:21 pclermont joined #salt
12:24 MZAWeb joined #salt
12:28 saravanans joined #salt
12:28 Whissi joined #salt
12:30 Katafalkas joined #salt
12:30 poogles joined #salt
12:31 saravana_ joined #salt
12:32 bhosmer joined #salt
12:44 ndrei joined #salt
12:49 saravanans joined #salt
12:49 saravana_ joined #salt
12:56 blarghmatey joined #salt
12:57 m0nky joined #salt
12:57 derito left #salt
12:57 derito joined #salt
12:59 vejdmn joined #salt
13:01 mapu joined #salt
13:01 bhosmer joined #salt
13:04 saravanans joined #salt
13:08 saravana_ joined #salt
13:08 miqui joined #salt
13:09 jhauser joined #salt
13:11 racooper joined #salt
13:12 yomilk joined #salt
13:13 ajprog_laptop1 joined #salt
13:15 travisp joined #salt
13:17 elfixit1 joined #salt
13:20 saravanans joined #salt
13:28 gmoro joined #salt
13:35 Luonnon joined #salt
13:36 oz_akan joined #salt
13:36 intellix joined #salt
13:39 dude051 joined #salt
13:41 bhosmer joined #salt
13:42 quickdry21 joined #salt
13:43 FeatherKing joined #salt
13:45 kaptk2 joined #salt
13:45 arthabaska joined #salt
13:45 zandy joined #salt
13:54 vejdmn joined #salt
13:54 masterkorp http://pastie.org/private/wxj2mwjkp1apsd3ayi5jvw
13:54 masterkorp cloud some help me with this error ?
13:54 masterkorp i havr no idea what to take out of it
13:55 masterkorp i don't see what file and line its actually complaining about in the code
13:55 khodgson joined #salt
13:56 poogles joined #salt
13:58 DaveQB joined #salt
13:58 FeatherKing sensu.settings is the file
14:00 aquinas joined #salt
14:00 vejdmn joined #salt
14:00 ipmb joined #salt
14:02 supplicant running salt-call from cmd.run seems to make salt unhappy. is there something fundamentally wrong with doing that, or am I just failing to use the correct invocation
14:03 ramishra joined #salt
14:04 vejdmn joined #salt
14:05 housl joined #salt
14:06 aquinas joined #salt
14:14 derito Do you know if a state (eg. <service X> service.running) that watch multiple states (eg. <config file k> file.managed) will be applied multiple times if several of the states it watches change or if it will wait till all the states it watches are applied and then run once if one or more states changed ? Thanks
14:16 deepz88 joined #salt
14:16 iamtew joined #salt
14:17 vejdmn joined #salt
14:17 ramishra joined #salt
14:19 viq derito: I think it will run once
14:22 vejdmn joined #salt
14:22 Outlander joined #salt
14:24 vejdmn joined #salt
14:28 vejdmn joined #salt
14:29 ghartz joined #salt
14:30 bradbeam joined #salt
14:30 jslatts joined #salt
14:30 bradbeam left #salt
14:31 khodgson joined #salt
14:33 lazybear left #salt
14:36 vejdmn1 joined #salt
14:44 jalbretsen joined #salt
14:45 patarr are there any plans for a libvirt state that does more than just handle keys?
14:47 vejdmn joined #salt
14:50 luminous when using jinja macros, can you include/call a macro that is defined in another .sls?
14:50 luminous I know jinja has the ability to import, but you need to reference the template to import, and I haven't yet figured out the right way to do that for salt .sls
14:52 Supermathie joined #salt
14:52 CyanB left #salt
14:53 quickdry21 joined #salt
14:56 higgs001 joined #salt
14:59 ramishra joined #salt
15:04 dude051 joined #salt
15:06 masterkorp Guys hello me debug this error.
15:06 masterkorp http://pastie.org/private/5wqidjvducnevj7uwkhw
15:06 masterkorp i know that error is in the settings file
15:07 masterkorp but don't know what error it is
15:07 masterkorp http://pastie.org/private/zvhkof1qhrxkyleyf5q
15:07 masterkorp the file
15:07 masterkorp this worked perfectly on kitchen-salt
15:08 bhosmer_ joined #salt
15:09 Supermathie beyond the obvious (there is no "settings" key in __pillar__["sensu"]), nope wish I could help more.
15:09 dimeshake yeah it looks like a missing key
15:14 patarr If i have a bunch of different machines that i need to assign a unique id to in a managed config file, I would use pillar right?
15:14 patarr How do I assign different IDs to different machines?
15:15 wachuka joined #salt
15:15 wachuka howdy
15:16 wachuka do you guys think is a good idea to set a 'master' minion conf file to all my minions
15:16 wachuka 'push it to all my minions'
15:17 AlcariTheMad left #salt
15:17 wachuka ?
15:17 wachuka anyone
15:18 rallytime joined #salt
15:19 FeatherKing patarr: you could set a grain on them
15:21 masterkorp Supermathie: thanks
15:21 masterkorp root@salt-master:/srv/saltstack# salt "monitoring*" pillar.items sensu
15:21 masterkorp confirmed that
15:22 patarr FeatherKing: so that's more of a grain thing? I thought pillar was for giving particular machines particular values.
15:22 seanz joined #salt
15:22 Supermathie grains are for "facts" that don't change, pillars are for dynamic data?
15:23 FeatherKing pillar is more for sensitive data
15:23 maxskew joined #salt
15:23 FeatherKing known only on the master
15:23 patarr aaha makes sense
15:23 FeatherKing grains are set on the minions and are for data that is mostly unchanging
15:23 FeatherKing custom grains are easy to set and manage
15:24 FeatherKing i sometimes use pillar for a central location for storing an ip or something
15:24 FeatherKing so i only have to change it in the pillar
15:24 masterkorp patarr: basically grains are stuff that salt-minion extracts, pillar data is human setable
15:25 FeatherKing grains are hum setable
15:25 FeatherKing *human
15:25 masterkorp have a state that extracts the git commit your app -> to grains
15:25 TyrfingMjolnir joined #salt
15:25 masterkorp FeatherKing: true, but i avoid that
15:25 masterkorp want to set the production branch on your app -> to pillar
15:26 FeatherKing in all cases it just depends on what you are trying to store, there are too many ways to things
15:26 FeatherKing *to do things
15:26 masterkorp true that
15:26 masterkorp so many way to skin a cat
15:26 masterkorp so many diferent infrastrutures
15:29 alekibango joined #salt
15:34 UtahDave joined #salt
15:34 UtahDave left #salt
15:34 to_json joined #salt
15:36 conan_the_destro joined #salt
15:37 vejdmn joined #salt
15:38 patarr FeatherKing: that IP thing is sort of what I'm looking for. So I can configure it all in a central place. So you just have something like 'machine1*' - ip: value?
15:38 masterkorp another problem
15:39 FeatherKing you mean storing an ip in the pillar?
15:39 Luonnon left #salt
15:40 patarr And also, could anyone give me some tips on how to debug grians? I set a few test values in /etc/salt/grains but they don't pop up when I do a grains.items
15:40 patarr Yes FeatherKing
15:40 masterkorp patarr: you can just do salt "*" grains.get ipv4
15:40 patarr masterkorp: I think he meant something along the lines of having them in a pillar for static configuration perhaps.
15:40 viq patarr: did you restart salt-minion ?
15:40 patarr viq: derp. Thank you :)
15:41 FeatherKing in one of my pillars i have it setup ip: xx.xx.xx.xx
15:41 patarr but that would be applied to all minions wouldn't it? So its not a unique IP per minion?
15:41 FeatherKing then in the state file
15:41 FeatherKing the pillar has to match for the minion to have knowledge of it
15:42 FeatherKing so you could have a different pillar for different match cases or whatever
15:42 FeatherKing this pillar for dev, this for prod etc
15:42 dude051 joined #salt
15:42 FeatherKing and the ips different in those pillars
15:42 patarr Now I'm confused :(
15:42 FeatherKing think of it just like the states
15:42 FeatherKing you have states created?
15:43 patarr yes
15:44 FeatherKing so your states only execute when it matches some criteria
15:44 FeatherKing pillar works the same
15:44 FeatherKing there is a top.sls that matches
15:44 FeatherKing and applies a pillar
15:44 FeatherKing there is not just 'one' pillar, but there could be
15:44 FeatherKing do you have a pillar setup now?
15:45 patarr But let's say I want to apply a unique name to each of my minions. I would need to create a separate pillar for every single minion? And yes, I have a basic pillar set up.
15:45 patarr and by basic i mean test: bla
15:45 FeatherKing well what is the unique name? is it different than the minionid?
15:46 patarr Yeah it's different. Thing like MyClusterServer1
15:46 patarr It's a JBoss property.
15:47 FeatherKing will the unique name ever change?
15:47 patarr But I think I may understand what you previously told me. Inside my pillar for jboss, I can have jboss_name set and use a bunch of IF jinja tags based on hostname, some grain, or anything right?
15:47 patarr FeatherKing: I don't know.
15:48 viq patarr: yeah, you can have bunch of jinja in your pillar that decides on values etc
15:48 FeatherKing right if you template your standalone.xml or whatever using jinja tags
15:48 FeatherKing you can pull whatever from pillar
15:48 FeatherKing your pillar might be big if you have a lot of hosts
15:48 FeatherKing but jinja matching would probably take care of it
15:48 FeatherKing thats what i do
15:49 patarr I think I can devise a solution to my problem now thank to all your help.
15:49 viq jinja matching would make it bigger ;)
15:49 FeatherKing bigger but centralized
15:49 FeatherKing my biggest complaint with salt is i can do too many things
15:49 FeatherKing so which one do i want
15:49 patarr lol
15:50 FeatherKing lol
15:50 viq TIMTOWDY :P
15:50 FeatherKing ya
16:01 aquinas joined #salt
16:05 tligda joined #salt
16:08 Gareth morning
16:12 Comradephate joined #salt
16:21 smcquay joined #salt
16:22 vu joined #salt
16:23 CeBe joined #salt
16:25 schimmy joined #salt
16:27 troyready joined #salt
16:27 schimmy1 joined #salt
16:27 ndrei joined #salt
16:32 markm joined #salt
16:33 joehillen joined #salt
16:34 dude051 joined #salt
16:34 chiui joined #salt
16:38 jaimed joined #salt
16:40 ingwaem joined #salt
16:42 ingwaem greetings peops…anyone get this when running salt-cloud? Command: salt-cloud --list-images my-ec2-config
16:42 ingwaem response:   File "/usr/lib/python2.7/dist-packages/salt/cloud/clouds/ec2.py", line 265, in query
16:42 ingwaem root = ET.fromstring(exc.read())
16:42 ingwaem AttributeError: 'URLError' object has no attribute 'read'
16:43 ingwaem salt version : salt-cloud 2014.1.7
16:50 dude051 joined #salt
16:51 bbnix joined #salt
16:52 bbnix joined #salt
16:53 MatthewsFace joined #salt
16:54 bmatt what happens if I have two top.sls files; say, one in gitfs and one in file root?
16:54 bmatt and the environment conflicts?
16:55 manfred the first one is the one that is used iirc
16:55 bmatt so one clobbers the other?
16:55 q1x joined #salt
16:55 manfred ... it loads the first one it finds in the root heirarchey iirc
16:55 manfred same with all other .sls files
16:56 XenophonF bmatt: the idea is that you can have multiple environments, and they can overwrite one another
16:56 XenophonF so let's say you have a base environment, a dev environment, a test environment, etc.
16:57 XenophonF you can override states in your base environment by creating corresponding SLS files in the dev environment
16:57 forrest joined #salt
17:02 KyleG joined #salt
17:02 KyleG joined #salt
17:02 higgs001_ joined #salt
17:03 bmatt XenophonF: right, I'm mostly interested in environments having been defined in multiple places
17:03 khodgson joined #salt
17:04 arthabaska joined #salt
17:06 patarr any of you guys have a multiple environment multi master set up?
17:12 rap424 joined #salt
17:12 ingwaem joined #salt
17:13 rap424 joined #salt
17:16 whiteinge mortis_: did you get an answer to calling runners via salt-api?
17:18 stevednd whiteinge: will the new onfail functionality be available in the orchestration runner?
17:19 n8n joined #salt
17:19 stevednd I know it's supposed to be global, but I wasn't sure if that just meant in the scope of statefiles
17:19 druonysus joined #salt
17:19 druonysus joined #salt
17:21 Ryan_Lane joined #salt
17:23 vu joined #salt
17:23 rawzone joined #salt
17:24 patarr if i want to reuse certain states within multiple environments defined in the top.sls file, I would put the common ones in base and the environment unique ones in the other file roots?
17:24 patarr But then if I wanted to reuse a state, with a different configuration value, I would need to use pillar with a similar env set up?
17:25 ajprog_laptop1 joined #salt
17:27 gothix joined #salt
17:30 ekristen joined #salt
17:31 jalaziz joined #salt
17:31 whytewolf is it possable in salt to use file.recurse for copying a file out of an http source?
17:32 khodgson joined #salt
17:33 whytewolf s/ file / directory /
17:34 viq whytewolf: description specifies only salt:// as source
17:36 whytewolf :/ not a answer i was oping for.
17:36 forrest whytewolf, you could try it
17:36 viq though what's stopping you from cmd.run wget -r ?
17:37 whytewolf security. we are looking at disabling cmd.run it is just to powerful and dangerous.
17:37 forrest hah
17:38 whytewolf that and it is windows :P
17:43 aw110f joined #salt
17:44 patarr If I define "dev:" - /srv/pillar/dev in my pillar_roots, do I need a top.sls file in /srv/pillar or /srv/pillar/dev ?
17:44 whytewolf it is days like this i hate working in the gaming [as in gambling] industry. stupid security messures that have way to many work arounds
17:44 forrest yea, but those big gambling dollars
17:46 whytewolf lol. yeah that go into the big bosses private jet. not into my pocket or the projects.
17:47 conan_the_destro joined #salt
17:47 colinjohnson joined #salt
17:49 patarr I'm having trouble finding a pillar item I set. I have /srv/pillar/top.sls specifying a "dev" stanza and a reference to a folder named "jboss". That folder is /srv/pillar/dev/jboss
17:49 patarr When I do a salt-call pillar.items it doesn't appear in there.
17:50 patarr I see dev: - /srv/pillar/dev in my pillar_roots when I do a pillar.items
17:50 patarr and I see dev: - /srv/salt/dev in my file_roots
17:51 patarr Ah, it just started working :)
17:53 troyready joined #salt
17:53 higgs001 joined #salt
17:53 bhosmer joined #salt
17:54 austin987 joined #salt
18:04 topochan joined #salt
18:06 to_json joined #salt
18:07 diegows joined #salt
18:08 * patarr just got a hang of pillar and appreciates its power
18:08 patarr Salt is awesome. When Halite gets mature, this will be unbeatable.
18:09 KaaK joined #salt
18:11 whiteinge stevednd: yeah, all the new requisites should Just Work (TM) in the orchestrate runner
18:11 KaaK has anyone used pillar for storing things like SSL certs?
18:12 KaaK trying to address how great/bad of an idea this is
18:12 whiteinge KaaK: i have, yes
18:12 whiteinge it works fine. i like to put them into their own .sls file since it's pretty verbose
18:12 ajolo joined #salt
18:13 aw110f Hi, can someone suggest how to create a symlink only if the target directory exists?
18:13 Ryan_Lane aw110f: use onlyif
18:14 KaaK whiteinge, how/where do you store your pillar database? Do you take any steps to make sure your pillar database doesn't get compromised?
18:14 Ryan_Lane aw110f: http://docs.saltstack.com/en/latest/ref/states/requisites.html#altering-states
18:16 rushmore left #salt
18:16 patarr pillar database as in all the sls files?
18:16 aw110f Ryan_Lane: thanks, there's a file.exits but I don't see a "directory.exists"
18:16 patarr Just set appropriate permissions. Only permitted accounts have read access. Only the powerful have write.
18:17 patarr If it's on shared storage, make sure the network file system you're using supports encryption
18:17 druonysuse joined #salt
18:17 druonysuse joined #salt
18:17 patarr (during transport)
18:17 KaaK patarr, yeah, database as in the set of sls files on the filesystem and perhaps also in some form of VCS
18:18 patarr KaaK: treat it like any other sensitive file. The certs themselves are also only files, and have to be locked down on the machines they sit in.
18:18 kermit joined #salt
18:18 patarr So on the salt masters just make sure the cert.sls file has appropriate permissions/ACLs that you would use for your most sensitive files.
18:18 KaaK I should clarify that i have comparatively much fewer worries about the cert while it's in transit over the wire inside salts transport
18:18 ndrei joined #salt
18:19 patarr Salts transport should be secure yes. As long as the salt keys aren't compromised.
18:19 aw110f file.exists : Verify that the named file or directory exists…  I want to create a symlink to a target directory but what if the target has a file created instead of a directory
18:20 whiteinge KaaK: there are a few secure "at rest" options too. the gpg renderer is a new addition, or a couple of the external pillar options encrypt as well
18:20 KaaK currently my pillar data is in git on a private bitbucket repository -- would you keep the cert out of VCS?
18:20 Ryan_Lane aw110f: file.directory
18:21 Ryan_Lane aw110f: also, most of the file operations support makedirs, which will create all directories leading up to the resource
18:22 Ryan_Lane o
18:22 Ryan_Lane err
18:22 Ryan_Lane oh
18:22 Ryan_Lane aw110f: onlyif: test -d directory
18:23 KaaK whiteinge, you by chance have a link with details on the gpg renderer? This sounds pretty nice
18:23 Ryan_Lane onlyif and unless use actual shell commands
18:23 talwai joined #salt
18:24 aw110f Ryan_Lane: i think onlyif: test -d directory will work for me, thanks
18:24 whiteinge KaaK: doh. it's not in the docs yet. (i'll fix.) see here in the meantime: https://github.com/saltstack/salt/blob/develop/salt/renderers/gpg.py
18:24 Ryan_Lane cool
18:24 KaaK whiteinge, awesome! thanks
18:25 vu joined #salt
18:25 talwai Let me know if this is an unreasonable use case, but I would like to get Salt to print a confirmation message and require me to type [y/n] for commands sent to certain minions. For example, if i want an additional layer of insurance for the minion running my production webserver to make sure I don't accidentally send a command to the wrong minion
18:25 talwai is this possible currently?
18:26 forrest talwai, uhh I don't think so, when running states usually you'd just use test=True
18:27 whiteinge you could do it with a small amount of python glue by writing a custom runner that calls your states
18:27 talwai forrest: in which case, can I configure certain minions to always run commands with test=True, unless I explicitly override it?
18:27 Gareth Anyone running Salt on Debian/Ubuntu installed from packages?
18:28 forrest talwai, I don't believe so, but I have never thought to do that or tried to do so.
18:28 forrest Gareth, yea we are
18:28 whiteinge talwai: you can do that by putting ``test: true`` in your minion config
18:28 whiteinge makes all states run in test mode by default
18:28 forrest whiteinge, oh cool
18:28 Gareth forrest: can you do me a favor.  Check the dependancies on the salt-minion package?
18:28 Gareth forrest: and which distro?  Ubuntu or Debian?
18:29 forrest ubuntu
18:29 Gareth forrest: version?
18:29 talwai whiteinge: great to know, thanks! I'll give writing a custom runner a shot as well since I've been meaning to try my hand at that for a while
18:29 patarr I'm running on CentOS 6.5 and whenever I run a salt-call I get two INFO messages where I see it executing iptables --help and spitting out all the output. Has anyone experienced this?
18:29 forrest this box I'm on now has an old 2014.1.0
18:29 whiteinge forrest: yeah :)  weird side-effect of how we pass test=true mode down
18:29 Gareth forrest: what version of Ubuntu?
18:29 forrest this one is 12.04
18:29 forrest I have a 14.04 machine I can hop on
18:30 Gareth can you check both and see if dctrl-tools is installed?
18:30 Katafalkas joined #salt
18:31 roolo joined #salt
18:32 arthabaska joined #salt
18:32 forrest Gareth, yea dctrl-tools is installed on both 12.04, and 14.04, it is not a dependency for 2014.1.0, it is a dependency for 2014.1.3 (which the 14.04 machine is running)
18:33 talwai whiteinge: Do you know off the top of your head if passing test=False to a minion via the salt-master can override the test=True setting in the minion config?
18:33 Gareth forrest: Okay, cool.  Thanks. :) was tracking down a reported issue which looks to be because dctrl-tools isn't installed on an Ubuntu machine.
18:33 forrest Gareth, yea np
18:34 Gareth actually that's weird.  report mentions running 2014.1.7.
18:35 forrest Gareth, weird. Maybe it's only a requirement from 2014.1.3 onwards
18:35 conan_the_destro joined #salt
18:35 Gareth forrest: maybe...should be still in there for 2014.1.7 in that case.
18:35 forrest you'd think
18:38 whiteinge talwai: it is supposed to, yes. sounds like there may be a bug with that see: https://github.com/saltstack/salt/issues/10877
18:39 muzammil joined #salt
18:40 Gareth hm. nope.  still there.
18:43 forrest Gareth, did someone do an install with no deps?
18:43 Gareth Just asking how they installed.
18:51 ajolo joined #salt
18:56 MatthewsFace joined #salt
18:58 zandy_ joined #salt
19:01 to_json joined #salt
19:03 Ryan_Lane is there any way for me to include a pillar file in the pillar top file if it exists?
19:03 diegows salt-cloud only supports yaml, right?
19:03 Ryan_Lane I'm including stuff by convention and it's annoying to have to list it in the top file
19:04 Katafalkas joined #salt
19:11 Katafalkas joined #salt
19:13 peters-tx joined #salt
19:16 devinacosta joined #salt
19:16 devinacosta Did the Salt Minion configuration file change from /etc/salt/minion to /etc/salt/salt-minion ?
19:16 devinacosta I can't get the minions to log to log file any more.
19:34 gadams joined #salt
19:38 zandy joined #salt
19:38 manfred it is still /etc/salt/minion, but it can also be .conf files in /etc/salt/minion.d/
19:39 kermit joined #salt
19:46 Ztyx joined #salt
19:46 Ztyx Hey, is salt-master 2014.1.7 compatible with 2014.1.0?
19:47 Ztyx Oh, I means "2014.1.0 minions".
19:47 Ztyx s/means/meant
19:47 ml_1 joined #salt
19:50 ndrei joined #salt
19:54 manfred it should be
19:54 manfred it is still recommended to match versions as best as possible
19:54 forrest Gareth, did you figure it out?
19:55 manfred forrest: where was that stats page?
19:55 forrest manfred, http://bots.wmflabs.org/~wm-bot/dump/%23salt.htm
19:55 forrest hasn't updated in a few days
19:55 forrest manfred, that one right?
19:56 manfred yeah, did we ever figure out how Ryan_Lane got his name linked?
19:56 forrest manfred, nope
19:56 forrest I doubt anyone is actually reviewing that stats page anyways
19:57 manfred !reactors
19:57 manfred .reactors
19:57 manfred #reactors
19:57 forrest it's an exclamation mark
19:57 manfred !peer
19:57 manfred nothing
19:58 forrest yea like I said, stats haven't updated in a few days
19:58 manfred lol ok
19:58 forrest You can ask Seth about it if you want, but I doubt it's a priority
19:59 manfred ¯\(°_o)/¯
19:59 manfred i don't care that much was just curious
19:59 manfred ahh
19:59 manfred it is a wikimedia bot
19:59 manfred http://meta.wikimedia.org/wiki/Wm-bot
19:59 forrest ahh, makes sense why Ryan is showing up then
20:01 dstokes hey guys, is there anyway to configure 'fail hard' for an included sls? idea is to prevent outer states from running if requisite sls has any errors
20:01 manfred dstokes: yes
20:01 manfred one second
20:02 ghartz joined #salt
20:02 forrest dstokes, does your require chain not handle it?
20:02 manfred oh
20:02 manfred for an included sls... you can't do it on that level i don't think
20:02 dstokes forrest: i'm including an sls, and requiring it in an outer state. one of the states in the included sls fails, but the requiring state still runs
20:03 manfred you can only do it for all of the states or none iirc
20:03 oz_akan joined #salt
20:03 forrest dstokes, gotcha
20:03 Ryan_Lane !help
20:03 Ryan_Lane bot isn't here.
20:03 Ryan_Lane hm
20:04 forrest hasn't been here for 4-5 days Ryan
20:04 Ryan_Lane let me check on that
20:04 forrest oh you have access to it? Cool
20:04 dstokes forrest: https://gist.github.com/dstokes/4320c0f1925ec6b3c363
20:04 khodgson joined #salt
20:04 forrest dstokes, that seems odd, the require should be failing that out
20:04 forrest lol
20:05 dstokes so that's a bug then?
20:05 Gareth forrest: waiting to hear how salt was installed. I installed the package and it pulled in the dependencies.
20:05 forrest Gareth, gotcha
20:05 forrest dstokes, I don't know, I'd start by trying to put your cmd.run in the msls state with a requires of something you know will fali
20:05 forrest dstokes, see if it fails in the same sls.
20:06 mutante joined #salt
20:06 dstokes forrest: that _will_ prevent cmd.run from running, but that means i would need a require statement for every other state in mysls to catch errors..
20:06 forrest dstokes, ok let's try this then
20:07 forrest change that require: mysls, to require: item_in_mysls
20:07 forrest see if it still fails
20:07 Ryan_Lane !help
20:08 dude051 joined #salt
20:10 dstokes that's throwing errors. the failing state is actually in an sls included by mysls
20:10 dstokes mycmd -> mysls -> monitsls -> monit.service
20:10 vu joined #salt
20:14 NV joined #salt
20:17 sectionme joined #salt
20:18 mailo joined #salt
20:20 lionel_ joined #salt
20:21 Ryan_Lane is there any way for me to load pillars from the top file if they exist?
20:21 Ryan_Lane pillar files*
20:21 Ryan_Lane I'm matching via grains and would like to load a file named after the grain, if it exists
20:22 schimmy joined #salt
20:24 Katafalkas joined #salt
20:24 stevednd Ryan_Lane: I think the best you can do if define a bunch of pillars, include them all, and just wrap their contents in {% if grains['whatever']  -%}
20:25 manfred !reactors
20:25 Ryan_Lane bleh. definitely don't want to do that
20:25 manfred boo
20:25 forrest manfred, lol who cares
20:25 forrest just goog it
20:25 forrest *google
20:25 manfred heh
20:26 Ryan_Lane isn't there some way to get a list of pillar sls from the file_roots?
20:26 schimmy1 joined #salt
20:26 manfred i just want a bot so i can be like !states file.managed, and it links directly to that one
20:26 manfred it could be a dumb bot, that doesn't even check if the link is real, just spits it out concatenated
20:28 nlb joined #salt
20:28 ecdhe manfred, you could add a user parameter so the bot only spams the inquiring user...
20:28 ecdhe something link:
20:29 ecdhe *like
20:29 ecdhe manfred file.managed
20:29 forrest ecdhe, that defeats the purpose of the bot, it's supposed to be so we can just hit it and provide a link to someone who is asking a question I believe.
20:29 manfred if i did that, I would, but currently the bot does nothing :P
20:29 manfred forrest: that is what it would do, it would pm that user the link
20:29 forrest lol
20:29 jalaziz joined #salt
20:29 manfred !give forest states file.managed
20:29 forrest again, why not just google it?
20:29 vu joined #salt
20:29 forrest no way man, I don't want to start a bunch of PMs with people
20:29 forrest gets too distracting
20:30 forrest and then you aren't getting the eyes of other people on issues
20:30 manfred no, the bot would pm them
20:30 manfred not me
20:30 forrest ok
20:31 Ryan_Lane manfred: I'm working on getting the bot fixed
20:31 Ryan_Lane we have one, but it looks like maintenance was done in wikimedia labs and the bot maintainer is on vacation
20:31 manfred ahh ok :)
20:31 Ryan_Lane normally I'd go fix it, but I don't have ssh access to that from here
20:32 forrest besides manfred you don't want him to fix it, because then I'll be beating you for messages.
20:32 manfred heh
20:41 zandy joined #salt
20:43 ekristen joined #salt
20:46 gothix_ joined #salt
20:50 wm-bot4 joined #salt
20:50 Ryan_Lane !help | manfred
20:50 wm-bot4 manfred: I'm a documentation bot. To control me, please use #salt-bot to avoid channel spam. See this URL for my commands: http://meta.wikimedia.org/wiki/WM-Bot
20:51 manfred nice
20:52 forrest Ryan_Lane, did you have the guy on vacation log in to fix that? :\
20:52 Ryan_Lane no. there's a bunch of wikimedia labs admins
20:52 Ryan_Lane I got one of them to fix it
20:52 Ryan_Lane there's documentation
20:54 forrest Ryan_Lane, ok cool
20:54 to_json joined #salt
20:55 arthabaska joined #salt
20:55 tempspace Any hints on when 2014.7 is dropping?
20:56 manfred tempspace: it is already tagged
20:56 manfred 2014.7.0rc1 is supposed to be next week we hope
20:56 forrest manfred, pretty sure they are still bug fixing though
20:56 manfred they are
20:56 manfred but it is tagged
20:56 tempspace exciting times
20:56 forrest yea it's been tagged for a week
20:56 forrest or at least since Monday
20:57 forrest the guys have been MIA in here this week as well, so I imagine they're cranking on that
20:58 tempspace cool
20:58 viq joined #salt
20:59 to_json joined #salt
20:59 mpanetta joined #salt
21:00 andabata joined #salt
21:02 mpanetta joined #salt
21:02 Comradephate joined #salt
21:02 tligda joined #salt
21:03 rap424 Why would a minion complain about waiting for the master to accept its key when there is no master?
21:03 lionel_ joined #salt
21:05 whytewolf do you have file_client: local
21:05 rap424 yeah, I am using vagrant and the initial "vagrant up" works, but anything after doesn't
21:06 cnelsonsic joined #salt
21:07 whytewolf what does your minion file look like?
21:08 cnelsonsic left #salt
21:08 conan_the_destro joined #salt
21:10 rap424 http://pastebin.com/BfN278sV
21:12 zandy joined #salt
21:12 Katafalk_ joined #salt
21:12 lionel__ joined #salt
21:13 whytewolf and it works fine once, then stops working? is the first highstate changing the minion file?
21:15 Ryan_Lane stevednd: https://gist.github.com/ryan-lane/e3f3bd08b75942107e52
21:16 Ryan_Lane you can get the pillar roots from opts, then check to see if the file exists before you load it
21:16 yomilk joined #salt
21:16 bmatt is there anyway to avoid pkgrepo.managed states slowing things down a huuuuge amount?
21:16 bmatt it looks like it applies each repo, and then runs apt-get update twice :-\
21:16 rap424 Yeah, and what is strange is this wasn't happening in the first VM I provisioned. I wanted to make sure everything would work from scratch so I deleted my VM and recreated. The initial run worked, but after that calling "vagrant provision" from my host machine, or "salt-minion state.highstate" on the VM it doesn't work
21:17 FeatherKing in a state file what is the preferred way to grab a grain {{salt['grains.get'](grain_name)}} or {{grains[grain_name]}}
21:17 rap424 And no states modify the minion file
21:18 bmatt FeatherKing: short answer, salt[]()
21:18 FeatherKing kthx
21:18 FeatherKing that is what i have, just saw the other referenced in one spot
21:18 bmatt yeah, the older way works and is still okay, but it's less flexible
21:19 FeatherKing ok
21:19 whytewolf rap, strange. it sounds like it is ignoring that setting in the minion file after the first run. but i don't see any reason for that.
21:20 lionel_ joined #salt
21:22 rap424 whytewolf: Now it isn't working on the first run either. The only thing I changed were some SLS files
21:23 whytewolf can you pass -l debug to the run so that you can get more infor about where it is blowing up
21:25 rap424 it looks like it is waiting for itself to accept its own key
21:26 whytewolf are you syncing a keys folder or something?
21:26 Katafalkas joined #salt
21:27 rap424 nope
21:27 rap424 it's a pretty basic setup using Vagrant
21:31 bmatt rap424: and you're using salt.seed_master before you call highstate?
21:31 che-arne|2 joined #salt
21:31 rap424 bmatt: I am not
21:31 rap424 bmatt: there is no master
21:31 bmatt hm, let me read scrollback real quick
21:32 bmatt rap424: can you share your vagrantfile?
21:32 tligda joined #salt
21:33 rap424 http://pastebin.com/sEPRH184
21:34 spookah joined #salt
21:34 bmatt are you preseeding keys?
21:34 bmatt every time you burn down and restart, you get a new minion key
21:34 bmatt er, re-up
21:35 rap424 Not that I'm aware of. Should I be?
21:35 bmatt yeah - give me a sec and I'll give you an example courtesy of tedski
21:35 talwai Say I start a long-running script on a minion via cmd.run - is there a way to poll the minion for the scripts stdout *before* the script finishes execution? Or do we necessarily have to wait for the script to exit to have any idea what the stdout is?
21:36 bmatt rap424: check out https://gist.github.com/thenewwazoo/4eb91ea6787b9ddce29f
21:37 bmatt there's a master.pub and master.pem key in the vagrant directory, along with the relevant master.conf and minion.conf files
21:37 bmatt you can probably mostly ignore the master stuff, but the minion will be relevant
21:37 rap424 bmatt: Awesome, thank yoU!
21:37 bmatt in any case, you have to pay attention to how you handle minion keys
21:37 bmatt don't thank me, thank tedski
21:37 bmatt :)
21:38 bmatt s/thank/blame/g
21:38 rap424 haha!
21:48 kermit joined #salt
21:51 rap424 Now I need to figure out how to get back to a working state =)
21:54 mutante left #salt
21:57 lionel_ joined #salt
22:01 ajolo joined #salt
22:04 rap424 bmatt: Any idea how I would get back to a working state after adding minion_pub and minion_key? I re-upped my VMs and the same keys are being used, but it looks like the old keys are still expected
22:05 bmatt rap424: use salt-key to delete the keys cached in the master, restart the minion, re-accept the keys
22:05 CheKoLyN joined #salt
22:05 rap424 bmatt: I'm not sure where the master is =) it is a masterless config file, and when I installed the master on the minion to try that there were no keys listed
22:06 bmatt oh!
22:06 bmatt :-x
22:06 bmatt I have never used a masterless config, and I missed the crucial detail, sorry
22:07 bmatt I'm not really quite sure what to tell you now! :)
22:07 rap424 bmatt: oh well =) looks like I will just have to install a master now and see if that resolves the issues
22:08 rap424 bmatt: Thanks for the help nonetheless
22:09 Ryan_Lane rap424: what are you trying to do?
22:10 * Ryan_Lane runs masterless
22:10 rap424 Ryan_Lane: I am using vagrant to provision VMs with a masterless salt installation. I originally didn't have the minion_key/pub in my Vagrant file, and when I destroyed my first VM all subsequent VMs had trouble with the master accepting their keys
22:11 rap424 which is weird since there is no master =)
22:11 rap424 sorry, at this time, just one VM not VMs
22:12 bhosmer joined #salt
22:12 Ryan_Lane rap424: do you have install_master set?
22:12 Ryan_Lane also, do you have a minion config file/
22:12 Ryan_Lane it is pointed at a master? you should use using file_client: local
22:12 Ryan_Lane (and optionally also local: True)
22:12 rap424 Ryan_Lane: I don't have install_master set, and yes a config file is specified for the minion
22:12 zandy joined #salt
22:13 talwai Say I start a long-running script on a minion via cmd.run - is there a way to poll the minion for the scripts stdout *before* the script finishes execution? Or do we necessarily have to wait for the script to exit to have any idea what the stdout is?
22:15 rap424 Ryan_Lane: My current setup worked on the first VM I provisioned, but once I destroyed that and recreated it the log files say it is waiting for the master to accept the keys
22:15 Ryan_Lane yep. you need to make sure this is set in the minion config: file_client: local
22:16 Ryan_Lane otherwise it'll attempt to contact a master
22:16 Ryan_Lane also, it copies the file to /etc/salt/minion, so you probably need to remove it from the vm
22:16 Ryan_Lane I don't like the salt provisioner and don't use it :)
22:17 rap424 Ryan_Lane: file_client is set =)
22:21 Ryan_Lane no clue then :)
22:23 rap424 Ryan_Lane: Thanks though =) I'm sure it is a bug somewhere
22:23 Ryan_Lane ssh into the container and run salt-call state.highstate and see what happens
22:23 Ryan_Lane try to modify /etc/salt/minion until you get the settings right
22:24 ml_1 joined #salt
22:25 rap424 Ryan_Lane: Too late =) I am already on my way to creating a master and hopefully getting back up and running
22:32 chrisjones joined #salt
22:38 rap424 Ryan_Lane: looks like salt-call state.highstate works, I was using salt-minion state.highstate
22:38 rap424 Ryan_Lane: Maybe that is where my problem is from =)
22:38 Ryan_Lane yep. definitely the problem
22:38 aquinas joined #salt
22:39 Ryan_Lane salt-minion is the daemon as far as I know
22:40 bmatt hahah yes
22:40 bmatt salt-minion starts the daemon
22:40 bmatt salt-call makes the minion do things
22:41 bmatt :)
22:41 tkharju1 joined #salt
22:41 rap424 bmatt: wasted almost an hour working on that =)
22:41 bmatt oosp :)
22:41 yomilk joined #salt
22:42 DaveQB joined #salt
22:45 aquinas joined #salt
22:48 yomilk joined #salt
22:53 robinsmidsrod joined #salt
22:55 talwai Say I start a long-running script on a minion via cmd.run - is there a way to poll the minion for the scripts stdout *before* the script finishes execution? Or do we necessarily have to wait for the script to exit to have any idea what the stdout is?
22:55 Luke joined #salt
22:55 spookah guessing here but could you pipe the output to a file and run another command to read that file?
22:56 talwai spookah: ooh yeah, hadn't thought of that. thanks
23:00 Outlander joined #salt
23:01 spookah i have never used salt but good luck =]
23:02 talwai spookah: yea your approach works as you would expect it to, but it would be nice if salt had some native support for this kind of polling
23:03 alainv Is there a safer shorthand for ``salt['grains.get']('ip_interfaces')['eth0'][1]`` if I want it to e.g. fail to eth0 if there is no eth0:1 interface?
23:04 spookah talwai: +1
23:06 alainv oh I can just use jinja defaults instead of salt[] defaults can't I
23:06 alainv splendid
23:07 dimeshake joined #salt
23:12 zandy joined #salt
23:14 sectionme joined #salt
23:15 forrest left #salt
23:15 forrest joined #salt
23:16 mosen joined #salt
23:26 oz_akan joined #salt
23:29 seanz left #salt
23:29 seanz joined #salt
23:29 seanz forrest: ping
23:29 khodgson joined #salt
23:29 forrest seanz, what's up
23:30 seanz forrest: Hey, I was talking with you, whiteinge and retrospek the other day about my salt/Java woes.
23:30 seanz I got those issues resolved - turns out salt was handling include statements differently than I expected.
23:30 seanz I appreciate your help at the time. My salt state is working 100% at this point. :)
23:30 forrest ahh cool, nice!
23:32 seanz forrest: May I ask a probably rudimentary question about newer versions of salt?
23:32 seanz We're still at 0.16.4
23:32 ghartz joined #salt
23:32 seanz I'm just curious about how salt orders statements.
23:32 seanz I heard that salt uses an OrderedDict as of 0.17+. Is that true?
23:32 seanz Meaning do states execute in the order they're listed in the sls files?
23:32 seanz Starting from top.sls.
23:32 forrest seanz, yep, it executes 'in order'
23:33 seanz So if I had
23:33 seanz - vim
23:33 seanz - python
23:33 manfred yes
23:33 seanz And then I had 3-4 statements in each corresponding .sls, it's going to execute vim top to bottom, and then python top to bottom?
23:33 manfred so
23:33 manfred there are ways it can order
23:34 manfred the default is to execute in order
23:34 laubosslink joined #salt
23:34 manfred but iirc there is an option to do things lexigraphically, and then by require/require_in
23:34 sschwartzSanCarl joined #salt
23:35 sschwartzSanCarl Hoping someone here knows how to kill a job w/in salt: I'm getting " The function "state.sls" is running as PID 27175 and was started at 2014, Jul 24 23:18:26.928713 with jid 20140724231826928713" and it's refusing to run any other jobs on the server -- the job was hanging, so I killed it.
23:35 manfred seanz: http://docs.saltstack.com/en/latest/ref/states/ordering.html
23:35 manfred seanz: http://docs.saltstack.com/en/latest/topics/tutorials/states_ordering.html
23:35 seanz manfred: Ah, thanks - I was jes' 'bout to ask more questions.
23:35 manfred :)
23:36 seanz manfred, forrest, et al: Is raet in use yet?
23:36 seanz I'm curious how that is holding up.
23:36 manfred i use it
23:36 manfred it is pretty solid in my limited usage
23:36 seanz manfred: Do you like it better than zeroMQ? Do you notice any performance differences or anything?
23:36 sschwartzSanCarl (Note: Restarting minion and server both failed to clear that up.)
23:36 seanz Is salt behaving better overall or anything?
23:36 manfred so
23:37 manfred my environment isn't big enough
23:37 manfred to really test it
23:37 manfred or see any differences, but it is pretty solid, and I haven't had any problems with it
23:37 dimeshake sschwartzSanCarl: stop minion, make sure no other salt process still exists... i've seen dupes before in that kind of situation
23:37 manfred seanz: https://www.youtube.com/watch?v=SI5J43UkarM&amp;noredirect=1
23:38 forrest seanz, I'm not using rate
23:38 forrest and manfred beat me to the link I was going to post while I was talking to a coworker on the ordering :P
23:38 manfred :)
23:38 seanz forrest: Why not?
23:38 seanz manfred: Thanks again!
23:38 seanz One of the few times a link to a YouTube video isn't pointless. :)
23:38 manfred seanz: it isn't actually any tagged release of salt yet, it is just in the 2014.7 branch, which will have an rc1 soonish
23:42 manfred laubosslink: put your error and your code in a gist?
23:44 manfred forrest:
23:44 manfred laubosslink: don't paste directly into the channel please
23:44 forrest manfred, ?
23:44 manfred please put it in gist or a pastebin
23:45 forrest seanz, we just aren't using raet yet, other priorities.
23:45 forrest and we're on an older release that doesn't support it
23:45 manfred forrest: nevermind, thought you had op access
23:45 seanz forrest: Got it.
23:45 forrest manfred, nope
23:45 manfred yup, just checked the access list :P
23:46 manfred laubosslink: it is importing the xml module inside of salt source, and not your python xml module
23:46 manfred i don't have a solution for that
23:47 manfred wait, is your module file named xml.py ?
23:47 manfred laubosslink: rename it to xmlmod.py, and drop __virtualname__ = 'xml' into the file and return __virtualname__ in your __virtual__() funciton if you have one
23:47 manfred laubosslink: yeah
23:48 ajprog_laptop1 joined #salt
23:48 manfred laubosslink: https://github.com/saltstack/salt/blob/develop/salt/modules/linux_lvm.py#L13
23:48 manfred like how we do it with lvm
23:48 manfred so you can still reference your module as xml
23:50 svs_ joined #salt
23:51 manfred laubosslink: iirc, when doing an import in python, it checks the directory it is in first, and then checks your PYTHONPATH
23:51 manfred so when you import xml, inside of xml.py, i think it tries to import itself
23:52 manfred you put the two underscores on both sides of __virtualname__ ?
23:52 manfred you also need the module to have xmlmod.__virtualname__
23:52 manfred so it needs to be outside of the __virtual__() funciton too
23:53 manfred yeah, __virtual__() should return __virtualname__ iirc
23:53 manfred https://github.com/saltstack/salt/blob/develop/salt/modules/linux_lvm.py#L21 like that
23:54 manfred ahh ok :)
23:54 manfred all works now?
23:55 manfred :)
23:55 seanz left #salt
23:59 shallowaloe joined #salt

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