Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2015-09-23

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

All times shown according to UTC.

Time Nick Message
00:01 ajw0100_ joined #salt
00:05 hasues joined #salt
00:05 hasues left #salt
00:08 baweaver joined #salt
00:09 aristedes joined #salt
00:10 linjan joined #salt
00:10 aristedes left #salt
00:11 pentabular joined #salt
00:12 larsfronius joined #salt
00:16 breakingmatter joined #salt
00:20 subsignal joined #salt
00:23 f33rx joined #salt
00:24 pratikmallya joined #salt
00:24 f33rx joined #salt
00:25 f33rx joined #salt
00:26 zsoftich joined #salt
00:29 f33rx joined #salt
00:38 baweaver joined #salt
00:41 thehaven joined #salt
00:42 Rebus joined #salt
00:48 jodv joined #salt
00:48 f33rx joined #salt
00:49 pravka joined #salt
01:02 tmclaugh[work] joined #salt
01:03 f33rx joined #salt
01:04 f33rx joined #salt
01:05 ajw0100 joined #salt
01:10 thehaven joined #salt
01:15 thehaven joined #salt
01:17 druonysuse joined #salt
01:18 phw joined #salt
01:20 tmclaugh[work] joined #salt
01:22 pdayton joined #salt
01:33 catpigger joined #salt
01:37 johnnarduchi joined #salt
01:40 opensource_ninja joined #salt
01:42 thehaven joined #salt
01:45 MetaNova_ joined #salt
01:47 ilbot3 joined #salt
01:47 Topic for #salt is now Welcome to #salt | 2015.8.0 is the latest | Please use https://gist.github.com for code, don't paste directly into the channel | Please be patient when asking questions as we are volunteers and may not have immediate answers | Channel logs are available at http://irclog.perlgeek.de/salt/
01:48 MetaNova_ Hello, I've been having trouble trying to get a 2015.5.5 minion on a Fedora 22 cloud instance to connect to my master. I am able to ping the hostname of the master on the box, but when the minion trys to start up it gives the error "DNS lookup of 'salt.[domain redacted].com" failed. I imagine this has something to do with how the minion is trying to resolve the name. Any ideas?
01:48 phpdave11 do you have your minion set up in a dns server?
01:48 phpdave11 if not you could just set it in /etc/hosts
01:49 MetaNova_ Is it important that it is able to resolve it's own hostname?
01:50 MetaNova_ I just use Godaddy for DNS and I am yet to setup the record
01:50 MetaNova_ But again, the master itself resolves fine when pinging
01:50 aphor MetaNova_ by default, a minion assumes the master is reachable as "salt" by hostname.
01:51 MetaNova_ I have updated the minion config to point to the correct hostname
01:51 aphor You can configure the minion to use another particular hostname at bootstrap time or in the minion config file.
01:51 aphor Please don't use an IP address.
01:52 MetaNova_ Yes, I have set the 'master:' directive in the minion config to use the correct domain name (salt.mydomain.com) and that domain even shows up in the error.
01:53 MetaNova_ I have another server set up the exact same way and it works fine
01:53 MetaNova_ It is running CentOS 7 though
01:54 MetaNova_ I'm assuming Fedora 22 is doing something weird here
01:55 berserk joined #salt
01:55 mapu joined #salt
01:56 phpdave11 try doing: dig salt.[domain redacted].com on each minion
01:56 phpdave11 find out why its failing first
01:58 aristedes joined #salt
01:59 aristedes left #salt
02:00 MetaNova_ It resolves with dig:
02:00 MetaNova_ http://pastebin.com/3w2Prxcf
02:01 MetaNova_ Wait a minute.
02:01 MetaNova_ I feel stupid now
02:01 bhosmer joined #salt
02:01 MetaNova_ Sorry for bothering all ya.
02:02 MetaNova_ I've looked over it about 100 times but didn't notice one letter was wrong. -_-
02:02 mosen woops
02:02 * MetaNova_ facepalms
02:03 MetaNova_ Enjoy you days. I'm going to try to make it out with what little dignity I have left.
02:04 aphor Wait until you accidentally paste something into a text editor that has been through MS Word "smart quotes" or otherwise mangled UTF8 canonical equivalence substitution.
02:04 aphor Dignity will seem so .. petty compared to the madness that will ensue.
02:05 sunkist joined #salt
02:05 perfectsine joined #salt
02:24 thehaven joined #salt
02:38 evle2 joined #salt
02:48 edrocks joined #salt
02:49 clintberry joined #salt
02:50 djinni` joined #salt
02:52 neogenix joined #salt
02:54 writtenoff joined #salt
03:01 less|2 joined #salt
03:06 sunkist joined #salt
03:06 CryptoMer joined #salt
03:14 subsignal joined #salt
03:19 bruce-one joined #salt
03:19 Singularo joined #salt
03:26 shaunbotha joined #salt
03:26 PeterO_ joined #salt
03:26 shaunbotha hi I need to know if saltstack supports TOSCA?
03:27 neogenix joined #salt
03:28 aurynn all I can find about tosca is opera?
03:29 twork eaogghhh reading somebody else's macros is going to send me to an early grave
03:30 shaunbotha lol No not the opera...I am referring to OASIS Tosca
03:31 shaunbotha thanks aurynn for trying to help
03:31 aurynn I have never heard of this before, so I don't know
03:31 aurynn but
03:31 aurynn it seems like it'd be straightforward to build an adapter for a standard
03:32 Aidin joined #salt
03:33 aurynn or just something that read the json desc and generated a salt infra definition
03:33 aurynn hmm
03:33 aurynn I'd be interested in developing on that
03:34 alexlist_ joined #salt
03:38 neogenix joined #salt
03:41 shaunbotha I was hoping the support for Tosca already exists...Tosca is modeled using YAML
03:46 mapu joined #salt
03:47 Nazca joined #salt
03:49 neogenix joined #salt
03:51 Bryson joined #salt
03:54 aurynn shaunbotha, hang around, ask iggy or someone when they show up
03:55 krymzon joined #salt
03:55 shaunbotha thanks I will
03:56 favadi joined #salt
04:09 clintber_ joined #salt
04:10 kermit joined #salt
04:21 iggy shaunbotha: presently, no... is it possible... probably mostly
04:22 iggy it looks like some of that could map to salt-cloud and some of it to salt states/orchestrate/etc
04:31 aurynn that's what I was thinking
04:31 aurynn It'd be fun to write
04:36 cornfeedhobo is there any way to tell jinja to not parse a state in a sls file?
04:37 cornfeedhobo there is a cmd i want to .run, but the command uses GO template syntax, which collides with jinja :(
04:39 jhauser joined #salt
04:40 cornfeedhobo ugh, nvm. i can just use a literal
04:45 iggy cornfeedhobo: {% raw %} (check jinja docs)
04:46 cornfeedhobo ya that was a worthy face palm
04:46 k3ng joined #salt
04:46 k3ng hi all
04:46 sPollk joined #salt
04:47 k3ng I need some example about saltstack can build source
04:50 druonysus joined #salt
04:50 druonysus joined #salt
04:55 krymzon joined #salt
04:59 markm_ joined #salt
05:02 PandoraBox joined #salt
05:02 favadi joined #salt
05:02 cornfeedhobo wha?
05:02 pcdummy joined #salt
05:03 PandoraBox Pssst
05:05 PandoraBox joined #salt
05:05 PandoraBox left #salt
05:08 anmol joined #salt
05:16 SheetiS joined #salt
05:22 otter768 joined #salt
05:36 svinota joined #salt
05:45 subsignal joined #salt
05:46 oravirt joined #salt
05:48 twork my python rust is probalby showing again. i see lots of cases of the construction, "for foo, bar in pillar.get[...]" where the "bar" doesn't appear, anywhere else in the code or anywhere in the pillar being searched. but changing "bar" to anything else crashes the Jinja.
05:48 twork illumine me?
05:56 malinoff joined #salt
05:56 mosen its probably deconstructing a dictionary into the key and value
05:57 mosen it might be that the value isnt needed so "bar" is put there but remains unused
05:57 mafro joined #salt
05:58 mafro lo channel
05:58 mafro I’m having some trouble a) either understaning or b) using the “gitfs_base” option with gitfs remotes
05:58 twork thanks mosen
05:59 mafro I want to map a build to a specific tag on my remote git repo, using the “base” parameter - but it just doean’t seem to work that way
05:59 XiaBing joined #salt
06:00 mafro I think it’s something to do with environments being mapped to tags..
06:00 colttt joined #salt
06:01 mosen i thought they were mapped to branches
06:02 mafro mosen: sorry yeah I meant branches - but that’s basically the same as a tag in git for the most part right
06:02 twork ...ooh, i think my "doesn't appear anywhere else" missed cases where i should be looking for "bar.something". too much presuming that identifiers are bordered by whitespace.
06:02 twork read, too much thinking in shell. still.
06:04 mosen mafro: I dunno.. I've always thought of tags as being linked to a single commit.. anyways thats another topic :)
06:04 mafro mosen: a tag always points to one commit, whereas a branch has a HEAD which points to its latest commit
06:05 bruce-one twork: i _think_ a standard convention is to use _ to identify an unused argument in a for loop (and other places)? ie for foo, _ in pillar.get[...]
06:05 mafro both are commit-ishs; so should work for the gitfs_base option the same
06:06 twork bruce-one: could be, but i now see what i was missing
06:06 katyucha joined #salt
06:07 twork for foo, bar in pillar.get('uh', {}).items() if bar.whee is defined <- i've been mising that dot
06:09 linjan joined #salt
06:09 twork i'm trying to understand a formula that uses a lot of the identifier 'users', so when i tried to understand "for foo, user in ..." by grep'ing for "user " (note the space)...
06:10 twork ...i missed the end of that line, "if user.blah is defined"
06:12 krymzon joined #salt
06:13 mafro If anyone else has any idea about my problem…
06:13 mafro http://stackoverflow.com/questions/32732264/saltstack-using-specific-tag-as-gitfs-remote
06:13 mafro gtg gn channel
06:14 stephanbuys joined #salt
06:15 laax joined #salt
06:18 aristedes1 joined #salt
06:19 felskrone joined #salt
06:20 breakingmatter joined #salt
06:20 harkx joined #salt
06:20 Rockj joined #salt
06:22 dopesong joined #salt
06:23 rubendv joined #salt
06:26 Ztyx joined #salt
06:27 Ztyx left #salt
06:36 ashmckenzie joined #salt
06:41 Ztyx joined #salt
06:42 XiaBing joined #salt
06:42 KermitTheFragger joined #salt
06:44 ramteid joined #salt
06:45 opensource_ninja joined #salt
06:50 phw_ joined #salt
06:50 ITChap joined #salt
06:51 briner joined #salt
06:53 ITChap Hi
06:53 ITChap I am trying to loop through a dict in jinja
06:53 ITChap I am probably doing it wrong https://bpaste.net/show/921cc2e52f6e
06:53 ITChap Could someone point me to the good direction ?
07:00 markm_ joined #salt
07:04 felskrone1 joined #salt
07:05 cliluw joined #salt
07:06 opensource_ninja joined #salt
07:11 ITChap I get something like SaltRenderError: Jinja error: too many values to unpack
07:17 mosen i dont know for sure but, is it iteritems ?
07:17 eseyman joined #salt
07:19 kawa2014 joined #salt
07:23 otter768 joined #salt
07:24 ITChap aren't they supposed to return the same thing ?
07:28 ITChap Anyway it looks like I could do it with only a depth of 1
07:28 ITChap so the recursive might me too much
07:30 mosen hmm fair enough im a bit rusty on python :)
07:31 bruce-one does https://bpaste.net/show/92e3782cf2cf work?
07:32 bruce-one no...
07:33 bruce-one i think https://bpaste.net/show/5b06fd13d26e might though
07:33 bruce-one hmm... it might break on the lists...
07:37 lb1a joined #salt
07:38 trph joined #salt
07:39 bruce-one Don't know how to do the indent though :-(
07:39 chiui joined #salt
07:40 mosen im not familiar with the recursive keyword there
07:40 mosen is that just part of jinka?
07:41 babilen It is (cf. http://jinja.pocoo.org/docs/dev/templates/ )
07:41 ITChap seems to break on the lists :(
07:43 edulix joined #salt
07:43 CeBe joined #salt
07:44 mosen guess i should learn more jinja :)
07:45 ITChap oh no it looks like even without lists it doesn't work
07:45 ITChap Anyway, looking at haproxy configuration file syntax
07:45 ITChap recursive loops is just overkill
07:46 fredvd joined #salt
07:46 GreatSnoopy joined #salt
07:46 ITChap I will flatten it and it will probably be easier to maintain that cutting-edge jinja thing/hack
07:47 CeBe1 joined #salt
07:47 babilen (that nobody understands)
07:49 ITChap yeah best way to get hated by everyone in the company
07:50 ITChap And my holidays start in few days so let's keep it understandable
07:50 babilen :D
07:50 mosen yeah
07:55 Grokzen joined #salt
07:56 ITChap Looks like the haproxy formula took a very painful path
07:57 ITChap https://github.com/saltstack-formulas/haproxy-formula/blob/master/haproxy/templates/haproxy.jinja
07:57 dopesong_ joined #salt
07:58 babilen *shudder*
07:59 babilen Don't you simply have sections and indented settings in there?
07:59 krymzon joined #salt
08:00 ITChap yeah
08:00 ITChap so basically it's displaying a yaml structure without ':'
08:00 ITChap pretty much
08:00 babilen ITChap: What might be a much better approach is to render the configuration file in Python (you essentially use py as renderer/template in the file.managed state and implement run() to return a suitable string)
08:01 babilen Should be fairly trivial Python code
08:02 ITChap I see
08:02 ITChap I can give it a try
08:05 s_kunk joined #salt
08:06 ITChap Do you have an idea to control the indentation ?
08:12 Ztyx joined #salt
08:15 larsfronius joined #salt
08:19 kukacz joined #salt
08:20 babilen ITChap: Appropriate whitespace in the string would be one approach ;)
08:21 kukacz|75601 joined #salt
08:21 babilen You might even want to check if there is a Python module to generate/parse the haproxy configuration file format and use that directly. I use that approach for a variety of configuration files (e.g. simply use configparser to generate INI style files)
08:21 breakingmatter joined #salt
08:23 Adonisxxj joined #salt
08:23 johngrasty left #salt
08:23 qp joined #salt
08:23 N-Mi joined #salt
08:23 ziro` joined #salt
08:24 jhauser joined #salt
08:28 kukacz joined #salt
08:29 keimlink joined #salt
08:30 fredvd joined #salt
08:34 larsfronius joined #salt
08:34 Ztyx joined #salt
08:35 sk_0 joined #salt
08:36 dthorman joined #salt
08:38 druonysus joined #salt
08:40 linjan joined #salt
08:42 qp Hello
08:43 qp I have a problem with git.latest state - when i run it again, it complains about conflicts
08:43 qp https://gist.github.com/anonymous/354ab72170e320e48a99
08:44 Adonisxxj joined #salt
08:45 qp but there's no change in the remote repo between each of the state runs
08:46 Ztyx joined #salt
08:46 Ztyx left #salt
08:47 qp (it does not work with force_reset either)
08:48 Adonisxxj joined #salt
08:50 TyrfingMjolnir joined #salt
08:51 Adonisxxj joined #salt
08:52 Adonisxxj joined #salt
08:55 Adonisxxj joined #salt
08:58 Aidin joined #salt
08:58 Aidin left #salt
09:03 denys joined #salt
09:05 svinota joined #salt
09:10 Ruzin joined #salt
09:11 jhauser_ joined #salt
09:13 N-Mi joined #salt
09:14 flebel joined #salt
09:14 sgargan joined #salt
09:16 Phil-Work joined #salt
09:20 chiui joined #salt
09:21 sk_0 joined #salt
09:23 dthorman joined #salt
09:24 otter768 joined #salt
09:25 impi joined #salt
09:29 thalleralexander joined #salt
09:33 dopesong joined #salt
09:37 agend joined #salt
09:39 mike25de joined #salt
09:41 ajw0100 joined #salt
09:41 cberndt joined #salt
09:41 mike25de hi guys - is there a way to connect to salt from php? - i have a lamp frontend that i use to call salt-commands via shell, but i saw there is some sort of netapi or salt-api, not sure how i can connect to it
09:44 aurynn Um, I do hope you've thought of the security model of doing that.
09:44 zerthimon joined #salt
09:45 illern joined #salt
09:48 aurynn anyway yes there's (I believe) a salt REST api... but calling to your config management platform (which runs as root) from a webapp with untrustable input is... perhaps not ideal.
09:52 mike25de aurynn: i know, you are right
09:52 mike25de but i trust my own vm with my own app
09:53 aurynn is it on the public internet?
09:53 mike25de NOOOOOOOOOOOOOOOOOOOOOOOOO
09:53 mike25de behind 2 firewall levels
09:53 mike25de :)
09:53 mike25de private cloud -nothing public
09:54 aurynn well... consider if another machine in your network got breached, how could this tool be used to gain control of the rest of your network
09:54 mike25de aurynn: i hope that doesn't happen :) i hope the network guy has everything sorted out :P
09:55 ctron there is any limitation to the number of file.* states you use in a single sls? I'm facing error Too many functions declared in state 'file' in SLS u'tomcat7'
09:55 ctron the sls is http://paste.ubuntu.com/12529969
09:55 ctron but I can't see anything strange
09:55 aurynn mike25de, "I hope" potentially doesn't end well :)
09:55 mike25de true aurynn but my question is related to salt - api... REST if anyone has used it
09:56 aurynn I'm not saying "don't." I'm saying "security considerations of bypassing the model should be considered"
09:56 mike25de aurynn: 110% agree
09:56 aurynn anyway check with others about the REST api; I've not used it
09:56 mike25de thanks man
09:57 aurynn if I were doing it I'd do a Python microservice that imported the Salt libs directly and did extremely limited event actions
09:57 illern joined #salt
09:57 aurynn instead of trying to do larger-scale things
09:57 mike25de my lamp app ... generates pillars.. does a lot more...
09:57 dopesong joined #salt
09:57 mike25de i see your point though aurynn
09:58 aurynn mike25de, have you bumped into the ext_pillar stuff?
09:58 subsignal joined #salt
09:58 mike25de aurynn: i have not used that
09:58 mike25de my lamp generates pillar files and puts them on the salt-master
09:58 aurynn mike25de, ext_pillar is the means by which you can reach from the pillar interface to arbitrary things without generating pillar files directly
09:59 mike25de aurynn: .. i will look into it :) thanks for the tip.
10:04 ITChap Is it still not possible to use the mine in pillars ?
10:05 ITChap Having to use the mine in states make the states less portables in most of my use cases :(
10:07 ctron I'm facing error Too many functions declared in state 'file' in SLS u'tomcat7'. there is any limitation to the number of file.* states you use in a single sls?
10:09 ctron or maybe I am not understanding the error description? I am confused
10:22 breakingmatter joined #salt
10:31 babilen ITChap: It won't be if we don't get something like static pillars (cf. https://github.com/saltstack/salt/issues/21403 )
10:35 giantlock joined #salt
10:35 quasiben joined #salt
10:36 ITChap :(
10:36 ITChap right now I base regex to my states for the mine.get call
10:36 ITChap that's ugly
10:37 ITChap and I need to handle case where you want to enter a static IP manually
10:37 ITChap make the states look pretty bad
10:37 ITChap and overly complicated
10:41 Grokzen joined #salt
10:41 Grokzen ?
10:42 ITChap When calling the mine from the states
10:42 ITChap you have to give the mine function a pattern to select your minions and a function
10:43 ITChap which mean that your formula is not reusable anymore
10:52 rubendv joined #salt
10:59 subsignal joined #salt
11:02 PuckD joined #salt
11:02 PuckD hi everyone
11:05 subsignal joined #salt
11:05 PuckD I have the following setup http://pastebin.com/Epf9epWm with the zabbix formula in /srv/formulas/zabbix-formula, before I installed on one machine named "voip", my pillar/top.sls had base: 'voip':, changed it to '*':, restarted salt-master, when I run salt '*' state.highstate test=True only the voip server reports back, rest of the servers say "Comment: No Top file or external nodes data matches found", what am I missing here ?
11:07 Rkp I don't think you can use just * in pillars for states for some reason?
11:08 PuckD I'll try that
11:08 PuckD now I get Rendering Primary Top file failed, render error: expected alphabetic or numeric character, but found ':'; line 2
11:08 PuckD oh wait
11:09 PuckD I missunderstood you
11:10 Rkp I haven't tried it myself so I have to rely on the one who did on our setup but it seems just '*': doesn't work for pillar, unlike in salt. Other global matchs work fine though (like 'server*':)
11:12 PuckD do I need to update my state with a command? Doesn't matter how much I change my top.sls file, only voip reports back, yet I'm targetting a totally different machine
11:14 Rkp do you see your other server in salt-key -L?
11:15 PuckD yes, it's accepted
11:15 PuckD it responds even to salt "*" test.ping
11:16 TooLmaN joined #salt
11:17 Rkp which command are you using to deploy to your other server? as far as I know pillar data updates on state.highstate but not state.sls for instance
11:17 Rkp (I think saltutil.refresh_pillar can be used for it but I never did)
11:18 PuckD same issue
11:18 PuckD mhm
11:20 PandoraBox joined #salt
11:22 Rkp you have rules for it both in /srv/salt/top.sls and /srv/pillar/top.sls right?
11:24 PuckD Rkp: you can see my config on http://pastebin.com/Epf9epWm
11:24 PuckD oh, wait
11:24 otter768 joined #salt
11:25 Rkp yeah this one only has one server targeted in salt/top.sls
11:25 PuckD I didn't change that, good point
11:25 PuckD I just did, so trying agian
11:26 PuckD okay, that was the issue
11:26 PuckD now I just have formula issues, which I'll look for on the github page
11:34 dopesong joined #salt
11:37 kawa2014 joined #salt
11:40 aristedes joined #salt
11:51 msid joined #salt
11:52 breakingmatter joined #salt
11:53 msid left #salt
12:01 blartftt joined #salt
12:01 blartftt how do i target an OS within an SLS state file ?
12:05 vovcia with grain eg. "os:Fedora"
12:05 PuckD blartftt: https://docs.saltstack.com/en/develop/topics/targeting/grains.html#matching-grains-in-the-top-file
12:05 PuckD I think that can help
12:05 PuckD and as vovcia said, it will be 'os:CentOS':  - match: grain
12:05 ferbla joined #salt
12:10 BogdanR Hello
12:10 BogdanR I found this in the documentation but I can't figure out how to use it: https://docs.saltstack.com/en/latest/ref/clouds/all/salt.cloud.clouds.ec2.html#salt.cloud.clouds.ec2.create_keypair
12:10 blartftt thanks for the pointers. Found this article and used the if - elif - endif construct       -       https://docs.saltstack.com/en/latest/topics/tutorials/states_pt3.html
12:10 BogdanR How do I actually make Salt create and upload a keypair to ec2?
12:14 dopesong joined #salt
12:16 aristedes left #salt
12:19 sfxandy joined #salt
12:20 sfxandy hi everybody
12:21 sfxandy i need to know if there is an equivalent to using state.top but for Pillar....
12:21 phx sfxandy, there's a top.sls for pillars as well, if you mean that
12:22 sfxandy i know that, but in the setup we currently have, its rather neat to be able to do this:
12:22 sfxandy salt '*' state.top alternate_top.sls ....... so basically running Salt with a different top file
12:22 sfxandy but Pillar doesn;t obey that ....... it only ever looks for top.sls
12:23 sfxandy so you can;t have an alternate top.sls for Pillar and somehow invoke that - at least I can;t see how to
12:26 Amulo joined #salt
12:26 Amulo Hello. Does salt-minion-2015.5.3.rpm exist in the repo of SLE-11SP2
12:29 giantlock joined #salt
12:35 dopesong joined #salt
12:44 aphor anyone know the mood for releasing Be ??
12:45 aphor I'm getting antsy for the salt-cloud fixes for DO.
12:47 pcn I do want those messages to go away
12:50 malinoff joined #salt
12:51 _JZ_ joined #salt
12:55 drawsmcgraw joined #salt
12:56 drawsmcgraw joined #salt
12:57 Aleks3Y joined #salt
12:59 racooper joined #salt
13:03 anmol joined #salt
13:08 pratikmallya joined #salt
13:09 timoguin joined #salt
13:09 quasiben joined #salt
13:11 mike25de hi guys again ... i need some input from you guys:  I want that as soon as a minion is added to salt, some MAGIC should happen (before highstate or any state is being run) and some script can insert into a mysql the ip of the new minion and its fqdn.  I am sure it can be done, but not sure how to do it.   ANY idea? THanks in advance
13:13 drawsmcgraw joined #salt
13:14 elsmo joined #salt
13:15 auzty joined #salt
13:16 ikarpov joined #salt
13:17 jdesilet joined #salt
13:19 bhosmer joined #salt
13:21 babilen mike25de: Use a reactor that triggers on salt/key/accept -- https://docs.saltstack.com/en/develop/topics/reactor/index.html
13:22 babilen (don't forget the inverse if that's important too)
13:22 mike25de babilen: i was reading through that... but i don't understand how salt knows to run its script.. maybe you have an example somewhere
13:22 mike25de thanks babilen - you are very helpful as always
13:23 numkem joined #salt
13:24 perfectsine joined #salt
13:25 otter768 joined #salt
13:26 drawsmcgraw joined #salt
13:26 wenzel_ joined #salt
13:27 XenophonF joined #salt
13:30 babilen mike25de: You essentially tell it to run an execution module in the {local,cmd}.MODULE.FUNCTION bit. The target is the minion in question (in your case data['id']) and arg/kward are the arguments you want to pass the execution function. You would, naturally, have to implement an execution module that does the "stuff you want to happen" or trigger appropriate stock functions
13:30 babilen (you might even want to target different minions if you want to do things on other boxes than the new minion itself)
13:30 mike25de thank you kindly babilen
13:30 mike25de that is really cool
13:31 CeBe joined #salt
13:31 pravka joined #salt
13:32 cpowell joined #salt
13:35 froztbyte so https://docs.saltstack.com/en/latest/ref/states/all/salt.states.supervisord.html exists
13:35 froztbyte but doesn't seem to make mention of handling config files
13:36 froztbyte I guess I need cmd.wait or something?
13:38 shanemhansen So I'm running a fairly old version of salt from epel (2014.1.0) which web UI can I use?
13:38 shanemhansen saltpad doesn't seem to support it (expects 2014.5.*)
13:39 zmalone joined #salt
13:39 protoz joined #salt
13:40 pratikmallya joined #salt
13:41 dthom91 joined #salt
13:41 scoates joined #salt
13:42 wenzel_ joined #salt
13:44 elfixit joined #salt
13:44 DanyC joined #salt
13:44 hasues joined #salt
13:44 DanyC left #salt
13:44 DanyC joined #salt
13:46 sfxandy why would my minions still appear to be in test mode even though the test: False directive exists in /etc/salt/minion and the minion processes have all been restarted...?
13:46 hasues left #salt
13:50 anotherZero joined #salt
13:51 Ahlee shanemhansen: You're building your own.
13:51 shanemhansen Ahlee, k thanks.
13:52 Ahlee shanemhansen: you might be able to dig up halite nad have partial support
13:52 Ahlee with a bit of hacking i had saltpad running agasint 0.17.5
13:52 Ahlee but saltpad is too slow to be useful for us
13:55 XenophonF on windows servers, would it make sense to add a grain named 'osedition' that could be "Server Core" or "Standard"?
13:55 XenophonF or would it be better to call the attribute 'windowsserveredition'?
13:55 XenophonF or would it be better to have a boolean of some kind?
13:55 XenophonF what do you all think?
13:57 XenophonF complicating things is the fact that "Server Core" vs "Standard" is different than the "Home"/"Pro"/"Web"/"Standard"/"Data Center"/etc. edition
13:57 pdayton joined #salt
13:58 XenophonF so maybe calling the grain "windowsinstallation", "osinstallation", "osinstalltype", or something like that would be better
13:59 XenophonF i'm kind of leaning toward osinstalltype
13:59 murrdoc joined #salt
14:00 sunkist joined #salt
14:02 pratikma_ joined #salt
14:02 XenophonF and since vnext server will have a "Nano Server" option, i'm leaning toward an enum not a boolean
14:04 GabLeRoux joined #salt
14:04 Ahlee yes.
14:04 Ahlee :)
14:05 ikarpov joined #salt
14:05 andrew_v joined #salt
14:06 anmol joined #salt
14:06 ferbla joined #salt
14:07 giantlock joined #salt
14:07 ipmb joined #salt
14:08 berserk joined #salt
14:09 berserk joined #salt
14:09 teebes joined #salt
14:10 subsignal joined #salt
14:11 mike25de XenophonF: i think you are right :)
14:12 mike25de enum makes more sense
14:19 oreokink joined #salt
14:23 breakingmatter joined #salt
14:25 zwi joined #salt
14:30 StolenToast anyone else encounter this? https://github.com/saltstack/salt/issues/18614
14:30 StolenToast compact.py breaks if you try to use it with state.highstate in 2015.5.3
14:33 Akhter joined #salt
14:35 ajw0100 joined #salt
14:36 ikarpov Hi. I am new to SaltStack. Could anyone suggest me how to copy the files from a directory in git repo to minion? With Ansible, this is rather straightforward, like local_action: git repo={{ git_repo_name }} dest={{ git_repo_dir }} … copy: src={{ git_repo_dir }}/config/scripts/ dest={{ es_scripts_dir }}. After few hours spent with gitfs as a SaltStack fileserver_backend I began to suspect that SaltStack never clones a remote git repo to the master’s filesy
14:36 ikarpov keeping it as a virtual filesystem ‘mounted’ to some mountpoint.. is that right? ‘The master caches the files from the git server and serves them out’
14:38 tmclaugh[work] joined #salt
14:46 StolenToast is there a better way to view only failures from a highstate?
14:59 clintberry joined #salt
14:59 clintberry joined #salt
15:02 teebes joined #salt
15:04 Taz_ joined #salt
15:04 Taz_ joined #salt
15:05 dthom91 joined #salt
15:05 forcer- joined #salt
15:06 tanta_g joined #salt
15:07 londo joined #salt
15:07 dthom91 joined #salt
15:07 g3cko joined #salt
15:07 ahale joined #salt
15:07 alexhayes joined #salt
15:08 pdayton joined #salt
15:11 pdayton1 joined #salt
15:11 tanta_ge joined #salt
15:11 kaptk2 joined #salt
15:12 XenophonF ikarpov: if you want to clone a git repo on a minion, use one of the git states, e.g., git.latest
15:12 dthom91 joined #salt
15:13 XenophonF ikarpov: gitfs is for storing state data in git, which could include files that you would deploy via file.recurse (but using a salt:// URI)
15:14 XenophonF ikarpov: gitfs does clone the desired repository on the salt master, and it updates it every 60 seconds by default
15:15 XenophonF StolenToast: there are other output options for the 'salt' command but i forget what they are off the top of my head
15:15 XenophonF StolenToast: you'll want to look at the cli documentation, the --output option iirc
15:15 lz-dylan Hey folks, anyone know if the Ubuntu PPA is due to be updated? It's still serving 2015.5.2 as latest.
15:16 StolenToast XenophonF: thanks
15:17 ikarpov XenophonF: thanks a lot.
15:18 XenophonF you're both welcome
15:18 XenophonF does anyone have an example of a custom grain module that they could share?
15:18 murrdoc git:/saltstack/salt-contrib
15:20 pirogoeth joined #salt
15:21 mohae joined #salt
15:21 berserk joined #salt
15:22 XenophonF https://github.com/irtnog/active-directory-formula/blob/master/_grains/windows_installation_type.py isn't returning grain data
15:22 pirogoeth I've been running into a relatively uninformative render error with one of my statefiles
15:23 pirogoeth http://pastie.org/10439716 << here's the statefile (base/states/docker/init.sls)
15:24 PeterO_ joined #salt
15:25 pirogoeth and that took way too long but here is the error that I'm getting back: http://pastie.org/10439724
15:26 tkharju joined #salt
15:26 otter768 joined #salt
15:26 pirogoeth i was originally trying this through salt-ssh and kindof assumed it was a bit of weirdness with salt-ssh itself, but i just tried it through a regular salt & minion setup and it's doing the same thing.
15:26 pirogoeth any ideas?
15:27 jmreicha joined #salt
15:28 Rkp pirogoeth: is your /etc/default/grub file handled by salt somehow? not just being a file.managed but also a jinja template or some shit
15:28 pirogoeth yeah, there's a jinja template chillin in my roots. need me to paste that too?
15:28 XenophonF pirogoeth: indentation error - line 107
15:28 pirogoeth also, i was running it through `salt 'node' state.sls docker`
15:28 Rkp I think it says it tried to parse the file as a jinja template and saw a character it didn't like
15:28 Rkp oh
15:29 mr_const joined #salt
15:29 murrdoc joined #salt
15:29 pirogoeth omg if it's really just indentation...-_-
15:29 Rkp then nevermind
15:29 pirogoeth let me try that...
15:29 mr_const is there something like implicit pillar import in the saltstack?
15:29 XenophonF yaml doesn't return very good parse errors :(
15:30 laax joined #salt
15:30 Rkp it could be yeah, because if salt can't parse the yaml it will choke on it most likely
15:30 pirogoeth whelp, i feel dumb now :(
15:30 mr_const i have /srv/salt/appserv.sls, is there some way to import /srv/pillar/appserv.sls?
15:30 pirogoeth thanks XenophonF, Rkp!
15:30 mr_const when running salt '*' state.sls appserv
15:30 XenophonF and the line numbers are messed up because there's no way for the preprocessor (e.g., jinja) to communicate with yaml's parser (like how a C preprocessor might issue line pragmas)
15:31 pirogoeth XenophonF, yeah....I spent some time searching last night but I guess I didn't look hard enough :)
15:31 murrdoc1 joined #salt
15:31 bluenemo joined #salt
15:31 pirogoeth mr_const, you *may* be able to do an include from the top of your /srv/salt/appserv.sls
15:31 XenophonF mr_const: in .../pillar/top.sls, assign 'appserv' to your minion
15:31 pirogoeth or this ^^
15:32 mr_const so, only through top.sls?
15:32 XenophonF mr_const: then in the state file, you can access whatever keys get defined in .../pillar/appserv.sls via the pillar dict
15:33 sgargan joined #salt
15:33 XenophonF pillar data and state data are wholly separate entities
15:33 XenophonF so importing one from another does not compute
15:34 XenophonF if you want to use pillar data in a state file, you need to do so at render time (e.g., via jinja), same as for grain data
15:35 XenophonF mr_const: if you need a concrete example, see https://github.com/irtnog/salt-states and https://github.com/irtnog/salt-pillar-example
15:35 mr_const thanks, I'll take a look
15:36 svinota joined #salt
15:36 XenophonF that pillar and state data are both stored as yaml is merely a co-incidence.  they are actually both completely different data sets within salt.
15:37 ALLmightySPIFF joined #salt
15:37 anmol joined #salt
15:37 mr_const If I have several pillar_roots
15:38 mr_const does each one needs top.sls?
15:38 mr_const I can't make it working :(
15:39 bhosmer joined #salt
15:41 XenophonF mr_const: can't read your mind, bro, so you'll have to give us the details of what you're trying to do, and how
15:41 XenophonF use gist.github.com or paste.debian.net or something
15:41 mr_const XenophonF, sure
15:41 fredvd joined #salt
15:44 mr_const https://gist.github.com/mr-const/e4e5c23189746871f27d
15:44 mr_const here is my pillar setup
15:45 mr_const appserv - is one set of states and pillars and platform is another
15:47 SneakyPhil joined #salt
15:48 XenophonF mr_const: i'm moderately confused
15:48 jeffspeff joined #salt
15:48 XenophonF mr_const: why don't you put everything under /srv/pillar, for now?
15:48 jeffspeff i'm not able to install a package from my win repo. here's the error and the init.sls for the package. https://gist.github.com/jeffclay/c82b8e2fa2748c4eb020
15:49 mr_const XenophonF, I can, but I'd like to keep different projects separated
15:49 mr_const and they are in different repos
15:49 XenophonF mr_const: make all pillar assignments in /srv/pillar/top.sls, set the pillar keys you want in /srv/pillar/config.sls, /srv/pillar/rabbitmq.sls, and /srv/pillar/platform/streamserv.sls
15:49 jeffspeff other packages are running fine, i just tried manually deploying this package to a system and it throws that error. i also did a winrepo.genrepo and then ran a pkg.refresh_db on the workstation, didn't change anything
15:50 XenophonF mr_const: well, you said it wasn't working. probably be a good idea to temporarily condense and simplify things, get it working, and then re-organize it to match your requirements later
15:51 XenophonF jeffspeff: you misspelled 'msiexec' in the package definition, line 7
15:51 mr_const XenophonF, well, this is reorganization :)
15:52 stupidnic I was wondering if somebody might help me with a problem I am having with some mine_functions https://gist.github.com/tomwalsh/d7c550577c2b94835b10
15:53 jeffspeff thanks XenophonF. i always mess up something like that. :P
15:53 blartftt is there a built in variable for the kernel running on the minion? i need to drop a file into /lib/modules/$(uname -r)/kernel/drivers  - but saltstack doesnt like the $(uname -r) variable...
15:54 ajw0100 joined #salt
15:54 kawa2014 joined #salt
15:54 XenophonF stupidnic: you might try putting that command into a script, as the shell glob is obviously not being expanded prior to executing the command
15:54 stupidnic XenophonF: hmm okay. any pointer on how to accomplish that?
15:55 stupidnic also... why do both minions return the same id on the public_ssh_hostname call?
15:55 whytewolf because only www01 is responding to the mine
15:56 stupidnic hmmm okay.
15:56 kawa2014 joined #salt
15:56 stupidnic odd since they are identical
15:56 XenophonF blartftt: replace the `$(...)` (which is only valid in shell scripts btw) with the Jinja equivalent.  something like `{{ salt['cmd.run']('uname -r') }}` might work
15:57 murrdoc joined #salt
16:00 blartftt thanks for the tip XenophonF. looks like i can also use {{ salt['grains.get']('kernelrelease') }}
16:00 XenophonF even better!
16:01 blartftt =)
16:01 Cyis Hmm...  I would simply use {{ grains.kernelrelease }} myself
16:01 pirogoeth well, i seem to be facing another interesting problem..
16:01 pirogoeth just upgraded my old master to 2015.8.0
16:01 bhosmer joined #salt
16:02 pirogoeth and apparently grains.filter_by() no longer likes being passed a default kwarg. :|
16:02 murrdoc that would suck donkey balls
16:02 murrdoc if true
16:02 Cyis I frequently have to use {{ grains.host|lower }} to support our legacy applications that insist on using directories to deploy that match the hostname rather than a standard application path
16:03 murrdoc pirogoeth:  https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.grains.html#salt.modules.grains.filter_by
16:03 murrdoc looks supported ?
16:03 pirogoeth I know...that's the weird part :(
16:03 murrdoc what is in the code
16:03 pirogoeth moment, will pastie a traceback and my map.jinja file
16:03 murrdoc gist please
16:04 murrdoc one link all context
16:04 cyborg-one joined #salt
16:04 pirogoeth blargh
16:04 indispeq how can you circumvent the problem of updating the minion configuration (which requires a restart of the salt-minion service), that then makes the highstate fail?
16:04 pirogoeth one moment then
16:04 indispeq I am trying to add configs s3.keyid and s3.key to the minion config, but the restart of the service kills my highstate
16:06 pirogoeth murrdoc, https://gist.github.com/pirogoeth/f7892e5f64862e005a5c
16:06 pirogoeth can't reproduce with salt-ssh as it seems to be forgetting my nginx/map.jinja that way.
16:08 jalbretsen joined #salt
16:09 pirogoeth or not...wtf is happening
16:09 blartftt <Cyis>: well thats even cleaner, thanks for that tip!
16:10 pirogoeth with doing `salt-ssh 'omega.maio.me' state.show_sls core` now works fine, but doing a `salt 'omega.internal.maio.me` state.show_sls core` fails
16:12 pirogoeth now, if i try to do a show_sls from a different environment (ie., saltenv=prod) stuff starts failing on both sides
16:12 Bryson joined #salt
16:13 sgargan joined #salt
16:16 kawa2014 joined #salt
16:17 pirogoeth something's just up with my salt-master install (that i'm not using), so no worries here. everything magically works with salt-ssh again.
16:22 dthom91 joined #salt
16:24 knite joined #salt
16:25 malinoff joined #salt
16:25 iggy pirogoeth: there's a closed issued in the salt-formula repo that explains how to get formulas to work with salt-ssh (there's a way to tell it certain files should be included)
16:29 pirogoeth iggy, somehow my issue just magically fixed itself..so everything is all good now. thanks though!
16:30 danlsgiga joined #salt
16:31 danlsgiga I've noticed that most, if not all, salt formulas I see in the internet and even on salt-formulas github repo they don't provide checks or conditions to decomission services
16:32 danlsgiga I'm thinking this is due to the default behaviour of discard and recreate in the current cloud world
16:32 drawsmcgraw danlsgiga: I was about to say something to that effect.
16:32 drawsmcgraw Decomissioning nowadays is more of removing a few rows from a database or a config file, then destroying a machine.
16:32 drawsmcgraw For better or worse :/
16:33 danlsgiga drawsmcgraw: That was what I was thinking about... I'm migrating our Puppet env to Salt and I have lots of puppet modules that take care of decomission as well (checking if an attribute is absent and then removing it)
16:34 danlsgiga drawsmcgraw: But I noticed that I've never had the need to actually use it due to the volatile server lifetime we have nowadays
16:34 drawsmcgraw danlsgiga: From my understanding, there's certainly nothing stopping you from implementing that in Salt. But yes, you'd have to write your own. Not a whole lot in the community.
16:35 drawsmcgraw Right. One of the wonderful (terrible?) things about virtualized ecosystems :)
16:35 quasiben joined #salt
16:35 danlsgiga drawsmcgraw: I'm just questioning myself if this is worth for...
16:35 aparsons joined #salt
16:35 Fiber^ joined #salt
16:36 kawa2014 joined #salt
16:36 danlsgiga drawsmcgraw: and I'm realizing it is not... I've been working to migrate some modules and I've been putting tons of checks do validate the state (installed / purged) (present/absent)
16:36 danlsgiga drawsmcgraw: and my formula is starting to be a monster
16:37 writtenoff joined #salt
16:37 drawsmcgraw danlsgiga: This is an easy trap to fall into. I always like to start small. Winning small victories helps to show what you *actually* need to do.
16:37 drawsmcgraw Often, I find that what I set out to do was more than what I actually needed to do.
16:37 danlsgiga drawsmcgraw: And I mean... the whole purpose of Salt is being able to spin new servers and services in a blink... so, what's the benefit of having tons of code to take care of decomissioning if I can simply destroy and recreate...
16:37 jodv joined #salt
16:38 danlsgiga drawsmcgraw: Does it make sense or am I getting crazy? :P
16:38 drawsmcgraw danlsgiga: Do you mean to say that you're questioning the value of writing automation to decomission services?
16:39 danlsgiga drawsmcgraw: Yeah, I think I need to simplify and follow more a KISS philosophy than trying to control the world with salt
16:39 danlsgiga drawsmcgraw: yup
16:39 drawsmcgraw If that's the question, then I would say "You're correct. There's not much value in automating the full decommission of a service, save for updating config files to show that said service is no longer available."
16:39 danlsgiga drawsmcgraw: from a code maintenance perspective... writing formulas that take care of everything seems do be a pain
16:41 drawsmcgraw danlsgiga: Yes. Yes it is.
16:41 drawsmcgraw I speak from experience there.
16:41 drawsmcgraw You're approaching the 80/20 principle at that point.
16:41 danlsgiga drawsmcgraw: yeah, configs, service status and grains maintenance are ok... a good example is my glusterfs module where I started to build thinking on orchestrating the provisioning (which is working beautifully), but when I started to try to put the decomissiong process into the code I hit hard in the wall and reality fell on me
16:42 drawsmcgraw Ah
16:42 drawsmcgraw Depending on how frequently you have to decomission GlusterFS nodes (hopefully not very), I would just live with that being only a semi-automated thing.
16:42 snarfy joined #salt
16:43 danlsgiga drawsmcgraw: because I need to think on lots of dependencies like, I need to first stop the volume, then delete it, then detach the instance then stop the service then, then, then
16:44 danlsgiga drawsmcgraw: yeah... really not often... actually I've never needed that so far :P
16:44 drawsmcgraw Ah, I see now.
16:47 danlsgiga drawsmcgraw: Thanks to pointing me out the 80/20 principle... reading about that now... interesting and true!
16:47 drawsmcgraw danlsgiga: Has saved me a *lot* of time :)
16:47 neogenix joined #salt
16:48 danlsgiga drawsmcgraw: yup... really interesting!
16:50 knite joined #salt
16:51 armyriad joined #salt
16:53 sfxandy joined #salt
16:55 dthom91 joined #salt
16:58 mr_const Hm...
16:58 mr_const The minion function caused an exception
16:58 mr_const KeyError: 'mysql_database.present'
16:58 mr_const how to debug this kind of errors?
16:58 mr_const there are no more info in log files
16:59 drawsmcgraw mr_const: When I see that, it's almost always me using a state function that doesn't exist.
16:59 knite what's the right way to assign custom pillar data per minion? I've found several recipes online, but they all look a bit hacky, and the simple solution with ignore_missing doesn't actually work when the file is missing.
16:59 drawsmcgraw Or I haven't installed the deps required by that state/module.
16:59 drawsmcgraw Basically, "The function mysql_database.present is not available"
17:00 mr_const Hm...
17:01 whytewolf mr_const: install python-mysqldb into the minion
17:02 whytewolf [or what ever the package name is in your distro/os of choice]
17:02 GabLeRoux joined #salt
17:03 mr_const whytewolf, thanks, found in the doc "requirement"
17:04 forrest joined #salt
17:04 whytewolf but yeah, the KeyError should be fixed in 2015.8 but earlyer it basicly means that the state being used isn't loaded by the lazyloader or just doesn't exist at all
17:05 berserk joined #salt
17:05 forrest joined #salt
17:08 saltycharles joined #salt
17:08 GabLeRoux joined #salt
17:24 pravka joined #salt
17:25 dthom91 joined #salt
17:26 bhosmer joined #salt
17:27 forrest lol
17:27 forrest babilen: /troll
17:27 otter768 joined #salt
17:28 pdayton joined #salt
17:28 dopesong joined #salt
17:29 dthom91 joined #salt
17:30 babilen What?
17:34 elsmo joined #salt
17:37 dthom91 joined #salt
17:39 Akhter joined #salt
17:44 PI-Lloyd joined #salt
17:44 timoguin joined #salt
17:47 danlsgiga drawsmcgraw: Do you have any "best practice" pattern for state IDs?
17:47 malinoff_ joined #salt
17:47 drawsmcgraw danlsgiga: Nothing hard-and-fast but I try to be explicit. Sort of how I approach variable names.
17:48 szhem joined #salt
17:48 pratikmallya joined #salt
17:48 drawsmcgraw Like -> 'install-home-app-from-tarball'
17:49 danlsgiga drawsmcgraw: ok... I'm thinking more on linking the formula/state... something like glusterfs.server-pkg, glusterfs.client-mount-{{ mountpoint }}
17:49 lexter joined #salt
17:50 drawsmcgraw danlsgiga: Sounds good. So long as the reader can understand the intent and there's a low chance for namespace collisison.
17:51 danlsgiga drawsmcgraw: yup... that's my concern, but the name convention will depend a lot on the package you are dealing with... glusterfs has only 1 config, so it is fine to have glusterfs.server-config
17:51 tanta_ge joined #salt
17:51 breakingmatter Does anyone have any recommendations on "cleaning up" an aging salt-stack instance? i.e., cleaning out old caches, killing stuck jobs, etc.
17:52 danlsgiga drawsmcgraw: The same probably won't be a good idea for apache, since it has more than one config file
17:52 gerhardqux on the topic of state ID naming, what's the general opinion on using {{ sls_path }} in it?
17:53 danlsgiga gerhardqux: great question!
17:53 iggy gerhardqux: please do, the more info the better
17:53 danlsgiga gerhardqux: It seems to be a good approach
17:54 bhosmer joined #salt
17:54 iggy a number of the formulas use it in the "do not hand edit this file" section
17:54 danlsgiga iggy: I just wonder if I need to reference it in a require outside of the scope
17:55 dthom91 joined #salt
17:55 danlsgiga iggy: example... I have a formula that has a folder peer with a probe.sls file... on that state I require a service from my parent folder
17:55 danlsgiga iggy: {{ slspath }} in this case will fail
17:55 iggy it fails?
17:55 iggy that sounds like a bug
17:56 iggy at the very least it should be  something like "COULD NOT DETERMINE SLSPATH, FILE A BUG"
17:56 danlsgiga yes, because probe.sls is inside the peer folder and when I require my service that is in the parent folder it gives me a wrong state ID
17:57 iggy file a bug?
17:57 gerhardqux "include" has this nice dot-prefix for namespacing, this would also be nice in state IDs
17:58 danlsgiga so, service.sls is in my formula root folder, it has a state id of {{ slspath }}-service, in my peer/probe.sls i have a require to {{ slspath }-service, but in this folder {{ slspath }} resolves to glusterfs/peer instead of glusterfs
17:58 iggy oh, like that... no, that's probably a terrible idea
17:59 iggy I dislike jinja in state id's
17:59 dendazen joined #salt
17:59 danlsgiga iggy: yup, but I guess that was gerhardqux was asking about
17:59 sbogg joined #salt
17:59 iggy was it?
17:59 gerhardqux yes
17:59 drawsmcgraw That's what I thought, after reading it a few times.
17:59 iggy I misunderstood the question, terrible idea
17:59 drawsmcgraw It sounds clever, but it sounds like it'd be *really* complicated to follow/troubleshoot.
18:00 gerhardqux it helps the namespacing issue, but makes it more crufty to read the sls
18:00 danlsgiga yeah, it will break everything that is out of the formula root folder scope
18:00 iggy don't try to be clever with jinja... it _will_ come back to bite you
18:00 drawsmcgraw I second iggy
18:00 danlsgiga iggy: lol
18:01 Ac-town is there a best way to deal with two pillars with the same key in two different location? I'd like to merge them some how. ex: postgres: acls: - blah in one location with some more defined elsewhere. I already tried pillar_source_merging_stratery recurse
18:01 danlsgiga iggy: so, rule of thumb... do it the more static possible?
18:02 DammitJim joined #salt
18:02 DammitJim OK, so I have configured a pillar with a list of instances for some software that I need to configure on a linux server
18:03 drawsmcgraw danlsgiga: I think so, yes. Static means simple. And simple is always good.
18:03 iggy just don't try to be too clever with jinja... I mean it's there to make our lives easier, not to make our lives perfect
18:03 DammitJim this list of instances has another list within it with information about different configurations for each instance
18:03 gerhardqux I'm going with simple then :)
18:03 danlsgiga drawsmcgraw: indeed!
18:03 DammitJim how does one go about setting this up?
18:03 DammitJim gosh, so hard to explain
18:04 DammitJim I think I might have to do some manual work first
18:04 bhosmer joined #salt
18:05 DammitJim so, basically I have say 3 instances of tomcat on an ubuntu server
18:05 DammitJim each instance has a configuration for the ports it uses
18:05 DammitJim then each instance has a configuration for the connection pools it uses
18:05 DammitJim the ports are just 1 of each http and https
18:06 DammitJim but the connection pools are all different where XML specifies the server, database, username, password, etc so one could have sections in that XML with multiple entries for that information
18:06 DammitJim I can't picture how to organize this
18:06 DammitJim :(
18:07 katyucha joined #salt
18:07 DammitJim can I pass a list from my state file to my jinja xml template, where the list came from a pillar definition?
18:07 iggy Ac-town: that is sorely a pain point in Salt right now... you may look into some of the other pillars (varstack/reclass/etc)
18:09 gerhardqux DammitJim: you could do some very clever nested looping with jinja. But I just moved to the static+simple camp, and you can also remove your data from the pillar and make simple and static sls files.
18:09 Ac-town iggy: do you have a link where i can read up on those? I didn't know you could use something else for a pillar
18:09 DammitJim gerhardqux, I'm starting to think I might have to do that :(
18:09 DammitJim in my state file, how do I get a list from pillar?
18:10 DammitJim for instance in tomcat_sections.items() ?
18:10 iggy Ac-town: they are generally referred to as "ext_pillar"... googling for that should help
18:10 linjan joined #salt
18:10 trph joined #salt
18:10 trph joined #salt
18:11 Ac-town great thanks
18:11 bhosmer joined #salt
18:11 iggy I'm not sure if there's much inthe actual salt docs about them (aside from how to set them up if you know how to use them)
18:11 iggy Ac-town: https://docs.saltstack.com/en/latest/salt-modindex.html#cap-p
18:12 lemur joined #salt
18:12 gerhardqux DammitJim: look at the users example in https://docs.saltstack.com/en/latest/topics/tutorials/pillar.html
18:14 GreatSnoopy joined #salt
18:17 DammitJim thanks gerhardqux ... the problem is that I'm 3 levels deep in my pillar lists
18:17 DammitJim the first level is the instance
18:18 DammitJim the second is the name of the connection pool for that instance (there are multiple connection pools in each instance)
18:20 sirex joined #salt
18:21 __alex joined #salt
18:23 denys joined #salt
18:25 ludwig joined #salt
18:27 ludwig hi, newb question: I have SLES 11.3, so the newest salt-master I can get is 2015.5.5, even though it's up to 2015.8.1  on other OSes. Is there a long wait for the SLES/opensuse version to catch up?
18:27 DammitJim can I pass a list from a state to a template in a context?
18:27 timoguin_ joined #salt
18:28 pdayton joined #salt
18:30 linjan joined #salt
18:30 pratikma_ joined #salt
18:34 DammitJim dammit
18:34 DammitJim it seems it isn't possible
18:34 DammitJim ugh
18:35 KyleG joined #salt
18:35 KyleG joined #salt
18:35 danlsgiga DammitJim: yes you can... just use the - context:
18:35 DammitJim danlsgiga, it seems context won't pass a list or dictionary
18:36 DammitJim https://github.com/saltstack/salt/issues/6435
18:36 danlsgiga DammitJim: It does! Just pass the {{ list }} or {{ dict }} to a variable in the context... then in the template you can iterate in the list or dict passed variable
18:37 DammitJim how do I iterate through what I passed in the context
18:37 DammitJim my context right now says: pool: {{ connections }}
18:37 danlsgiga DammitJim: use jinja in the template
18:37 DammitJim which is a list that came from pillar
18:37 DammitJim in my template, I say: {% for option, value in {{ pool }}.iteritems() %}
18:37 danlsgiga DammitJim: then {%- for conn in connections.iteritems() %}
18:37 danlsgiga oops
18:37 DammitJim but I get an error saying it's expecting a : but it got a }
18:38 danlsgiga DammitJim: you are passing a list or a dict?
18:38 danlsgiga DammitJim: option, value expect you to have a dict
18:38 DammitJim I guess it's a dict
18:38 DammitJim sorry, it is a dict
18:38 DammitJim not a list
18:38 timoguin joined #salt
18:38 DammitJim I could do a list, though
18:39 DammitJim holy crap!
18:39 DammitJim I think this might have worked
18:39 bhosmer joined #salt
18:39 DammitJim and I didn't need the {{ }}?
18:39 danlsgiga DammitJim: I was just about to tell you that
18:40 DammitJim danlsgiga, THANK YOU!
18:40 danlsgiga DammitJim: {{ }} is used to print variables values in jinja... you want to iterate in an object, then use it directly
18:40 DammitJim now, I need to figure out how to pass 3 parameters that don't repeat themselves (the http, https ports)
18:41 danlsgiga DammitJim: what you mean?
18:42 DanyC joined #salt
18:42 fredvd joined #salt
18:44 DammitJim danlsgiga, so, my context.xml and thanks to you now has repeating entries of a resouce tag with different configurations
18:44 DammitJim I also do have single entries for http and https ports on this context.xml
18:44 DammitJim how do I pass that single value from a pillar?
18:45 danlsgiga DammitJim: can you pastebin or gist what you are trying to do?
18:45 DammitJim yeah, hold on
18:49 pravka joined #salt
18:49 bougie joined #salt
18:50 krymzon joined #salt
18:52 test1234test joined #salt
18:52 DammitJim https://gist.github.com/anonymous/a7be6174e80d2f52a2a5
18:52 DammitJim danlsgiga, sorry it took me so long
18:52 DammitJim can you see the gist?
18:53 DammitJim the first part is the pillar definition
18:53 DammitJim the second is the state
18:53 DammitJim the third is the server.xml template
18:53 DammitJim line 50 changes per instance (in this example there are 2 instances (1 and 2) in the pillar definition
18:54 DammitJim does that make sense?
18:55 zmalone joined #salt
18:55 danlsgiga DammitJim: Use iteritems() when traversing dicts
18:55 DammitJim I'm doing that
18:55 danlsgiga DammitJim: tomcat_sections.items()
18:55 DammitJim oh ok
18:55 DammitJim thanks
18:55 DammitJim I'll change that
18:57 DammitJim what other source could I use to say: https://gist.github.com/anonymous/cd94f97ea45aa9b851b6
18:57 thalleralexander joined #salt
18:57 DammitJim then use it in my state to pass it to my template or use it directly from my template?
18:57 pravka anyone know how to assign the mac to a vm via salt-virt?
18:58 danlsgiga DammitJim: Just pass it to the template
18:58 danlsgiga DammitJim: then in the template you can do whatever you want
18:58 DammitJim how do I pass it to the template?
18:59 dthom91 joined #salt
18:59 danlsgiga DammitJim: you need to import it first in the state, then pass the object directly to the template
18:59 DammitJim can I have something like this: https://gist.github.com/anonymous/5d38ab305ad351ef32dc
18:59 pravka in modules/virt.py, there's a _assign_mac function
19:00 kusams joined #salt
19:00 danlsgiga DammitJim: is that an yaml?
19:00 pravka that apparently lets me pass `dmac` to the nic profile kwargs
19:00 pravka but that doesn't seem to be working
19:00 DammitJim where danlsgiga ?
19:00 danlsgiga DammitJim: no you can't do that
19:00 DammitJim ok
19:00 danlsgiga DammitJim: use the import_yaml
19:00 danlsgiga 1 sec
19:01 DammitJim what I'm having a hard time is importing into the state and then knowing what instance I'm configuring
19:01 DammitJim or will I have to do a switch statement of some sort?
19:02 danlsgiga DammitJim: Use this {%- import_yaml 'ports.yml' as ports %}
19:03 danlsgiga DammitJim: Then in the - context: you just pass it to the template
19:03 DammitJim ok, do I need a ports.yml for each instance?
19:04 DammitJim I guess I can't even picture what ports.yml would look like
19:04 danlsgiga DammitJim: Another option is https://gist.github.com/anonymous/5d38ab305ad351ef32dc
19:04 danlsgiga DammitJim: see my comment
19:06 danlsgiga DammitJim: add a ports attribute to your dict
19:06 scoates joined #salt
19:06 theologian joined #salt
19:06 DammitJim interesting... sounds like that could work
19:06 DammitJim how would I read that attribute directly? so that I don't try to use it in my for loop in the template?
19:07 DammitJim so, actually, 2 issues... 1) how do I not let the template create a connection pool with port information and 2) how do I get the port information in the section of the server.xml where I actually need it?
19:08 DammitJim for #1, I guess I could test that option is not equal to ports in the connection pool part of the server.xml
19:08 tristianc joined #salt
19:08 DammitJim how about the port itself?
19:08 danlsgiga DammitJim: ah, i see... you need the port / instance not per app
19:09 gerhardqux pravka: did you pass something like 'eth0_mac: 01:02:03:04...'?
19:09 DammitJim right not per pool which repeats itself: portal, then load
19:09 danlsgiga DammitJim: just add another level in your dict
19:09 pravka gerhardqux: I haven't tried that yet
19:09 DammitJim danlsgiga, how do you mean?
19:09 danlsgiga DammitJim: Let me update your gist
19:09 tristianc In the minion configuration file, what is the difference between sudo_runas and sudo_user?
19:09 pravka lemme give it a go
19:09 DammitJim I think I know where you are going... OMG... this is AWESOME!
19:10 tristianc I am reading the docs, but the description is too similar
19:11 danlsgiga DammitJim: shit, gist is not indenting
19:12 DammitJim I know it's crap
19:12 Bart joined #salt
19:12 Bart Hi Guys
19:12 JDiPierro joined #salt
19:13 Bart Quick one
19:13 Guest71640 Has anyone got PKG state to work with OSX
19:13 danlsgiga DammitJim: http://pastebin.com/kTu4X74R
19:13 bhosmer joined #salt
19:13 Guest71640 I know there's a module https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.brew.html
19:13 Guest71640 but what about states ?
19:14 DammitJim danlsgiga, brilliant!
19:15 DammitJim with this, I should be able to pull out the ports in my state file, right?
19:15 danlsgiga DammitJim: now you have everything you need in one dict
19:15 danlsgiga DammitJim: yup
19:16 iggy the pkg state module shouldn't really have any distro/pkg manager specific stuff in it
19:17 Guest71640 Ok...
19:17 Guest71640 I'll try to make it work with OSX then
19:17 dthom91 left #salt
19:17 Guest71640 I get " pkg' __virtual__ returned False"
19:19 Akhter joined #salt
19:21 PeterO_ joined #salt
19:22 danlsgiga can I have multiple commands in the unless/onlyif requisite?
19:23 gerhardqux Guest71640: The state module uses the execution module, so I guess you need to install brew first before you can use it.
19:24 baweaver joined #salt
19:26 linjan joined #salt
19:28 hasues joined #salt
19:28 otter768 joined #salt
19:28 hasues left #salt
19:28 Guest71640 yes bRew is installed
19:29 Guest71640 even using the module does not work acutally
19:29 Guest71640 hmmm
19:30 stupidnic Can I use a source for a mine function? so like mine_function: cmd.run source: salt://path/foo.sh
19:33 DammitJim danlsgiga, I'll be back
19:34 thalleralexander joined #salt
19:35 whytewolf stupidnic: cmd.run doens't really have a source input so i don't see that working.
19:35 stupidnic whytewolf: that's what I was afraid of. I am not sure how to accomplish this cat /etc/ssh/ssh_hosts_*_key.pub
19:35 murrdoc cmd.script ?
19:35 stupidnic somebody suggested a script
19:36 murrdoc but u are better off making a grain
19:36 murrdoc and pulling that into a mine
19:36 stupidnic murrdoc: hmm okay
19:37 Guest71640 How do I do a simple "if hostname is FOO" in sls files
19:39 racooper joined #salt
19:40 stupidnic Guest71640: use Jinja to check the grains of the minion
19:40 rm_jorge joined #salt
19:40 iggy Guest71640: {% if grains.id == "FOO" %}
19:41 ajw0100 joined #salt
19:43 stupidnic does highstate also sync grains?
19:43 stupidnic or do you have to do that manually before?
19:44 Guest71640 Ok so grains is mandatory
19:44 Guest71640 thanks
19:44 openfly joined #salt
19:45 openfly so ... say i am synchronizing a stateful environment after bringing up a box in salt.  does salt lend itself more to rsync or scp and unzip?
19:46 stupidnic gitfs?
19:46 openfly maybe....
19:47 openfly not sure gitfs is what i want
19:47 openfly tempted to use artifactory
19:47 openfly and just push around compressed tarballs or something
19:47 pravka gerhardqux: yeah, `eth0_mac` doesn't work
19:48 pravka I've tried dmac, eth0_mac, dmac in a kwargs array
19:48 pravka (all of those arguments are read by virt.get_profiles, btw)
19:49 elsmo joined #salt
19:49 pravka they're just not passed to _assign_mac
19:49 bhosmer joined #salt
19:50 larsfronius joined #salt
19:51 jeffspeff joined #salt
19:51 forrest You cannot seriously be telling me that salt-ssh requires permissions to /var/cache
19:51 forrest OSError: [Errno 13] Permission denied: '/var/cache'
19:51 forrest There's no option in the man page that says where to specify the cache dir
19:52 forrest and modifying the config dir doesn't resolve it
19:52 Cyis is there something with the Windows salt-minion when calling grains.setval that you need to restart the minion afterwards?
19:53 forrest Ugh you have to write a master config file for salt-ssh to work locally :(
19:53 Cyis I've had several servers where I've set multiple grains via grains.setval ... ran some tests then gone back to find the grains disappeared and need to be reset
19:53 babilen forrest: You configure that in your master config if you don't want to work as root
19:53 jmik618 joined #salt
19:53 forrest babilen: Yeah I see that now, just... dumb
19:54 forrest like it's salt-ssh why does it need a master config?
19:54 babilen (I also use subdirectories to ensure that pki and other information is being kept separate between different "groups")
19:54 forrest :(
19:54 forrest That's a pain in the ass. I just want to specify the --priv option to use my key, -r to run straight bash, and then run it and be good to go
19:54 babilen forrest: There is definitely room for improvement there. I am still not sure why the packages don't create a salt group and user to begin with so that you can add yourself to it and, at least, work with salt* without problems
19:55 forrest I also don't see cache_dir being configured in the master conf from the example
19:55 forrest babilen: I'm installing it into a virtualenv via pip
19:55 forrest The whole goal is to work remotely with a fleet of systems from my local directory
19:55 giantlock joined #salt
19:56 forrest oh because it's cachedir instead of cache_dir
19:56 forrest hmm
19:57 oreoking joined #salt
19:58 jhauser joined #salt
19:58 forrest I'll tinker with it more when I get back from lunch
19:58 forrest just a pain in the ass
19:59 oreoking I am trying to install a Symantec package on a Windows minion. I have set the cache_dir: True option in my init.sls. When I run the state, I do not get any errors. But it does not install. When I look at the minion. I only see the setup.exe file in the cache folder.
19:59 troyready joined #salt
20:01 jodv joined #salt
20:01 jmreicha joined #salt
20:02 zer0def joined #salt
20:02 babilen forrest: Feel free to open a ticket. It might not be a bad idea to, at least, get people to discuss the issue. This is clearly due to the historic development of salt and not a necessity. (I mean why not use ~/.cache/salt/... by default if executed as non-root?)
20:03 knite I'm using the salt formula at https://github.com/saltstack-formulas/hostsfile-formula/blob/master/hostsfile/hostname.sls . why does the salt report changed every time? it's like the unless statement is being ignored.
20:03 Guest71640 Ok has anyone ever got a PKG to install via salt on OSX
20:05 DanyC all, i'm curious how you deal with the following scenario: master is auto accepting the minions key, a minion-id key accepted fail and it gets redeployed. At which point it fails as the key is already accepted. So is any way to "expire" the keys of the "dead" minions? Or maybe overwrite the key?
20:05 stupidnic DanyC: use the same keys?
20:06 stupidnic we define the keys in cloud-init/cloud-config files
20:06 DanyC on OpenStack i get the same same minion-id but not same key
20:07 DanyC stupidnic: and i'm doing it via HEAT not baking/ injecting anything via cloud-init
20:07 stupidnic DanyC: you could do it via the metadata service though
20:07 stupidnic I haven't attempted it though
20:08 forrest babilen: I already have one open to update the docs explaining how to run it in a virtualenv.
20:08 forrest I'll get this working first then propose (another) issue on that topic
20:08 forrest because yeah, if not the root user, default to the current user and dir, or have a -virtualenv option that drops everything locally
20:09 DanyC stupidnic: it could be but then i don't see it a clean solution. Master imo should have a way to keep its key store tidy or option to override it
20:13 Rumbles joined #salt
20:14 DanyC any other ideas?
20:14 mapu joined #salt
20:15 cberndt joined #salt
20:16 Akhter joined #salt
20:17 subsignal joined #salt
20:18 sgargan joined #salt
20:18 chiui joined #salt
20:19 kukacz joined #salt
20:19 RedundancyD joined #salt
20:25 DanyC so basically what i'm asking is: how do i remove stale keys in an automated way so the new key of same minion-id can be successfully accepted ?
20:25 Guest71640 DanyC, I ended up putting my master open
20:26 DanyC Guest71640: what you mean by that? i already setup my master to auto accept any minion key but have not find a way for the above scenario
20:27 DanyC Guest71640: is funny cause with salt-cloud all this issue goes away, i was hopping s'thing like this is present in "normal" setup
20:29 snarfy joined #salt
20:30 nbari joined #salt
20:31 nbari hi all, my salt-mater some how stop working after upgrading, I am getting many  Minion did not return. [No response]
20:31 nbari both master/minions updated
20:31 nbari and logs are like crasy with to many lines containing something like: Authentication request from ....
20:31 nbari any ideas ?
20:32 danlsgiga hey, am I able to fire an event to the local minion bus from a state file?
20:33 cpowell_ joined #salt
20:33 nbari for anything I want to run I get The function "state.highstate" is running as PID 10932 and
20:33 drawsmcgraw danlsgiga: I don't know exactly how to do it (I think it's state.module?) but the answer is yes
20:33 drawsmcgraw danlsgiga: Also, there's no local minion bus. There's only the same event bus that the Master and all minions are connected to.
20:35 danlsgiga drawsmcgraw: Ok, but if I fire an event from my minion to itself it goes to the master and get back?
20:35 pravka gerhardqux: actually, you were right. you don't pass <nic>_mac as a kwarg to the nic profile; you pass it to init
20:35 pravka gerhardqux: my bad. that works beautifully.
20:37 drawsmcgraw danlsgiga: Looking at the docs, it appears I was wrong (and I may misunderstand the event bus)
20:38 baweaver joined #salt
20:39 drawsmcgraw danlsgiga: Either way, you would use the state.mod() function: https://docs.saltstack.com/en/latest/ref/states/all/salt.states.module.html#module-salt.states.module
20:39 drawsmcgraw And you'd run a function from the 'event' module
20:39 drawsmcgraw https://docs.saltstack.com/en/latest/topics/event/index.html
20:39 danlsgiga drawsmcgraw: I'm trying to be most modular possible in my states... and I have a reactor that currently is sending events back and forth to the master but these events will be mostly be sent to the same minion
20:39 danlsgiga drawsmcgraw: I'm just trying to simplify this and make the minion fire the event to itself
20:40 drawsmcgraw makes sense
20:40 k00l joined #salt
20:41 k00l for the love of god !!!! can ANYONE help me with this on ubuntu ?  'tls' __virtual__ returned False: ['PyOpenSSL version 0.14 or later must be installed before  this module can be used.']
20:41 danlsgiga drawsmcgraw: I was looking into the orchestrator runner... it seems interesting beause I can set a wait_for_event
20:41 k00l I cant get a stright awnser on how to upgrade this module on ubuntu.  its like NO ONE wants to give up teh upgrade path on this module
20:41 drawsmcgraw Yeah if order of operations is important among multiple minions, Orchestrate is what you want.
20:42 danlsgiga drawsmcgraw: and really control the execution flow... with reactor this seems to be impossible, i think
20:42 drawsmcgraw It's better suited to Orchestrate, definitely
20:42 danlsgiga drawsmcgraw: AFAIK, the reactor just send messages, it doesn't apply any requisites and everything is async
20:42 danlsgiga drawsmcgraw: yeah
20:43 drawsmcgraw k00l: Having trouble with pyOpenSSL? :)
20:43 k00l drawsmcgraw: ya mate, just cant fuiger out to make that simple update ?
20:43 drawsmcgraw I think(?) I had a similar issue on CentOS 6
20:43 danlsgiga drawsmcgraw: but reading the docs, it doesn't seem that I can exchange messages with data and take actions based on those actions
20:44 danlsgiga drawsmcgraw: using the orchestrate runner
20:44 drawsmcgraw danlsgiga: Sounds like you're doing some seriously heavy lifting.
20:44 drawsmcgraw k00l: From where is PyOpenSSL installed currently?
20:44 drawsmcgraw Via apt? Pip?
20:44 k00l drawsmcgraw: it was already installed
20:45 drawsmcgraw I vaguely remember having to 'yum remove' PyOpenSSL, and then eeding to pip install it
20:45 drawsmcgraw k00l: So just an 'apt-get install pyOpenSSL' isn't doing it for you?
20:45 dayid joined #salt
20:45 dayid joined #salt
20:45 danlsgiga drawsmcgraw: What I want is, send an event to the master, the reactor will catch it and call an orchestrate runner... but inside the orchestrate runner I want to grab the data sent in the event
20:45 danlsgiga drawsmcgraw: does it sound complicated?
20:45 drawsmcgraw ah
20:46 k00l E: Unable to locate package pyOpenSSL
20:46 drawsmcgraw k00l: what's 'apt-cache search pyopenssl' give?
20:46 k00l python3-openssl - Python 3 wrapper around the OpenSSL library
20:47 drawsmcgraw danlsgiga: I'm nearly certain there are ways of exposing the data from messages in Reactor....
20:47 drawsmcgraw You'd have to read up more on the Reactor docs to find out exactly how that's done. But I'm almost certain that's possible.
20:47 drawsmcgraw k00l: Yeah I was afraid of that :/
20:47 danlsgiga drawsmcgraw: maybe through the pillar attribute?
20:47 k00l drawsmcgraw: doesnt sound good
20:48 drawsmcgraw danlsgiga: I don't think so.... Take some time to go over the Reactor docs. See what that gives you
20:48 drawsmcgraw k00l: No it's not that bad. I'm just not very good at Debian/Ubuntu/Apt
20:48 danlsgiga drawsmcgraw: sounds good... will do! thanks
20:48 drawsmcgraw k00l:  How about a 'pip search pyopenssl' ?
20:48 whytewolf pip install --upgrade pyOpenSSL
20:48 conan_the_destro joined #salt
20:49 k00l i did a pip install --upgrade pyopenssl but it only brought it up to 13 and i need 14 and above
20:49 k00l pyOpenSSL                 - Python wrapper module around the OpenSSL library   INSTALLED: 0.13   LATEST:    0.15.1
20:49 dthom91 joined #salt
20:49 k00l but i dont knwo how to force it
20:49 danlsgiga drawsmcgraw: yup... just find the perfect example in the docs
20:50 danlsgiga drawsmcgraw: it does use the pillar to pass data to the orch runner
20:50 whytewolf k00l is it giving some kind of message about why it isn't installing the upgrade?
20:50 k00l says the OS owns it
20:50 k00l drawsmcgraw:   Not uninstalling pyOpenSSL at /usr/lib/python2.7/dist-packages, owned by OS
20:51 larsfronius joined #salt
20:51 drawsmcgraw k00l: If this is a disposable machine, I'd try 'apt' removing pyopenssl
20:51 drawsmcgraw Then pip installing it
20:51 whytewolf ahh yuk, yeah pip doesn't like touching packages owned by the os.
20:51 drawsmcgraw Unfortunately I'm not fluent enough with Apt to know the implications of removing the package like that.
20:52 k00l fak it ill try anything at this point .. brb
20:52 drawsmcgraw I think I had to do that for CentOS - yum remove pyopenll, pip install pyopenssl
20:52 whytewolf I have gotten to the point i don't even install pip through the os anymore
20:52 k00l ya apt dosnt see it
20:52 whytewolf k00l: apt-get purge python-openssl
20:53 k00l hey whytewolf !!
20:53 k00l DONE !!.. thank you guys so much !!!
20:53 drawsmcgraw hah. Nice :)
20:55 jodv joined #salt
20:55 jodv joined #salt
20:56 tristianc joined #salt
20:56 dh joined #salt
20:57 bhosmer joined #salt
20:58 sgargan joined #salt
20:59 jodv joined #salt
21:01 sgargan joined #salt
21:01 jodv_ joined #salt
21:03 snarfy joined #salt
21:03 TyrfingMjolnir joined #salt
21:05 jodv joined #salt
21:08 rhodgin joined #salt
21:12 bhosmer__ joined #salt
21:14 jhauser joined #salt
21:15 opensource_ninja joined #salt
21:16 dthom91 joined #salt
21:21 Brew joined #salt
21:21 nofxrok joined #salt
21:28 cpowell joined #salt
21:28 breakingmatter joined #salt
21:29 kusams_ joined #salt
21:29 otter768 joined #salt
21:29 TooLmaN joined #salt
21:32 berserk joined #salt
21:33 pcn I hate deployment in python (and ruby for that matter, but I hate ruby more)
21:33 Taz_ javascript for the win
21:33 * pcn glares at Taz_
21:36 baweaver joined #salt
21:36 dthom91 joined #salt
21:38 kusams joined #salt
21:42 danlsgiga I'm able to change any schedule through pillar, except mine.update... is that correct?
21:43 wenzel_ joined #salt
21:46 dthom91 joined #salt
21:48 JDiPierro joined #salt
21:55 scoates joined #salt
21:59 opensource_ninj1 joined #salt
22:01 jeffspeff joined #salt
22:04 chamunks joined #salt
22:04 xDamox joined #salt
22:05 scoates joined #salt
22:05 TheoSLC joined #salt
22:06 TheoSLC Greetings
22:06 xMopxShell joined #salt
22:06 TheoSLC Is UtahDave in the room?  I need help understanding this change -> https://github.com/saltstack/salt/commit/1782a8889410681268663b03629e08529b3966f9
22:06 forrest TheoSLC: He's not around today
22:06 iggy his nick is utahdave (just so you can find him easier next time)
22:07 TheoSLC ty
22:07 murrdoc ng is better the_lalelu
22:07 murrdoc TheoSLC:
22:07 murrdoc sorry the_lalelu
22:07 forrest basepi: Is Utahdave in the office today?
22:07 protoz joined #salt
22:07 TheoSLC forrest: do you know what the Windows repo location change to salt://win/repo-ng/ is about?
22:08 murrdoc https://github.com/saltstack/salt-winrepo-ng
22:08 murrdoc that
22:08 forrest TheoSLC: Just what murrdoc linked, past that, nope
22:08 forrest I don't use windows
22:08 murrdoc the salt-winrepo stuff was non jinja
22:08 murrdoc so its getting phased out
22:08 basepi forrest: I think so. Would you like me to ping him to get on?
22:09 basepi Ah, I see Theo's comment. I'll ping him.
22:09 forrest basepi: I just wasn't sure if he added that winrepo-ng stuff TheoSLC is noting to the docs anywhere, I don't see anything on it, or if it would be affected.
22:09 forrest Just to keep the confusion down on this change.
22:09 TheoSLC Updateing to 2015.8.0 broke the windows repo, it's now looking for salt://win/repo-ng/ despite my settings.  It seems that the Windows repo is changing alot.
22:10 UtahDave joined #salt
22:12 snarfy^ joined #salt
22:12 TheoSLC UtahDave: hello.  I'm looking to understand this change -> https://github.com/saltstack/salt/commit/1782a8889410681268663b03629e08529b3966f9
22:13 teebes joined #salt
22:13 forrest TheoSLC: More importantly why our config isn't getting picked up right?
22:13 forrest *your
22:13 TheoSLC correct
22:13 snarfy^ joined #salt
22:13 UtahDave hey, TheoSLC
22:14 UtahDave TheoSLC: that's because the 2015.8 minions can now templatize the windows package definition files
22:15 baweaver joined #salt
22:16 TheoSLC Cool.  So I keep my repo data in my base under salt://win/repo/  after updating it starting looking for these files at salt://win/repo-ng  I could fix this by moving my files to match, but wanted to make sure this is what should be done.
22:16 otter768 joined #salt
22:17 markm_ joined #salt
22:17 UtahDave TheoSLC: are you talking about your own custom package definitions?
22:17 TheoSLC yes
22:18 TheoSLC we only use our own custom packages.
22:18 UtahDave ok, then, yeah. that's where you'd put them
22:18 snarfy__ joined #salt
22:18 UtahDave You can now add jinja to those files, as well.
22:18 kusams joined #salt
22:19 TheoSLC but now they can't be found.  https://paste.fedoraproject.org/270782/44304676/
22:21 dthom91 joined #salt
22:22 TheoSLC now, on my salt master.  I have not configured any of the win_repo, win_repo_mastercahcefile or win_gitrepos settings.  I've just placed the win/repo in my fileserver base and it's worked, until now.
22:22 UtahDave did you run     salt '<windows minion>' pkg.refresh_db     ?
22:23 TheoSLC yes.  see the pastebin.
22:24 UtahDave is your master 2015.8 as well?
22:24 Rebus joined #salt
22:24 TheoSLC it wasn't, but same thing happened after upgrading.
22:25 UtahDave did you move your files to salt://win/repo-ng   ?
22:26 TheoSLC I did, and that solved the problem.  But I wanted to make sure I wasn't creating more problems by doing that.
22:26 UtahDave no, that's the best thing to do.
22:27 TheoSLC okay
22:27 TheoSLC thanks!
22:28 UtahDave you're welcome!
22:28 sunkist joined #salt
22:29 forrest Thanks UtahDave and basepi
22:29 basepi Yes, I did a lot of work to resolve this issue. That ping to UtahDave was hard work.
22:29 * basepi bows deeply
22:30 basepi ;)
22:31 dthom91 joined #salt
22:31 kusams joined #salt
22:34 UtahDave hey forrest
22:34 forrest what up budday
22:35 forrest Almost time to stop walking to the office, starting to get cold huh?
22:36 kusams_ joined #salt
22:36 otter768 joined #salt
22:37 bfoxwell joined #salt
22:37 forrest oh nevermind it's still 90 in SLC
22:39 adendrag joined #salt
22:39 kusams joined #salt
22:40 UtahDave hehe. I wish i've been walking to work.
22:41 linjan joined #salt
22:42 keimlink joined #salt
22:44 dthom91 joined #salt
22:52 larsfronius joined #salt
22:56 forrest Ahh I thought you were living close enough now to make it happen
22:56 forrest But maybe that was the last office I'm thinking of? I never remember
22:56 forrest you guys have had like 3 offices in the last 12 months
22:56 forrest or that's how it feels, lol
22:57 UtahDave No, I'm totally close.  I should be walking
22:57 UtahDave I drive my girls to school in the morning, so I usually just drive straight to work from there.
23:02 forrest Psssh, slacker!
23:02 forrest Just make them take the bus, duh
23:02 forrest Or tell them you're walking to work so they have to walk to school
23:03 UtahDave lol, yeeah, that would be fun.
23:04 hasues joined #salt
23:04 hasues left #salt
23:04 SunPowered joined #salt
23:04 forrest ;)
23:04 forrest Can't be nice ALL the time Dave
23:05 forrest I'm really just joking though, thus the ;)
23:05 snarfy__ ohay.
23:06 snarfy__ hey i got a question. i bet i could figure it out if I tried real hard, but I am mega lazy so there.
23:06 snarfy__ how come a "salt 'foobar01' config.get log_level" returns a different value than foobar01> salt-call config.get log_level
23:07 SheetiS joined #salt
23:07 snarfy__ across the board, the salt command from the master says config.get log_level is warning, which is a lie - the default log_level is info ;)
23:08 snarfy__ i suppose this could be some cached value on the master
23:09 UtahDave lol, I know.
23:10 iggy I told someone to file a bug about that the other day
23:10 UtahDave snarfy__: It could be because of what config gets loaded.  When you have a master send a command to a minion, the daemonized minion is what returns.
23:10 iggy they probably didn't
23:10 UtahDave snarfy__: when you run  salt-call it starts up its own temporary minion instance to run the command
23:11 TheoSLC joined #salt
23:12 iggy I didn't see a difference between default configs for salt-run minion vs salt-minion
23:14 UtahDave iggy: Hm. you're probably right.  you should open an issue on that.   ;)
23:14 iggy I delegated
23:16 protoz joined #salt
23:17 bruce-one joined #salt
23:26 mosen joined #salt
23:29 breakingmatter joined #salt
23:33 clintberry joined #salt
23:41 aristedes joined #salt
23:41 aristedes left #salt
23:46 ironpillow joined #salt
23:46 pratikmallya joined #salt
23:50 bfoxwell joined #salt
23:56 bhosmer joined #salt

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