Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2017-01-18

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

All times shown according to UTC.

Time Nick Message
00:02 beardedeagle joined #salt
00:04 rylnd joined #salt
00:06 jagguli gtmanfred: thanks
00:07 jagguli does it work in pillar ?
00:07 aw110f Hi, how can i fix SaltReqTimeoutError: Message timed out ?
00:08 jagguli check your ports first ?
00:08 aw110f i have dual master with syndic to try to get this to go away but still
00:09 gtmanfred jagguli:no, because the master does not have pillars, if you wanted to schedule it using pillars, you would have to use saltutil.runner module to run a runner using a minion on the master like whytewolf described
00:10 jagguli ok thx
00:10 eprice joined #salt
00:10 jagguli aw110f: soemtime firewalls cause thes
00:10 whytewolf also bad networking
00:10 amontalban joined #salt
00:10 amontalban joined #salt
00:12 aw110f what network symptoms would relate to causing this issue? packet drops, frame errors etc…?
00:12 beardedeagle joined #salt
00:12 jagguli zmq keeps a persistent connection to the master afaik anything that might trip this ?
00:13 xbglowx joined #salt
00:16 aw110f wouldn’t the minion attempt to reconnect?
00:17 jagguli yep
00:19 jagguli basicaly you need to do some network level debugging, i've heard tcpdump can be used , i'd check if ports and hosts are correct, check the doco for firewall configuration
00:21 aw110f Thanks jagguli:
00:21 aw110f and whytewolf:
00:24 jaybocc2 joined #salt
00:36 Edgan MTecknology: I would say glacier makes the least sense. It is cheap to get in, but crazy to get out, and even crazier to get out fast. I wouldn't touch glacier unless it was a really well off company.
00:36 spiette joined #salt
00:37 Edgan MTecknology: The problem with AWS is that EC2 is hands down better than OpenStack on everything but cost. Business people don't have a problem in principle with paying for things, especially if they are better.
00:38 Edgan MTecknology: I say in principle, because in reality AWS can be very expensive, and they will complain when they bill gets too big.
00:39 Edgan MTecknology: I think the best of all worlds is a hybrid of on-premise and cloud, but people tend to have an all or nothing mindset.
00:39 Rumbles joined #salt
00:40 Eugene Glacier's pricing isn't silly any more
00:40 Edgan Eugene: Did they refactor it recently?
00:40 Eugene EC2 gets a lot cheaper if you buy Reserved Instances, which you ought to for anything thats on 24x7.... the burst pricing is jsut that: bursty.
00:41 Edgan Eugene: Reserved makes a lot less sense if you factor in price reductions that happen every year.
00:41 Eugene No different than physical hardware. Moore's law is dead, long live Moore'slaw
00:42 Eugene IIRC, you can even list a Reserved instance as a depreciating asset and get a tax benefit(just like physical!)
00:43 Eugene And yes, the Glacier price was changed Dec 1
00:44 Eugene https://aws.amazon.com/blogs/aws/aws-storage-update-s3-glacier-price-reductions/
00:46 rml joined #salt
00:59 rylnd is there a way to use mine.get to get only the desired value back, and not the dict of minion/value?
00:59 hemebond rylnd: You need to use Jinja to extract the value you want.
01:00 rylnd hemebond: yeah. i just thought there was another way than to use jinja
01:00 rylnd hemebond thanks
01:00 hemebond ????
01:02 dxiri joined #salt
01:05 edrocks joined #salt
01:07 cyteen joined #salt
01:11 amontalban joined #salt
01:11 djgerm is there a way to get an environments master such that I can populate that in a state? like… a salt util call?
01:13 hemebond djgerm: grains.get master
01:14 hemebond Not sure what you mean by an "environments" master.
01:15 djgerm uh yeah that's a loaded term huh? I meant like the master of a bunch of minions in the same "place"
01:15 djgerm i think that'll work. :face palm: so obviously
01:25 cy joined #salt
01:29 smcquay joined #salt
01:29 pppingme joined #salt
01:29 fxhp joined #salt
01:29 hackel joined #salt
01:29 dkrae joined #salt
01:29 Eugene joined #salt
01:29 mrueg joined #salt
01:29 NeoXiD joined #salt
01:29 eseyman joined #salt
01:29 jcl[m] joined #salt
01:29 weiwae joined #salt
01:29 alexlist joined #salt
01:29 sjohnsen joined #salt
01:30 pppingme joined #salt
01:30 jaybocc2 joined #salt
01:30 Guest56614 left #salt
01:32 lws joined #salt
01:33 dxiri joined #salt
01:34 tom29739 joined #salt
01:36 simmel joined #salt
01:39 APLU joined #salt
01:50 pipps joined #salt
01:51 dxiri joined #salt
01:53 zifnab reserved instance pricing is stupid
01:53 hemebond ?
01:53 zifnab conversation from earlier
01:53 zifnab just chiming in hours late
01:53 hemebond ????
01:54 zifnab google did the correct thing with GCE i think
01:54 zifnab monthly sustained usage discounts
01:54 zifnab pay more if you keep an instance up for a month
01:54 zifnab er, wow, "pay less if you keep something up constantly, pay more if you're not doing that"
01:56 jaybocc2 joined #salt
02:14 jaybocc2 joined #salt
02:20 dxiri joined #salt
02:27 jessexoc joined #salt
02:33 voxxit joined #salt
02:38 qzhillc left #salt
02:39 pipps joined #salt
02:39 MTecknology edgan left? dangit
02:41 MTecknology I thought aws glacier was rather inexpensive to get into. You can store lots of data for a long time for very cheap. However, ya, the idea is to never actuall need to pull anything from it.
02:43 k_sze[work] joined #salt
02:46 jaybocc2 joined #salt
02:46 mpanetta joined #salt
02:48 ilbot3 joined #salt
02:48 Topic for #salt is now Welcome to #salt! <+> Latest Versions: 2016.3.4, 2016.11.1 <+> Support: https://www.saltstack.com/support/ <+> Logs: http://irclog.perlgeek.de/salt/ <+> Paste: https://gist.github.com/ (please don't multiline paste into channel) <+> See also: #salt-devel, #salt-offtopic <+> Ask with patience as we are volunteers and may not have immediate answers
02:49 catpigger joined #salt
02:56 mage__ joined #salt
03:00 yuhl___ joined #salt
03:01 mpanetta joined #salt
03:07 edrocks joined #salt
03:14 eprice joined #salt
03:14 evle joined #salt
03:15 dxiri joined #salt
03:17 bwellsnc joined #salt
03:18 bwellsnc joined #salt
03:20 bwellsnc joined #salt
03:21 amontalban joined #salt
03:21 amontalban joined #salt
03:27 bwellsnc I have a quick question, total noob here.   I am using salt with foreman and in order to have reporting working correct, they want this added to the cron job that runs every 10 minutes:  salt '*' -b 1000 state.highstate... If I understand this right, if I do have changes, then it will apply them to all my hosts correct?  I don't want to apply something unless I want to, I just want to do a check if the files are good or not and report
03:27 bwellsnc that back to foreman.
03:28 hemebond Yes, that will apply all changes to all hosts every 10 minutes.
03:28 hemebond In batches of 1000
03:28 hemebond That seems ridiculous.
03:28 PatrolDoom agreed
03:29 PatrolDoom bwellsnc: well technically you're supposed to already have everything "known" in regard to a highstate
03:29 PatrolDoom i mean i'm not to that point
03:29 PatrolDoom i want to be
03:30 bwellsnc True, but unless this is run periodically it reports back to foreman as being out of sync
03:30 bwellsnc I was curious if there is something that would do this better
03:30 bwellsnc Here is the page:  https://theforeman.org/plugins/foreman_salt/7.0/index.html#4.7.1Scheduling
03:30 PatrolDoom there is a option "test=True/False"
03:30 PatrolDoom but idk how that would work w/ foreman
03:31 bwellsnc huh, there is only one way to find out
03:31 bwellsnc this setup isn't fully in production yet
03:31 mpanetta joined #salt
03:32 PatrolDoom one day ill integrate salt w/ other tools
03:32 PatrolDoom one day
03:33 bwellsnc Ok, that worked, just have to add test which I think will be a little safter
03:34 PatrolDoom cool
03:34 PatrolDoom bwellsnc: so you've used the uri provided to integrate w/ foreman>
03:34 sh123124213 joined #salt
03:34 bwellsnc Yep
03:35 bwellsnc all this work to avoid using puppet/foreman, so worth it
03:35 PatrolDoom heh agreed on that
03:35 bwellsnc It's actually katello, which is the upstream of redhat satellite
03:36 PatrolDoom oic
03:37 beardedeagle I hear foreman has a nice reporting dash for salt
03:38 bwellsnc Yep, it isn't too bad, moves the pillars to be foreman parameters
03:41 PatrolDoom bwellsnc: so you can pragmatically define pillars?
03:41 PatrolDoom mmm thats what i want
03:43 beardedeagle I kinda do that
03:44 beardedeagle But I cheat
03:48 bwellsnc Yep
03:49 bwellsnc This is my elasticsearch.yml file for my dev environment: http://pastebin.com/atiDSiKJ
03:51 bwellsnc This is a pillar snippet: http://pastebin.com/p6S8P4sc
03:52 bwellsnc these options are set in the host parameter section in either the host group and/or in the host itself
04:05 rakila joined #salt
04:19 combinare joined #salt
04:34 netcho joined #salt
04:40 combinare left #salt
04:41 sh123124213 joined #salt
04:47 justan0theruser joined #salt
04:56 impi joined #salt
04:58 dxiri joined #salt
05:23 amontalban joined #salt
05:25 ruxu joined #salt
05:27 hardyfresh joined #salt
05:42 raspado joined #salt
06:06 hemebond joined #salt
06:09 preludedrew joined #salt
06:09 samodid joined #salt
06:09 edrocks joined #salt
06:16 eprice joined #salt
06:25 amontalban joined #salt
06:25 amontalban joined #salt
06:34 dariusjs joined #salt
06:35 ivanjaros joined #salt
06:35 netcho joined #salt
06:40 bocaneri joined #salt
06:45 bocaneri joined #salt
06:45 mavhq joined #salt
06:54 dariusjs_ joined #salt
07:11 sh123124213 joined #salt
07:15 SaucyElf joined #salt
07:18 rpb joined #salt
07:23 teclator joined #salt
07:24 bluenemo joined #salt
07:25 amontalban joined #salt
07:25 bluenemo hi guys. I'm trying to use mine.send in a state. It works good so far: http://paste.debian.net/909269/ however I cant figure out how to set the actual name of the mined data. In this case it is "cmd.run" - this is not a function but the name the mined data was being assigned in line 6 of my paste, and is given as name argument in line 12. How do I change this "cmd.run" name to "foobar"?
07:25 jaybocc2 joined #salt
07:35 ronnix joined #salt
07:37 onlyanegg joined #salt
07:38 rakila joined #salt
07:41 saintpablo joined #salt
07:43 iggy you can set the alias
07:45 dxiri joined #salt
07:49 debian112 joined #salt
07:50 bluenemo iggy, giving - alias: foobar to mine.send or giving it via - kwargs: \n alias: foobar doesnt work :(
07:50 q1x joined #salt
07:50 bluenemo - m_alias: foobar also doesnt
07:51 netcho joined #salt
07:59 iggy to do alias'es, your kwargs probably becomes a dict
08:00 iggy (never done it, but that's what I'd guess based on reading the docs)
08:01 iggy so - kwargs:\n  foobar:\n    cmd: echo foobar
08:04 impi joined #salt
08:04 bluenemo iggy, but kwargs gives kwargs to the actual cmd.run function - when i make this a dict, cmd.run will fail with wrong arguments (says  Module function mine.send threw an exception. Exception: run takes at least 1 argument (0 given)) for this example: http://paste.debian.net/909272/
08:05 bluenemo according to this it just takes the state id: https://github.com/MadeiraCloud/salt/blob/master/sources/salt/modules/mine.py#L133
08:05 bluenemo i dont find any other code for that which confuses me even more, as I know how it works with mine_functions in pillars..
08:06 bluenemo also specifying name, m_name, id or m_id on both places (as arg to mine.send and as kwargs to cmd.run) doesnt work
08:10 bluenemo hm. no idea :/
08:12 edrocks joined #salt
08:12 bluenemo from my understanding the current implementation of the mine.send module lacks the option to set the id of the mine data id thingy (am I wrong?). I'm trying to find the code for the module_functions magic in pillars but cant find it.
08:13 bluenemo ah sry mine_functions
08:18 bluenemo eh reading a fork.. have to get more coffee..
08:18 darioleidi joined #salt
08:25 barmaley joined #salt
08:26 K1412 joined #salt
08:28 JohnnyRun joined #salt
08:31 bluenemo didnt find a solution and opened an issue: https://github.com/saltstack/salt/issues/38800
08:31 saltstackbot [#38800][OPEN] How can I set the mined data's ID when using module.run mine.send in a state | Description of Issue/Question...
08:33 moeyebus9 joined #salt
08:36 netcho_ joined #salt
08:45 saintpablos joined #salt
08:54 ronnix joined #salt
08:58 fredvd joined #salt
09:03 s_kunk joined #salt
09:03 s_kunk joined #salt
09:13 ponyofdeath joined #salt
09:19 eprice joined #salt
09:20 samodid joined #salt
09:22 Rumbles joined #salt
09:26 amontalban joined #salt
09:26 amontalban joined #salt
09:31 John_Kang joined #salt
09:32 John_Kang hi there, is there a way to preserve the permissions when using file.recurse ?
09:37 jaybocc2 joined #salt
09:38 jeddi joined #salt
09:39 keimlink joined #salt
09:52 saltnewbie joined #salt
09:52 saltnewbie hello, when minions are connected to master/syndic. Do they pull the states to be applied on them at an interval?
09:53 jaybocc2 joined #salt
09:55 saltnewbie Scenario#I have state to make sure ntp is inatalled, running and file is in sync. When I apply the state on a target it works fine and does the necessary changes. Now if the conf is changed on minion and not in sync, how would that be enforced to the conf defined in the state and when will that happen?
09:56 slanders joined #salt
09:58 babilen saltnewbie: Local changes do not trigger any changes to states and would stay until the next time you apply the state
09:59 slanders Hi All, I was wondering is there a easy way to test jinja templates? Something like "salt-call test.template salt://something/files/thisone.jinja"?
09:59 Rumbles joined #salt
09:59 babilen saltnewbie: State application is done explicitly, but can be scheduled to occur at regular intervals if that is what you want
09:59 saltnewbie yep, that's exactly what I want and only for certain states
10:01 babilen saltnewbie: Look into https://docs.saltstack.com/en/latest/topics/jobs/#scheduling-jobs -- I'd define schedules in the pillar as that is the easiest way to keep them up-to-date.
10:06 stareyes joined #salt
10:09 ronnix joined #salt
10:11 sh123124213 joined #salt
10:12 N-Mi_ joined #salt
10:12 Trauma joined #salt
10:14 moeyebus9 joined #salt
10:21 saltnewbie babilen: Many thanks
10:25 oida joined #salt
10:25 ronnix joined #salt
10:26 saltnewbie is it wise to schedule a state to accept minion keys. if the env consists of 10000 minions ?
10:27 Hybrid joined #salt
10:28 Kelsar package.latest shouldn't reinstall the package on every invokation or should it?
10:31 babilen saltnewbie: You don't need a state for that, but you can either use https://docs.saltstack.com/en/latest/ref/configuration/master.html#auto-accept or a reactor as detailed on https://docs.saltstack.com/en/latest/topics/reactor/ (→ A COMPLETE EXAMPLE)
10:36 saltnewbie Thanks again babilen.
10:40 Score_Under joined #salt
10:43 Score_Under Probably asked this before but, is there a way to order states between different SLS files, creating a strong ordering like "require" but without requiring the first state to succeed?
10:45 avalarion joined #salt
10:48 avalarion Hey ho, is there a way to collect information from other cookbooks / role / however it is named?
10:48 avalarion Role A and B are creating an array or adding things to an array and role C has an array of things to do.
10:49 avalarion I need to collect some urls from different roles and do stuff with them per server, but I do not know which urls are required for which server so I would love to have this information available and collected in salt
10:50 Kelsar avalarion: sounds like a job for mine
10:52 avalarion Kelsar: do you know a keyword within the job to collect data?
10:53 Kelsar avalarion: https://docs.saltstack.com/en/latest/topics/mine/
10:54 avalarion perfect, thanks, I am going to read =)
10:54 _JZ_ joined #salt
11:13 ronnix joined #salt
11:13 edrocks joined #salt
11:18 amontalban joined #salt
11:18 amontalban joined #salt
11:20 eprice joined #salt
11:30 amontalb1n joined #salt
11:37 ronnix joined #salt
11:42 ronnix joined #salt
11:44 babilen I'm running into problems in that Saltstack is not enabling Elasticsearch services in systemd. This is, probably, due to the fact that ES decided to do the rather unfortunate thing of shipping both a sysvinit script and a unit file in the same package and salt seems to default to the former.
11:46 babilen So salt runs "usr/sbin/update-rc.d -f elasticsearch defaults 99" rather than "systemctl enable elasticsearch.service".
11:47 babilen If you ran into this issue I'd love some input
11:47 reith joined #salt
11:48 Score_Under As far as I can tell with a quick glance at the source, the systemd module for salt should be calling "systemctl enable ..." directly after it calls "update-rc.d -f ... defaults 99"
11:49 Score_Under actually, I misread :/
11:49 Score_Under It chooses one or the other.
11:49 Score_Under It checks "if name in _get_sysv_services():"
11:49 babilen Yeah .. and I'd like it to default to the init system that is actually being used
11:49 babilen :)
11:49 babilen I know .. radical idea!
11:49 Score_Under yeah, that's a bit of an odd one isn't it :D
11:50 babilen I guess I have to code around that issue and report a bug
11:50 Score_Under It looks like an oversight, like it wasn't expected that people would have both types of services simultaneously
11:50 Score_Under I wonder if you can get away with specifying "elasticsearch.service" or whatever it's named
11:51 Score_Under (i.e. include the .service extension so that it doesn't match the sysvinit script)
11:51 babilen That is an idea and might be a short time workaround
11:52 Score_Under oddly enough, the check for disabled/enabled prioritises the systemd service over the sysvinit one
11:52 Score_Under so there's definitely a bug there
11:53 babilen Yeah, I was just looking at the code and see that it is not doing what it should. This also results in the behaviour that the state *is* enabled in systemd on subsequent runs.
11:54 babilen Thanks for your second pair of eyes!
11:54 kbaikov joined #salt
11:54 babilen I'll have lunch and will sort it out afterwards
11:58 amcorreia joined #salt
11:59 daxroc Anyone see issue with the following pillar item ( not working for me ) hosts: {{ salt['saltutil.runner']('mine.get')('G@ec2_tags:Cluster:Ether','agent_uuid',tgt_type='compound') }}
12:01 om2 joined #salt
12:04 jaybocc2 joined #salt
12:11 keimlink joined #salt
12:13 sh123124213 joined #salt
12:15 chron0 is anyone using pkgrepo.managed: with a ppa? I was trying to add https://launchpad.net/~ondrej/+archive/ubuntu/php but it fails with
12:15 chron0 E: There were unauthenticated packages and -y was used without --allow-unauthenticated
12:15 chron0 even though I've added keyid and keyserver
12:16 ronnix joined #salt
12:16 chron0 it seems to be working with skipverify but that leaves the apt sources.list still in a weird state when trying to do stuff on the console
12:16 chron0 I'd like to have salt add the ppa and add the key for it
12:16 chron0 is there a trick I haven't figured out yet?
12:20 jaybocc2 joined #salt
12:27 onovy joined #salt
12:29 sfxandy joined #salt
12:30 J0hnSteel joined #salt
12:30 sfxandy hi everyone.  cant see a particularly elegant way to do this .... but what is the best method of getting Salt to execute a command only when a service has fully started?  at the moment my orchestration runs through and a cmd.run is kicked off which attempts to connect to a host i suspect before the service is fully started. any suggestions?
12:31 daxroc poll that the service has started and is in the state that you expect ?
12:31 rylnd joined #salt
12:31 daxroc sfxandy: What kind of service?
12:31 sfxandy daxroc, its an Ambari server
12:32 daxroc you could use the http.wait_for_successful_query to hit the webui
12:33 daxroc or netcat on the port - you would also need to ensure netcat is installed
12:34 sfxandy daxroc, ok sounds interesting.  i notice the http.query state has a wait_for parameter...
12:35 daxroc there is also a http.wait_for_successful_query - it defers to http.query but sets optional args I think
12:35 sfxandy cant find that documented...
12:35 sfxandy ah ok
12:36 sfxandy got it
12:36 daxroc https://docs.saltstack.com/en/latest/ref/states/all/salt.states.http.html#salt.states.http.wait_for_successful_query
12:36 sfxandy yeah got it
12:36 daxroc Its a bit rough but will get the job done
12:36 sfxandy ok will give that a bash, thanks
12:37 sfxandy bitrough perhaps, but its neater than polling the service with some botched cmd,run state
12:40 daxroc it will bruteforce thats my only issue with it - i've a patch in the works to timedelay the requests
12:40 bhosmer joined #salt
12:40 sfxandy sounds good
12:40 sfxandy is that via a parameter, or a hard-coded delay?
12:41 daxroc it will default to 1 second between requests but is configurable
12:41 sfxandy nice.  status of that patch?
12:41 daxroc Not submitted later this week
12:41 sfxandy ok
12:41 sfxandy i'll be interested in that for sure
12:42 sfxandy can think of half a dozen or so use cases where that would solve a lot of headaches
12:42 daxroc It will work fine without just send a couple of hundred requests.
12:42 netcho_ joined #salt
12:44 sfxandy ok thats worked a treat
12:44 sfxandy polls the UI perfectly
12:45 daxroc IIRC there is an ambari api endpoint to query if the services are all started etc might be one to lookout for
12:47 sfxandy there are several service endpoints for sure.  not sure which is the best to query but the UI works for now.
12:52 swills joined #salt
12:56 xbglowx joined #salt
12:56 jaybocc2 joined #salt
13:02 ronnix joined #salt
13:05 cyteen joined #salt
13:08 binocvlar joined #salt
13:11 jaybocc2 joined #salt
13:12 debian112 joined #salt
13:13 netcho_ joined #salt
13:16 babilen sfxandy: Can you get the service to communicate once it is done? You could think of firing an event to the master in that case or make a salt API call.
13:16 babilen (as alternative to busy waiting)
13:20 daxroc babilen: how's the form?
13:22 stewgoin joined #salt
13:24 daxroc babilen: I don't think it is - it's a third party service. You could probably have the service init try trigger an event but that's probably going to result in the same issue. Polling for the service is probably the cleanest method. I'm doing similar service polls here - other examples I've seen use netcat but that requires an extra package and usually only
13:24 daxroc works with cmd.run
13:25 babilen Fair enough - It was just an idea to essentially let the service let salt know when it is ready
13:26 daxroc If it was an internal service maybe but that's a slippery slope muddying the cfg-mgmt / application domains
13:28 daxroc I've a question on the mine_functions we talked about last week
13:28 edrocks joined #salt
13:28 babilen Sure
13:29 daxroc I'm now making the mine.get request populating a pillar - this works for the private_ips custom function , when I try to retrieve the agent_uuids I get no response - no data. But if I make the query using the salt cli i do get data. I'm confused on this a little
13:29 edrocks joined #salt
13:30 babilen There is no reason why one would work and the other doesn't. Therefore you'd have to figure out what the difference is, I guess
13:31 daxroc set beta_agents = salt['saltutil.runner']('mine.get', tgt='*', fun='private_ips', tgt_type='glob')
13:32 daxroc Would/could it be that my 'agent_uuid' is based on a custom grain ?
13:33 _Cyclone_ joined #salt
13:33 daxroc using grains.item should I be using grains.get
13:35 Kelsar daxroc: got that problem, with recent salt versions i get the things different as before. everything is under a sub key... returnvalue or something. dunno if that change is intended
13:35 babilen daxroc: Could you run "salt 'your_minion' saltutil.sync_all", "salt 'your_minion' saltutil.pillar_refresh", "salt 'your_minion' pillar.get $YOUR:PILLAR:PRIVATEIP" and "salt 'your_minion' pillar.get $YOUR:PILLAR:AGENTUUID"
13:35 babilen Ah, throw in "salt 'your_minion' grains.get private_ips" and "salt 'your_minion' grains.get agent_uuid"
13:36 babilen Paste ot one of http://paste.debian.net, https://gist.github.com, http://sprunge.us, …
13:36 beardedeagle joined #salt
13:36 babilen Pasting the respective pillar wouldn't hurt either, I guess
13:38 rubenb Hi, the Windows Minion shows a "Non-Sucking Service Manager (nssm.exe)" process, is there some way to rename this to something that looks mildly more professional?
13:38 daxroc as kelsar has mentioned it does return the subkey for the grain
13:38 babilen rubenb: As in the windows salt minion?
13:39 daxroc http://paste.debian.net/909321/
13:39 rubenb babilen: Yes, that appears to be a service manager for the salt-minion.
13:39 babilen daxroc: For both? It really is tricky to debug this without the information above and the mine_functions you use :)
13:40 babilen rubenb: That's unfortunate ..
13:40 babilen https://nssm.cc/
13:41 babilen Unless you get salt to use a different service manager you will, I guess, have to live with this unfortunate decision by the author of nssm
13:41 daxroc The pillar + mine_functions
13:41 daxroc http://paste.debian.net/909324/
13:41 rubenb http://imgur.com/a/Bc0Jp
13:43 babilen rubenb: Yeah, I believe you.. it is just that SaltStack didn't develop that software (from what I can tell), but simply uses it to manage the service on Windows (why Windows can't do that on its own is beyond me)
13:44 babilen Doesn't MS Windows have service managers/init systems?
13:44 rubenb It has, but  I think it's of the sucking variety, hence the need for nssm. :)
13:44 Score_Under It does. It can be controlled from services.msc
13:45 Score_Under But defining services on Windows is needlessly complex (as you would expect)
13:45 babilen rubenb: Feel free to file a bug in salt to ask them to use software with a more professional name. :)
13:46 babilen I haven't really touched Windows in 17 years .. how do people cope?
13:46 rubenb babilen: It has it's perks.
13:47 rubenb hardware support is generally better.
13:47 Kelsar babilen: maybe you got an idea on this: https://gist.github.com/RealKelsar/1340261b5e4313042c4b074e5f77f645
13:47 babilen daxroc: Are you also pasting the output of the aforementioned commands? So far I haven't seen that "subkey" you mentioned.
13:47 babilen Or maybe it is all clear now and you sorted it out already :D
13:47 daxroc Sorry had to step away : not so lucky :D
13:49 babilen Kelsar: Not right away I'm afraid -- 2016.3.4 seems to do exactly what I would have expected
13:50 Kelsar babilen: yes, i know, downgraded my stuff for now. I asked some days ago, if that was a intended change. i probably just should make a bug report
13:50 Miouge joined #salt
13:51 wangofett joined #salt
13:51 babilen Kelsar: Bug report sounds right. Something must have broken the runner return value there.
13:51 daxroc The sync + pillar refresh I had been doing. but the output returned from pillar.items http://paste.debian.net/909325/
13:52 wangofett joined #salt
13:53 babilen What does the correspondig grains.get call return? What if you call mine.get on the command line?
13:53 daxroc Returns the same as the pillar call
13:53 daxroc *mine.get on teh cli returns the same as the pillar mine.get
13:54 daxroc wow... mine.update damn it !
13:55 Brew joined #salt
13:57 daxroc babilen: what should update the mine ?
13:59 babilen What do you mean? The mine is updated with a "mine.update" call as you (apparently) just found out?
13:59 babilen So *all* of these calls return nothing?
14:00 daxroc Working now after running mine.update. As I understand it the mine is updated at checkin/completion. You can force the mine update with mine.update: state. Should you need to force an update ?
14:02 babilen daxroc: What do you mean by "checkin/completion" ?
14:02 debian112 joined #salt
14:03 daxroc After the scheduled converge.
14:03 babilen In my experience it is quite normal that you have to run mine.update if you want current data in there
14:03 daxroc Thats fine now that I know that :D
14:06 babilen Okay, so you essentially expected the mine to automatically update?
14:07 daxroc At least after each converge yes.
14:07 babilen I still don't really understand what you mean by "converge", but okay :D
14:07 daxroc Converge on the desired states.
14:08 babilen You mean a highstate run?
14:09 daxroc Yes thats the one
14:10 babilen Right :)
14:10 daxroc I'll eventually get with the lingo :D
14:10 babilen SaltStack lingo
14:10 babilen yeah
14:10 babilen I pillar my states so I can state while I'm high
14:13 sh123124213 joined #salt
14:15 daxroc So when would/should you trigger the mine.update from a state? Part of my problem is that the grain is only available after the initial highstate of the agent:init state.
14:18 DammitJim joined #salt
14:20 beardedeagle joined #salt
14:24 racooper joined #salt
14:27 saintpabloss joined #salt
14:32 rem5 joined #salt
14:32 austin_ joined #salt
14:33 brantfitzsimmons joined #salt
14:33 thealphaking01 joined #salt
14:34 brantfitzsimmons Are you able to include a single state file in more than one state file?
14:36 saintpablos joined #salt
14:47 ssplatt joined #salt
14:48 cyborg-one joined #salt
14:49 brantfitzsimmons To clarify. Are you able to include a single pillar file in more than one pillar file?
14:50 brantfitzsimmons If pillar file `a` has some default settings, can you include those default settings in pillar files `b`, `c`, and `d`?
14:51 SWA joined #salt
14:55 mpanetta joined #salt
14:56 mpanetta joined #salt
14:56 SWA I want to provision vmware VMs using salt-cloud and salt-api.. is there a way to pass profiles options in the query or I have to go through a map file on the filesystem?
14:58 nickabbey joined #salt
15:01 PatrolDoom joined #salt
15:02 beardedeagle SWA: are you using the cloud runner?
15:03 beardedeagle it has a profile option
15:04 evle1 joined #salt
15:04 beardedeagle just make sure you are passing runner as the client to salt-api
15:04 beardedeagle brantfitzsimmons: are you asking if you can include pillars in pillars?
15:05 SWA beardedeagle: yes, that's my plan. I see there's a kwarg, can i pass things like static IP addresses in there?
15:06 ronnix joined #salt
15:06 beardedeagle you mean as a part of **kwargs?
15:06 SWA yeah
15:06 SWA not really comfortable with **kwargs for now, not sure what i can pass as options
15:07 Rumbles joined #salt
15:07 brantfitzsimmons beardedeagle: Not exactly. I'm certain that you can include pillars in pillars. I'm unsure of the behavior when including a pillar in multiple pillars.
15:07 beardedeagle SWA: I am digging into the code to look
15:08 beardedeagle ok so the only thing they look for in kwargs is profile and instances
15:08 babilen daxroc: Well, why don't you run it after the initial highstate then?
15:08 sfxandy joined #salt
15:08 beardedeagle so I would say no to your question
15:08 beardedeagle I would run a map instead for that
15:09 daxroc babilen: as part of the orchestrate steps agent -> mine update -> universe
15:12 SWA beardedeagle: thanks for checking.. I'm planning on using Rundeck as a GUI on top of salt-api (rundeck has a salt plugin). Deployed VMs should have static IP addresses.. can you think of a way to pass that setting to salt-cloud in a smarter way than going through a map file?
15:18 feld joined #salt
15:18 darix- joined #salt
15:18 n1x0n_ joined #salt
15:18 mrud_ joined #salt
15:18 wwalker_ joined #salt
15:18 Micromus joined #salt
15:18 TyrfingM1olnir joined #salt
15:18 chron0_ joined #salt
15:18 ksk_ joined #salt
15:18 babilen_ joined #salt
15:18 alias___ joined #salt
15:18 nerdsvil1e joined #salt
15:18 benner_ joined #salt
15:18 LostSoul_ joined #salt
15:18 Flusher joined #salt
15:18 rmc3_ joined #salt
15:18 modulist1c joined #salt
15:19 nshttpd_ joined #salt
15:19 samodid joined #salt
15:19 Ouzo_12 joined #salt
15:19 Vye joined #salt
15:19 diagnostuck joined #salt
15:19 c4rc4s joined #salt
15:19 ashmckenzie joined #salt
15:19 Laogeodritt joined #salt
15:19 pocketprotector joined #salt
15:19 jor joined #salt
15:19 setkeh joined #salt
15:19 Xevian joined #salt
15:19 pppingme joined #salt
15:19 zz_Duvrazh joined #salt
15:19 Yamazaki-kun joined #salt
15:19 CustosLimen joined #salt
15:19 scooby2 joined #salt
15:19 bigjazzsound joined #salt
15:19 jagguli joined #salt
15:19 saintromuald joined #salt
15:19 manji joined #salt
15:19 chutzpah joined #salt
15:19 APLU joined #salt
15:19 theblazehen joined #salt
15:20 JPT joined #salt
15:20 EvaSDK joined #salt
15:20 Ashald joined #salt
15:20 Dr_Jazz joined #salt
15:20 rideh joined #salt
15:20 demize joined #salt
15:20 Karunamon joined #salt
15:21 CrummyGummy joined #salt
15:21 wm-bot4 joined #salt
15:21 coredumb joined #salt
15:21 djinni` joined #salt
15:21 heaje joined #salt
15:21 alrayyes joined #salt
15:21 haam3r joined #salt
15:22 beardedeagle SWA: hrm. You could use a reactor to dynamically generate your map files on the fly or to pass the it as a opts to states.cloud.present. I haven't tried that last option but I it should take any config arg that would be used to create an instance.
15:22 godlike joined #salt
15:22 yawniek joined #salt
15:22 Ssquidly joined #salt
15:22 skrobul joined #salt
15:22 McNinja joined #salt
15:22 basepi joined #salt
15:22 jeddi joined #salt
15:22 xbglowx joined #salt
15:22 preludedrew joined #salt
15:22 snergster joined #salt
15:22 hillna joined #salt
15:22 borgstrom joined #salt
15:22 angel_dark joined #salt
15:22 degorenko joined #salt
15:22 al joined #salt
15:22 Taytay joined #salt
15:22 nomad_fr_ joined #salt
15:22 emid joined #salt
15:22 hatifnatt1 joined #salt
15:22 liviudm joined #salt
15:22 djural_ joined #salt
15:23 jaybocc2 joined #salt
15:23 SWA beardedeagle: brilliant, i didn't think of that.. I will dig that way
15:24 dwfreed joined #salt
15:24 ToeSnacks joined #salt
15:24 Rubin joined #salt
15:25 upb joined #salt
15:25 graffic joined #salt
15:25 tom29739 joined #salt
15:25 nickadam joined #salt
15:25 GnuLxUsr joined #salt
15:25 Tanta joined #salt
15:26 SteamWells joined #salt
15:26 beardedeagle brantfitzsimmons: I _believe_ that should work, but akaik it would process the included file from scratch *every* time you use it
15:26 shawnbutts joined #salt
15:26 kutenai joined #salt
15:26 Rumbles joined #salt
15:26 daxroc joined #salt
15:26 phtes joined #salt
15:27 vegardx joined #salt
15:27 beardedeagle someone else here may be able to give better clarification. I run masterless so I treat grains like secrets and dynamically generate them on tne fly so I don't use pillars for much unfortunately.
15:27 darioleidi joined #salt
15:27 Nightcinder joined #salt
15:28 brantfitzsimmons So, the behavior I'm seeing is that the file is included, and rendered in the first pillar in which it is included. Any other pillar in which it is included does not appear to have the included data.
15:28 copelco joined #salt
15:29 brantfitzsimmons It seems to include it a single time, and ignore any other attempts to include it.
15:29 brantfitzsimmons I'm really trying to determine if this is the correct behavior, or if I'm doing something wrong.
15:30 CaptTofu joined #salt
15:30 brousch__ joined #salt
15:30 antonw joined #salt
15:30 brantfitzsimmons Or if there is a better way to accomplish what I'm attempting.
15:31 johtso joined #salt
15:35 samkottler joined #salt
15:37 simonmcc joined #salt
15:39 jaybocc2 joined #salt
15:39 swa_work joined #salt
15:41 art3mis joined #salt
15:41 art3mis morning!
15:41 art3mis is there any way to specify subhosts within a nodegroup?
15:42 Reverend @babilen_ - this salt-api / reactor set up is fucking marvelous.
15:42 Reverend also, art3mis - yes there is
15:42 Reverend oh wait
15:42 art3mis like -N somegroup[135] test.ping and it would only hit the 1st 3rd and 5th entry?
15:42 Reverend i highly doubt it
15:42 art3mis dang
15:43 Reverend i know
15:43 Reverend i was looking for a method of bluegreen deployment once...
15:43 Reverend turns out it's actually pain in the ass
15:43 art3mis yeah ive got small enough groupings for even odds and deployments and stuff
15:44 beardedeagle brantfitzsimmons: not sure if this solves your  problem but have you looked at the stack ext_pillar?
15:44 art3mis was hoping for a way to allow the group use for troubleshooting as well
15:44 art3mis like if only 3 of the 8 servers needed actions
15:44 art3mis within the nodegroup
15:46 Reverend you could match your nodegroup first with a _grains sls... then use those grains in seperate nodegroup definitions to match again
15:46 Reverend i.e. 192.168.1.0/24 = nodegroupa. Gets _grains.
15:47 Reverend G@role:webserver AND 192.168.6.0/24 = nodegroupb. gets ssh sls.
15:47 Reverend ./shrug
15:48 art3mis yeah the groups are more for the newbies and windows guys trouble shooting when they're oncall
15:48 art3mis the less typing the better ;)
15:48 Reverend yeah, but you can create a nodegroup out of whatever you want
15:48 Rumbles joined #salt
15:48 Reverend they'd just need to push to nodegroupA or nodegroupB.
15:49 art3mis hrm
15:49 Reverend grains = "G@...". subnets = "S@...". etc.
15:49 art3mis yeah
15:49 Reverend I dunno. just giving you ideas to butcher :P
15:50 art3mis was thinking about that already the compounding and "subgroups"
15:50 art3mis was hoping that it was more an array than anything
15:50 Reverend ooooooooooooooo
15:50 Reverend I wonder if a nodegroup can match another nodegroup
15:50 Reverend that'd be pretty
15:50 Reverend with "N@..."
15:50 art3mis yup
15:50 Reverend omergerd
15:51 art3mis group1: 'L@foo.domain.com,bar.domain.com,baz.domain.com or bl*.domain.com'
15:51 art3mis group2: 'G@os:Debian and foo.domain.com'
15:51 art3mis group3: 'G@os:Debian and N@group1'
15:51 dxiri joined #salt
15:51 art3mis thier example
15:51 sarcasticadmin joined #salt
15:51 Reverend noice.
15:53 keltim joined #salt
15:55 ronnix joined #salt
15:56 sp0097 joined #salt
15:56 art3mis now the other question i had was do i need to keep restarting the master each time i edit the nodegroups in /etc/salt/master ?
15:58 writtenoff joined #salt
15:58 beardedeagle any change to the configs require a restart afaik
15:58 SWA beardedeagle: managed to create a reactor using runner.cloud.create where I pass all the profile options as args to the API, thanks!
15:58 Illusioneer joined #salt
15:58 beardedeagle np, glad you got it working
16:03 art3mis can i do regex in group matching?
16:03 art3mis like hoat[01][1-9].blah.com?
16:04 art3mis for nodegroups rather
16:11 anotherzero joined #salt
16:12 nixjdm joined #salt
16:16 nmccollum joined #salt
16:16 viq How would you guys go about "export list of all 'real' mountpoints to mine" ?
16:17 viq Or, well, getting it to mine is easy, how to get it in the first place?
16:17 nmccollum Hi, I have a bunch of GPU models that need different drivers installed.  I am trying to do this with grains, but I can't quite figure out how to translate nested grains into jinja.
16:18 babilen_ viq: Are you referring to filesystems in fstab? I have a 'feeling' for what you mean by 'real', but what do you mean exactly?
16:18 nmccollum like - 'gpus:*:model:*GK*' into jinja.
16:20 Rumbles joined #salt
16:20 dyasny joined #salt
16:21 dyasny joined #salt
16:21 viq babilen: https://pbot.rmdir.de/b8MODGaC-c4gwwkNr8MOGQ while I'm only interested in '/' from that list
16:22 babilen viq: Yeah, that is .. more or less .. what I expected
16:23 viq There is disk.blkid, but that doesn't show mountpoints. There is ps.disk_partitions, but on debian 7 installing python-psutil makes it impossible to start salt-minion
16:23 babilen viq: You could parse /proc/mounts and filter by certain rules, use something like findmnt with suitable options or .. well
16:23 nmccollum I know {% if grains['gpus:*:model'] == '*GK*' %} isn't correct.  how do you nest things like that in jinja?
16:24 eprice joined #salt
16:25 viq oh, I wasn't familiar with findmnt
16:26 babilen viq: I use it sometimes (but more interactively)
16:27 ekristen joined #salt
16:27 eThaD joined #salt
16:30 viq findmnt -l -t notmpfs,nocgroup,nopstore,nosysfs,noproc,nodevtmpfs,nodevpts,nosecurityfs,noautofs,nomqueue,nodebugfs,nohugetlbfs,nobinfmt_misc -o target -n
16:31 viq This seems to initially do what I want, now to figure out whether I want to stuff that in a scheduler to push to mine...
16:31 sp0097 joined #salt
16:40 Dan_1776 Anybody have experience using sdb?
16:42 nanert joined #salt
16:43 ssplatt dev/sdb?
16:43 Dan_1776 Sorry Salt-call sdb://
16:44 Dan_1776 Setting/getting passwords in the Salt SDB so you don't have to put plain text passwords into config files. Specifically Salt-cloud.
16:44 Dan_1776 However the basic "set" feature is not working for me following the 2016.11.1 docs word for word.
16:45 Dan_1776 https://docs.saltstack.com/en/latest/topics/sdb/
16:47 sh123124213 joined #salt
16:48 viq Dan_1776: not that I have any experience, but what are you trying to use as sdb?
16:49 Dan_1776 I need to be able to share salt-cloud files with my dev team and not provide them with my userid/password.
16:49 Rumbles joined #salt
16:49 viq Dan_1776: pillars + gpg ?
16:49 Dan_1776 So putting files into a git repo without creds.
16:50 Dan_1776 Yeah, I thought about that and for the dev team that might work but we plan to release this code much wider later on.
16:50 Dan_1776 ideally I want the end user to do some simple setup to configure their ID/PW and then have everything work.
16:51 Dan_1776 Salt docs say that SDB was designed for this so that's the path I'm on.  I'm not tied to this path, just where I'm at now.
16:51 viq Dan_1776: yeah, but _which_ SDB backend are you trying to use?
16:52 bowhunter joined #salt
16:53 Dan_1776 good question.  This sdb/keyring thing is new to me.  Been using salt for years.
16:53 Dan_1776 keyring_sdb if that is what your asking
16:53 Dan_1776 ID/PW is for openstack via salt-cloud
16:53 viq Is salt-master running on OSX?
16:54 Dan_1776 All on CentOS7
16:54 PatrolDoom i have to figure out why the heck doing something like "pillar:device:eth3:1" does one thing & "pillar:device:eth3" does another
16:54 Dan_1776 Single VM running salt-master/Minion/cloud
16:54 viq https://docs.saltstack.com/en/latest/ref/sdb/all/salt.sdb.keyring_db.html#module-salt.sdb.keyring_db
16:55 PatrolDoom e.g. i use that to generate fw rules w/ ferm
16:56 beardedeagle also depends on the cloud driver you are using, last time I tried to set up the keyring_sdb module for use with openstack it didn't work
16:57 viq Dan_1776: personally, when starting with a proof of concept, I'd probably start with https://docs.saltstack.com/en/latest/ref/sdb/all/salt.sdb.sqlite3.html
16:57 dfinn joined #salt
16:58 viq Dan_1776: https://docs.saltstack.com/en/latest/ref/sdb/all/index.html if you haven't seen it yet lists all available modules
16:58 eprice joined #salt
16:58 Dan_1776 Thanks I'll take a look at this.  This does look promising and it's simple to add the sdb.sqlite file to my .gitignore file.
16:59 PatrolDoom now i see why it does that
16:59 PatrolDoom cause we don't know how to use python
16:59 PatrolDoom basically the for look iterates over the items in the pillar "pillar:device"
16:59 PatrolDoom since we have a ":1" at the end before
17:00 PatrolDoom we told the file to only iterate through the "devices:eth*" rather than "devices:eth*:1"
17:01 * PatrolDoom reads pillar & jinja docs again
17:01 nmccollum Alright, I give up...
17:02 nmccollum I can't figure it out:  {% if "GF100GL" in grains.get('gpus','model') %}
17:02 daxroc babilen: figured out the weird behavior I've been having with one of the minions (master) - it was setup for local mode ... causes issues with mine data not returning for that host really weird but interesting.
17:02 nmccollum I've tried every way I can think to make this work, how do you search sub..grains?
17:03 daxroc salt '*' grain.get my:sub:grain ?
17:04 nmccollum Yeah, that works... but how do I do that in jinja in a sls?
17:04 nmccollum salt -G 'gpus:*:model:*GF*'  works
17:04 Reverend hints on recursively chowning the a git repo in salties?
17:04 viq grains.get('gpus:model')  ?
17:05 nmccollum Rendering SLS 'base:gpu/gpu' failed: Jinja error: argument of type 'NoneType' is not iterable
17:06 daxroc nmccollum:  {{salt['grains.get']('grain')}}
17:06 sh123124213 joined #salt
17:07 daxroc but it sounds like the grain you are targeting is Not set -> NoneType
17:08 nmccollum [root@hpcnodeimg ~]# salt 'dmc197.asc.edu' grains.get 'gpus:1:model'
17:08 nmccollum dmc197.asc.edu:
17:08 nmccollum GF100GL [Tesla M2070]
17:08 nmccollum if I do 'gpus:*:model' it doesn't work
17:09 swa_mobil joined #salt
17:09 nmccollum I'm just having a hard time translating this into jinja for some reason.
17:12 nmccollum I guess the real problem here is that I have more than 1 GPU.
17:12 tiwula joined #salt
17:12 nmccollum So it's nested another level.
17:14 moeyebus9_ joined #salt
17:14 bwellsnc joined #salt
17:14 nanert How do I call a state sls file that resides in a grandparent directory to the sls file I'm calling it in?
17:15 PatrolDoom include
17:15 izibi joined #salt
17:16 izibi joined #salt
17:16 nanert k thx, was wondering if there were perhaps a different way to call it
17:18 nmccollum yeah, so I think it's a problem that salt is expecting 2 arguements... ('gpu','model') and not ('gpu','1','model')
17:18 alvinstarr joined #salt
17:19 nmccollum Rendering SLS 'base:gpu/gpu' failed: Jinja error: get expected at most 2 arguments, got 3
17:23 debian112 joined #salt
17:24 Dan_1776 viq: same issues with sqlite
17:25 nmccollum {% if "GK110GL" in salt['grains.get']('gpus:1:model') %}  worked
17:25 Dan_1776 viq: sqlite3, sqlite-devel are installed.  Python, import sqlite3 works.
17:25 nmccollum thanks daxroc
17:25 Dan_1776 viq: added lines to /etc/salt/master.d/master.conf and restarted master.
17:25 Dan_1776 viq: salt-call sdb.set sdb://mysqlite/password 'letmein' -l debug
17:26 sh123124213 joined #salt
17:26 Dan_1776 viq: still fails.  Just returns "False"  Nothing in the output to indicate why.
17:26 viq Dan_1776: master logs?
17:27 viq also what did you add to config?
17:28 Dan_1776 Nothing in the logs.
17:28 woodtablet joined #salt
17:28 lws joined #salt
17:28 Dan_1776 Well there is stuff in the logs but not related to this and nothing recent. Logging is working on the serve just the sqlite commands are not writing anything.
17:29 Dan_1776 config file is copy/paste from the sqlite/sdb page.
17:29 viq Dan_1776: did the file get created?
17:29 Dan_1776 I've got to be missing something stupid here.
17:29 Dan_1776 no
17:30 Ish_ joined #salt
17:31 viq time for me to run, cya, sorry I wasn't able to help more
17:31 Dan_1776 No problem, thanks for the assist.
17:33 Dan_1776 For anyone else following, as an FYI and in case you can offer some assistance.  I started salt-master with -l debug, a new logfile, in daemon mode.  Then ran the commad to set a sdb value again and nothing new on the screen or in the log file.
17:33 Dan_1776 Just returns "False"
17:34 swa_work joined #salt
17:35 Illusioneer joined #salt
17:35 edrocks joined #salt
17:36 raspado joined #salt
17:36 sfxandy joined #salt
17:37 orion joined #salt
17:37 orion Hi. Does anyone know how to pass authentication credentials to the virtualenv state?
17:37 nickabbey joined #salt
17:42 mrud joined #salt
17:44 nanert left #salt
17:44 samodid joined #salt
17:47 DanyC joined #salt
17:48 alvinstarr joined #salt
17:49 DanyC left #salt
17:52 dxiri_ joined #salt
17:55 pipps joined #salt
17:57 pipps joined #salt
17:59 Illusioneer joined #salt
18:02 ivanjaros joined #salt
18:03 pipps99 joined #salt
18:05 Dan_1776 More to the story.  Removing the config block from the master config file and putting it in the minion config file and now it works.
18:09 armyriad joined #salt
18:10 pipps joined #salt
18:11 ronnix joined #salt
18:13 johny_ joined #salt
18:14 johny_ hey y'all! How does one write an SLS state that is an asynchronous bash command?
18:15 johny_ Seeing as this command " salt '*' cmd.run 'nohup sleep 30 &' " basically doesn't return ...
18:16 eThaD joined #salt
18:16 raspado joined #salt
18:17 monokrome joined #salt
18:18 monokrome joined #salt
18:21 bbradley joined #salt
18:23 nanert joined #salt
18:24 jab416171 what determines what the output of highstate will look at? I'm familiar with the 'state_output' config, are there other configs that could affect it?
18:26 vexati0n according to the AWS/EC2 documentation, i should be able to use block_device_mappings to set the size of the root device, but AWS gives me an error: AWS Response Status Code and Error: [400 400 Client Error: Bad Request] {'Errors': {'Error': {'Message': 'Invalid device name /dev/sda', 'Code': 'InvalidBlockDeviceMapping'}}, 'RequestID': '609b00f6-5c63-4438-8f7f-3b3675b65049'}
18:28 johny_ If anyone is interested in knowing the answer to my question "How does one write an SLS state that is an asynchronous bash command?" I found a workaround to be the Job Scheduler
18:28 johny_ i.e. just schedule a job to run in 1 second, for example
18:29 Neighbour using `at`?
18:30 s_kunk joined #salt
18:31 vexati0n ok nevermind... docs have it specifying /dev/sda, but you have to use /dev/sda1
18:31 aw110f joined #salt
18:31 wendall911 joined #salt
18:37 cscf Neighbour, I believe he means the Salt Job Scheduler, but 'at' would work too, if installed.
18:39 DanyC joined #salt
18:41 pipps joined #salt
18:43 ruxu joined #salt
18:44 Neighbour cscf: You're right, I read it wrong :)
18:44 Praematura joined #salt
18:46 raspado_ joined #salt
18:49 raspado__ joined #salt
18:51 Edgan joined #salt
18:51 bltmiller joined #salt
18:52 godlike joined #salt
18:53 raspado joined #salt
18:53 * MTecknology is considering trying to roll a monitoring solution using nothing but salt
18:54 moeyebus9_ joined #salt
18:54 DanyC left #salt
18:58 lws joined #salt
18:59 art3mis its easy peasy with salt and icinga/nagios
19:01 art3mis unless you mean a state of tests for monitoring ;)
19:01 art3mis which would be kind of neat
19:02 druonysus joined #salt
19:02 DanyC joined #salt
19:04 DanyC hi all, any idea why something like {%- for zone, args in salt['pillar.get']('foo',{}).iteritems() if salt['pillar.get']('foo') | sort %} will not work if foo is None but it will work if i take out the if statement on its own line ?
19:04 DanyC am i doing anything wrong/ silly?
19:07 druonysus joined #salt
19:10 Cottser joined #salt
19:15 cscf DanyC, I think you should pastebin the code with newlines
19:15 DanyC sure cscf , sorry for not doign that upfront (1 sec)
19:17 eThaD joined #salt
19:18 DanyC cscf: https://hastebin.com/pegufagibo.md
19:20 wendall911 left #salt
19:21 cliluw joined #salt
19:22 saltnewbie joined #salt
19:23 SaucyElf joined #salt
19:24 hackel joined #salt
19:25 froztbyte joined #salt
19:28 DanyC joined #salt
19:28 cyborg-one joined #salt
19:33 pipps joined #salt
19:34 saltnewbie joined #salt
19:35 spuder joined #salt
19:36 pipps joined #salt
19:36 wendall911 joined #salt
19:36 orianbsilva joined #salt
19:38 lws joined #salt
19:40 keimlink joined #salt
19:43 sh123124213 joined #salt
19:43 dyasny joined #salt
19:45 nickabbey joined #salt
19:47 djgerm so in the minion config there's that environment: setting, is there a way to get that with some sorta call (so that I use it in a jinja tempalted thingy?
19:49 nZac joined #salt
19:50 woodtablet1 joined #salt
19:53 lws joined #salt
19:53 djgerm other than just ALSO making that a grain with the same value....
19:55 SaucyElf Hmmm. still getting that join_domain error I was talking about yesterday. Anyone have some thoughts on it?
19:55 djgerm I think I want to jinja my top.sls to only have the "base" be rendered with the environment that the master is in.
19:56 raspado joined #salt
19:59 spuder_ joined #salt
20:02 beardedeagle joined #salt
20:04 bowhunter joined #salt
20:05 DanyC joined #salt
20:06 rem5 joined #salt
20:11 saltnewbie joined #salt
20:15 * MTecknology throws pie at iggy -- http://goo.gl/OFQoO2
20:17 lws joined #salt
20:22 Edgan joined #salt
20:29 pipps joined #salt
20:29 amcorreia joined #salt
20:30 redshirtlinux joined #salt
20:31 redshirtlinux Anyone have any experience running a Salt minion on Windows - version 2016.11.1 (carbon)?
20:33 lws joined #salt
20:35 pipps joined #salt
20:42 CrummyGummy joined #salt
20:42 sfxandy joined #salt
20:43 MTecknology Who has a good solution for organizing pillar data in a meaningful way that doesn't eventually result in a 15k line yaml file?!
20:43 MTecknology I have one solution, but $client doesn't like it.
20:44 lws joined #salt
20:46 viq MTecknology: what data, what is the solution you have and what they don't like about it?
20:47 overyander when using pkg.version module is there a way to list the version of packages that start with a string? something like pkg.version Microsoft*  ?
20:48 overyander redshirtlinux, I have experience using salt on windows, but i haven't updated to 2016.11.1 yet, still on 2016.3.4
20:49 amontalban joined #salt
20:49 amontalban joined #salt
20:50 MTecknology viq: I took away my remote access to most of my at-home things. Gimme a sec to gist it up from ram. :)
20:51 redshirtlinux overyander, have you have run into the situation where you may install software in windows using pkg.install however, if you issue pkg.list_available it doesn't list the available package in winrepo?
20:52 overyander when using the winrepo, the package name and version must match EXACTLY in your repo to what it shows in add/remove programs.
20:53 overyander i'm stepping away to grab some food, but i'll be back to help you out.
20:53 redshirtlinux So there isn't anything equivalent to apt-cache search for winrepo?
20:53 redshirtlinux 10-4
20:56 amontalban joined #salt
20:56 amontalban joined #salt
21:00 MTecknology viq: this is kinda sorta the gist of what I have at home - https://gist.github.com/anonymous/364b456676ef7f578d2a99133da696be
21:05 MTecknology $client has a >14,000 sls file with >60% of *all* pillar data data stored inside of it as well as a custom module to select things from it and merge with a defaults list (also in the same file)
21:05 lws joined #salt
21:12 overyander redshirtlinux i'm not a debian guy so i'm not really sure what apt-cache is/does.
21:13 viq huh, intesreting
21:14 druonysus joined #salt
21:15 candyman88 joined #salt
21:15 viq overyander: you don't really have search for aptpkg either
21:15 viq erm
21:15 viq redshirtlinux: ^
21:16 lws joined #salt
21:19 redshirtlinux overyander, it searches the repo for a pattern match
21:19 eThaD joined #salt
21:19 overyander no, winrepo doesn't do that
21:19 viq redshirtlinux: aptpkg doesn't have search either
21:20 redshirtlinux After looking at the win_pkg module, I figured that they didn't... For now, I'll look at the git winrepo directory for package names
21:20 viq MTecknology: this comes to mind https://willplatnick.com/salt-pillar-driven-design-pattern-7707bbdd1b81#.r1gzfwtwz
21:21 viq MTecknology: but admittedly I did not have to deal with that kind of scale yet
21:23 overyander redshirtlinux, this might be over simplified, but essentially with winrepo, you build the local repository with unique package names and make sure that "full_name" matches exactly what is shown in add/remove programs and make sure the version in your .init file also matches the exact version number shown in add/remove programs. once you have the file created, run the winrepo.genrepo command on the master and then you'll need to run pkg.refresh_db (or
21:23 overyander something like that) on the minion so it gets the latest info locally.
21:25 lws joined #salt
21:31 redshirtlinux overyander, isn't winrepo.genrepo deprecated in 2016.11.1?
21:32 overyander i don't know. i'm still on 2016.3.4
21:33 overyander one thing i've learned about salt is that once you find a version that works, stay there. only update if you absolutely require a new feature or a bug fix of a later release. i've been bitten too many times by a newer version having random bugs and issues that weren't in a previous version.
21:33 hemebond I'm also still on 2016.3.4
21:33 hemebond because of AWS bugs in 2016.11
21:34 MTecknology what kinda aws bugs?
21:35 hemebond Someone added support for templating the cloud-init files; but it doesn't work and just throws an error, preventing me from provisioning new servers.
21:35 hemebond A couple of other bugs that I can't remember now.
21:46 MTecknology My new laptop showed up at fedex in chicago!
21:46 gableroux joined #salt
21:47 netcho_ joined #salt
21:47 rburkholder joined #salt
21:47 MTecknology I probably won't be around for the first delivery attempt, but I should be able to make the second. Before it shows up, I need to build a new salt master for managing endpoints.
21:48 gableroux Hey there, I'm trying to to a deployment, but I moved from v2016.3.3 to v2016.11.1 (and I need it due to a change in the zip module, anyway, that's a detail).
21:49 gableroux It worked on 4 other debian servers, but this one is refusing to upgrade
21:49 gableroux I'm doing it from the bootstrap script
21:49 gableroux sh bootstrap_salt.sh git v2016.11.1
21:50 moeyebus9_ joined #salt
21:50 gableroux I had a problem with * ERROR: Failed to run install_debian_check_services()!!!
21:50 hemebond Running the latest bootstrap script?
21:51 gableroux But I tried to completly uninstall salt first like this: sudo apt-get purge --auto-remove salt-minion
21:51 gableroux And now I'm getting passed this error, script says it worked, I restart salt-minion and it shows v2016.3.3 instead of v2016.11.1 (the version I had before).
21:52 hemebond Did you install from git originally?
21:52 gableroux I went to a different folder and ran curl -o bootstrap_salt.sh -L https://bootstrap.saltstack.com && sudo sh bootstrap_salt.sh git v2016.11.1
21:52 gableroux oh, good point, I'm not the one who installed it a while ago.
21:53 overyander gableroux why install from git instead of packages?
21:53 gableroux In fact, this server was a masterless until I started managing it myself :P
21:53 gableroux hmm, good question, mostly because it worked
21:53 * MTecknology really hates that bootstrap script
21:53 gableroux No particular reason
21:54 gableroux ahah, I had lots of troubles with it on vagrant so we're doing it from git on vagrant, I guess that's the reason why
21:54 overyander it would probably be quite a bit more stable if you used the OS's built-in package system https://repo.saltstack.com/#debian
21:54 gableroux ok thanks, trying that right away
21:55 MTecknology I also dislike not using distro-maintained packages, but saltstack took a lot of steps to improve the state of their repo so it's on my exceptions list (the list is a whopping two deep)
21:56 gableroux hmm, still 2016.3.3
21:56 gableroux (I did restart the salt-minion)
21:57 gableroux That's really strange.
21:57 pipps joined #salt
21:57 gableroux uname -a: Linux snip 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux
21:58 gableroux System Versions: dist: debian 8.7 machine: x86_64 release: 3.16.0-4-amd64 system: Linux version: debian 8.7
21:59 gableroux I also tried moving out my /etc/salt to a backup directory (I'm ok with regenerating the salt key if I can get it to upgrade)
22:00 gableroux Would this deserve an issue?
22:00 MTecknology gableroux: what's the actual issue you're having?
22:00 gableroux I'm stuck on v2016.3.3, I need v2016.11.1
22:00 MTecknology k.. and the pastebin to go along with that description?
22:00 Rumbles joined #salt
22:01 gableroux Hmm, I'll create an issue and post here, give me a few minutes
22:01 gableroux I Really appreciate the help btw, thanks a lot :)
22:02 MTecknology creating issues isn't for support requests, it's to report things broken in salt
22:02 gableroux ok, pastebin then, thanks for telling me
22:04 art3mis left #salt
22:05 MTecknology if you wanna go with github, there's always gist :P
22:09 hasues joined #salt
22:10 hasues left #salt
22:10 jaybocc2 joined #salt
22:14 gableroux https://gist.github.com/GabLeRoux/52cb4b7c4a3242aab6db0e9d6df3ecd2
22:17 mavhq joined #salt
22:19 voxpop joined #salt
22:20 eThaD joined #salt
22:22 pipps joined #salt
22:24 nidr0x joined #salt
22:26 Trauma joined #salt
22:29 Tanta joined #salt
22:29 gableroux Well, I managed to get what I want by installing it manually from git and sudo python setup.py install --force
22:39 sh123124213 joined #salt
22:48 Edgan vodik: Where do you find documentation on the binary_file feature of yaml? I am not having luck with google. I have tried uuencode and base64. I do get binary out of the pillar, but doesn't seem to match the original.
22:50 whytewolf this? http://yaml.org/type/binary.html
22:50 nkuttler joined #salt
22:51 nkuttler joined #salt
22:51 Edgan whytewolf: yeah, realized it is about !!binary, and his example of binary_file was a title.
22:54 sarcasticadmin joined #salt
22:57 the_dude_ joined #salt
22:59 lws joined #salt
23:00 jaybocc2 joined #salt
23:04 lws joined #salt
23:06 jaybocc2 joined #salt
23:12 rem5 joined #salt
23:15 sfxandy joined #salt
23:18 wangofett man, I sure do love managing my personal servers with salt
23:20 lws joined #salt
23:21 eThaD joined #salt
23:22 pipps joined #salt
23:24 writtenoff joined #salt
23:24 antonw joined #salt
23:24 shawnbutts joined #salt
23:24 djural_ joined #salt
23:24 djinni` joined #salt
23:24 Duvrazh joined #salt
23:24 Vye joined #salt
23:24 chron0_ joined #salt
23:24 TyrfingM1olnir joined #salt
23:24 saintpablos joined #salt
23:24 reith joined #salt
23:24 mage_ joined #salt
23:24 smcquay joined #salt
23:24 fxhp joined #salt
23:24 dkrae joined #salt
23:24 Eugene joined #salt
23:24 mrueg joined #salt
23:24 NeoXiD joined #salt
23:24 eseyman joined #salt
23:24 jcl[m] joined #salt
23:24 weiwae joined #salt
23:24 alexlist joined #salt
23:24 sjohnsen joined #salt
23:27 djural_ joined #salt
23:27 Edgan wangofett: how many?
23:30 antonw joined #salt
23:31 aw110f joined #salt
23:33 tom29739 joined #salt
23:41 lws joined #salt
23:43 druonysus joined #salt
23:44 jaybocc2 joined #salt
23:47 sh123124213 joined #salt
23:47 wangofett 5, currently
23:48 wangofett a raspberry pi (the master), an arch linux box (formerly the master), (oh, 6), a DigitalOcean droplet (Ubuntu), two centos vms on AlphaRacks, and a server at my parents house
23:58 evidence so i recall back in 2016.3.X you could set up multiple transports running side by side on a master (ie zmq on 450[56] and tcp on 450[78]), but it didn't work properly, only the last configured transport did the master truly listen on.  i could have sworn there were issues related to it, but i'm not finding them now
23:58 evidence anyone running multiple transports on 2016.11 ?
23:59 evidence basically we want to switch to tcp, but have a large minion count and can't do it wholesale.  trying to avoid having to run multiple procs or more masters

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