Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2014-03-20

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

All times shown according to UTC.

Time Nick Message
00:05 taion809 joined #salt
00:06 meteorfox joined #salt
00:06 RandalSchwartz ok - jinja looks a lot like template toolkit
00:07 RandalSchwartz maybe this won't be so bad
00:08 n8n joined #salt
00:08 g4rlic It won't be.  I rolled out a fairly complete salt deployment for a new project at my current employer with the help of two others.  We got the whole thing rocking and rolling from soup to nuts in 3 months.  Had we done this with any other system, we might still be working on it. ;)
00:09 mgw joined #salt
00:11 arthabaska g4rlic 3 months? lucky you! I just started at a new company and they're asking for a complete deployment including mostly automated ec2 provisioning within 1-2 months, and this is my first salt project :/
00:11 arthabaska as the only ops guy as well
00:12 RandalSchwartz well - I was worried that my lack of python knowledge would get in the way
00:12 RandalSchwartz but it looks like I can just learn Jinja without knowing python
00:13 RandalSchwartz oooh.  loop.cycle
00:18 RandalSchwartz makes me almost wanna use django :)
00:18 oz_akan_ joined #salt
00:19 redondos joined #salt
00:19 montyboy joined #salt
00:20 rgbkrk joined #salt
00:22 gzcwnk whats the best way to run salt commands in the future, via at?
00:22 mgw1 joined #salt
00:24 Gareth gzcwnk: http://docs.saltstack.com/topics/jobs/schedule.html
00:25 Gareth gzcwnk: use the scheduler to setup when states should run.
00:26 gzcwnk i odnt want every 60mins (say) I just want a one off, hence an at job
00:26 kermit joined #salt
00:36 mgw joined #salt
00:36 Katafalk_ joined #salt
00:37 themadcanudist joined #salt
00:40 mpanetta joined #salt
00:45 thayne joined #salt
00:49 montyboy joined #salt
00:51 scurry joined #salt
00:54 RandalSchwartz oooh.  I could always use an overstate file to ensure my pkg.conf is inserted first
00:55 RandalSchwartz and then if it fails, I won't go on to try to install packages, badly
00:55 zdong joined #salt
00:55 bhosmer joined #salt
00:57 n8n_ joined #salt
00:58 bhosmer joined #salt
00:59 estjang joined #salt
01:07 justlooks joined #salt
01:09 g4rlic gzcwnk: use the at daemon on the local salt master to issue a salt command? ;)
01:10 bhosmer joined #salt
01:11 g4rlic arthabaska: you have my sympathies. :\  But if you carefully take to heart the tips I gave Randall on ordering and state file construction, it will save you a ton of headache.
01:11 RandalSchwartz s/Randall/Randal/ :)
01:11 masterkorp left #salt
01:11 TyrfingMjolnir joined #salt
01:12 g4rlic my bad, super laggy connection here.  keys repeat. ;)
01:12 RandalSchwartz sure - blame it on that
01:12 g4rlic (seriously, every o often, I get a 6-20 esecond lag spike.  ugh.)
01:12 KyleG1 joined #salt
01:12 themadcanudist left #salt
01:12 KyleG1 joined #salt
01:13 redondos joined #salt
01:13 redondos joined #salt
01:14 jeremyfelt joined #salt
01:15 manicouman joined #salt
01:19 estjang my salt-master is using about 1GB of memory...
01:20 estjang I am just testing it out with 10MB stdout.
01:20 estjang Is this unreasonable thing to do?
01:23 xzarth_ joined #salt
01:24 thayne joined #salt
01:32 njs126 joined #salt
01:33 robawt wow RandalSchwartz, hello!
01:33 robawt FOSSWeekly rocks
01:33 yomilk joined #salt
01:35 gzcwnk g4rlic: thats what Im doing now, yes
01:36 redondos joined #salt
01:36 gzcwnk just wondered if there was a better way
01:39 n8n joined #salt
01:40 arthabaska joined #salt
01:49 meteorfox joined #salt
01:51 calvinhp_mac joined #salt
01:55 malinoff joined #salt
01:58 manicouman joined #salt
01:58 Linz_ joined #salt
01:58 echos Why do I have this hunch that salt takes some cues from NetDeploy
02:00 Networkn3rd joined #salt
02:01 schimmy joined #salt
02:03 ajw0100 joined #salt
02:09 justlooks hi,i am testing gitFS ,here is my problem https://gist.github.com/justlooks/9655868 anyone can help?
02:17 elfixit joined #salt
02:17 ipalreadytaken joined #salt
02:18 TyrfingMjolnir joined #salt
02:22 DaveQB joined #salt
02:22 Linz joined #salt
02:23 rostam joined #salt
02:23 ipalreadytaken joined #salt
02:24 jdenning joined #salt
02:29 faldridge joined #salt
02:31 Gifflen joined #salt
02:35 ipalreadytaken joined #salt
02:41 bhosmer joined #salt
02:43 xl1 joined #salt
02:45 yomilk joined #salt
02:47 manicouman joined #salt
02:56 xl1 joined #salt
03:02 justlooks can i put pillar with salt state sls together?  if repo dir is myrepo ,and in myrepo salt dir put my all state file ,and pillar dir put all pillar stuff
03:03 justlooks if can ,how to tell salt where is the pillar dir located
03:03 justlooks i use gitfs
03:03 RandalSchwartz so do people just plop a git repo under the top-level dir, or do people mostly have some sort of extract thingy
03:04 RandalSchwartz similar question :)
03:04 dave_den justlooks: for your first question about server.vim2 - i do not see you put a file named vim2.sls in the git repo
03:04 dave_den justlooks: yes, you can, but git_pillar only supports a root dir option in the develop branch
03:04 dave_den RandalSchwartz: It Depends (tm)
03:05 dave_den there are some nuances of using gitfs for salt states and pillar
03:05 dave_den mainly, all branch-ish trees in git are presented in salt as separate environments
03:06 xl1 joined #salt
03:06 dave_den and the top.sls from all branches is merged into one big top.sls for all environments
03:06 dave_den IMO, that is Not Good.
03:06 justlooks dave_den: about first question i figure it out ,it need set gitfs_root: salt ,because i have salt subdir under repo dir
03:09 dave_den RandalSchwartz: for the best of both worlds, you can make your master a minion as well, and you can manually check out git branches and just use them as normal file_roots paths
03:11 justlooks dave_den: that's means ,first you checkout from git ,and let master read local instead of git server,but every change happened you need do checkout again
03:11 andrej we had an interesting snag w/ one of the later updates to ubuntu; grub must have changed it's default behaviour, and we lost a few of our headless servers after a power outage; they wouldn't boot w/o a keypress
03:11 schimmy joined #salt
03:11 arthabaska joined #salt
03:11 dave_den justlooks: yes, but you can have a posthook that informs your master to do a check out of the new commits to certain branches.
03:12 Linz_ joined #salt
03:12 andrej How can I make sure that /etc/defautls/grub is controlled by salt, and checked every time there's package upgrades
03:12 justlooks dave_den: you mean i need set one branch for pillar ,and one branch for state file ?
03:13 dave_den justlooks: the big problem is that if you include top.sls in your git repo, you must manage it very carefully.
03:13 dave_den justlooks: read the docs about how top files are compiled with gitfs
03:13 faldridge joined #salt
03:14 justlooks dave_den: where is the doc for how top files are compiled with gitfs
03:14 schimmy1 joined #salt
03:15 dave_den justlooks: http://docs.saltstack.com/topics/tutorials/gitfs.html#branches-environments-and-top-sls-files
03:15 justlooks dave_den: if i do not use highstate ,can i avoid this problem?
03:16 dave_den for highstate, yes. for pillar, no.
03:16 dave_den top.sls for states is only used for highstate.
03:16 dave_den top.sls for pillar is always used.
03:17 dave_den i think the top.sls merging is a flaw and i don't think minions should exist in more than one env at once, but that is my opinion. salt supports multiple envs at once
03:18 justlooks dave_den: but if i just maintain a base environment ,and do qa and dev in other place ,the thinks still can be avoid ,is it?
03:18 justlooks dave_den: things
03:19 dave_den justlooks: as long as you never push qa and dev branches to your repo that salt pulls from, yes
03:21 Gifflen joined #salt
03:21 dave_den good luck, and good night.
03:21 justlooks dave_den: but what i confuse is why salt offer ext_pillar to point to which pillar location ,if it can recognize the pillar dir from gitfs?
03:22 mauro joined #salt
03:22 dave_den justlooks: gitfs and git_pillar are not the same.
03:22 dave_den look at the code if you want to know why
03:23 justlooks dave_den: thank you ,and good night
03:23 druonysuse joined #salt
03:23 druonysuse joined #salt
03:23 dave_den you;re welcome. good luck
03:24 favadi joined #salt
03:31 jeddi andrej: file.managed should do what you want.
03:32 jeddi andrej: this assumes package upgrades are done via salt (at least, any upgrade to the package that may modify that file).
03:34 baniir joined #salt
03:35 n8n joined #salt
03:38 baniir joined #salt
03:38 xl1 joined #salt
03:43 faldridge joined #salt
03:50 krow joined #salt
03:56 favadi joined #salt
03:58 davet joined #salt
04:01 redondos joined #salt
04:01 redondos joined #salt
04:04 HeadAIX joined #salt
04:20 mgw joined #salt
04:21 xl1 joined #salt
04:22 krow joined #salt
04:30 Linz joined #salt
04:30 mgw joined #salt
04:32 schimmy joined #salt
04:37 mgw1 joined #salt
04:39 arthabas_ joined #salt
04:44 mgw joined #salt
04:47 mgw1 joined #salt
04:47 gnugnu9 joined #salt
04:49 scurry joined #salt
04:50 kermit joined #salt
04:52 mgw joined #salt
05:14 thayne joined #salt
05:20 googolhash joined #salt
05:29 pdayton joined #salt
05:30 faldridge joined #salt
05:32 ravibhure joined #salt
05:33 yomilk joined #salt
05:34 mgw1 joined #salt
05:38 NV joined #salt
05:38 NV joined #salt
05:46 googolhash joined #salt
05:52 Fawad joined #salt
05:55 pdayton joined #salt
05:57 mgw joined #salt
06:02 scurry joined #salt
06:07 justlooks hi,anyone can help this https://gist.github.com/justlooks/9655868
06:08 mgw1 joined #salt
06:12 NV justlooks: so firstly it looks like you've got your gitfs and ext pillar git in the same git repo (probably a bad idea)
06:12 NV but your master config shows that they are in different repos
06:13 justlooks NV: why it can not put together?
06:13 NV id have a repo for salt (ie, gitfs), and a repo for pillar, and not use the sub-root jigger thing
06:13 NV justlooks: pillar data by definition is sensitive, the states are not (or at least shouldn't be, because minions can enumerate and retrieve all data from it)
06:13 justlooks NV: if i use other repo to store pillar ,when i modified state and pillar ,i shoud commit twice
06:13 NV differing security levels warrants seperation imho
06:14 naiyte joined #salt
06:14 NV eh, the changes in pillar are going to be different to the changes from the states anyway
06:14 NV so arguably they should be two commits anyway
06:14 naiyte joined #salt
06:15 NV you also break using multiple environments for gitfs using branches/etc using that method too
06:15 NV i've also had issues with git ext_pillar, so i manage it using a git.latest state and a normal file-based pillar
06:15 NV although this was back in 0.16 and i havent tried since
06:15 NV so ymmv
06:16 justlooks NV: for simplicity ,i do not intend to maintain multiple environments
06:20 mgw joined #salt
06:21 justlooks it seams problem is the git url is error
06:22 bhosmer joined #salt
06:33 manicouman joined #salt
06:40 justlooks it's、
06:41 justlooks it's very painful in trying the right git url
06:47 OwenW joined #salt
06:49 krow joined #salt
06:50 viod joined #salt
06:51 scurry joined #salt
07:06 justlooks how to print all master config option use salt?
07:10 gammalget joined #salt
07:14 Katafalkas joined #salt
07:28 gcbirzan Hm. So, for states, you can use provider to get one particular provider for things like service, is there a similar thing for execution modules?
07:30 TamCore Any ideas, why user.present fails to change a user's groups, when /etc/nsswitch.conf references to compat and ldap?
07:31 gcbirzan You mean to change it in ldap?
07:31 TamCore nope, only in local /etc/group file
07:32 TamCore It's a fallback user for situations where ldap is unreachable
07:33 Iwirada joined #salt
07:35 gcbirzan You can use salt-call -l debug, I guess
07:37 kadel joined #salt
07:42 TamCore interesting, it runs usermod -G without specifing any group..
07:44 gcbirzan Could be a bug. I've found _amazing_ bugs in older versions.
07:44 OwenW joined #salt
07:45 slav0nic joined #salt
07:46 TamCore I'm sure its a bug. But why it only happens when ldap is active in my nsswitch.conf?
07:49 TamCore think I should try updating to version 2014.1 after breakfast :)
07:49 gcbirzan oh, yeah.
07:49 gcbirzan That's a definitely requirement. :)
07:49 TamCore and after that I'll file a bug report :)
07:50 gcbirzan But, unfortunately, I cannot help you much more than to say that we couldn't even get salt to start on earlier versions. :P
07:50 TamCore :D
07:50 ds5apn joined #salt
07:53 joehillen joined #salt
07:54 TamCore Thanks anyway. Now I have at least a point were to start :)
08:18 balboah joined #salt
08:26 giantlock joined #salt
08:27 martoss joined #salt
08:27 carlos_ joined #salt
08:31 martoss1 joined #salt
08:31 justlooks joined #salt
08:31 harobed joined #salt
08:31 Kenzor joined #salt
08:31 justlooks how to write a salt-api netapi module? the doc is too sample ,any example ?
08:34 krow joined #salt
08:40 claudiupid joined #salt
08:41 claudiupid Hi guys, I have an issue with webutil.user_exists.. maybe some one else had this as well
08:41 claudiupid State webutil.user_exists found in sls general/packages/kibana-server is unavailable
08:46 pviktori_ joined #salt
08:51 topochan joined #salt
08:54 yomilk joined #salt
08:56 justlooks how to print master all config option  use salt command?
09:08 claudiupid My bad. I was reading the documentation for a development version..
09:08 scurry joined #salt
09:25 alfborge joined #salt
09:27 alfborge I'm trying to install java on a windows box using the win_repo module, however I'm obviously missing something because I can not get it to work.
09:28 krow joined #salt
09:30 alfborge left #salt
09:30 alfborge joined #salt
09:31 alfborge I've configured my salt-master to expose both a win_repo and a win_gitrepo as per http://pastebin.com/Ga7G9BQE
09:32 alfborge I run salt-run winrepo.update_git_repos and salt-run winrepo.genrepo, and both commands give the impression that they do something.
09:32 alfborge Finally I run salt 'windows-test-local' pkg.refresh_db which returns True
09:32 alfborge And then: salt 'windows-test-local' pkg.install jre
09:33 alfborge And this final command doesn't return anything...
09:39 alfborge So, it seems the problem is in the pkg.refresh_db, looking at the debug out of my minion: [ERROR   ] Unable to cache file 'salt://win/repo/winrepo.p' from saltenv 'base'.
09:39 alfborge
09:39 millz0r joined #salt
09:39 yomilk joined #salt
09:42 Cidan joined #salt
09:43 cyrusdavid joined #salt
09:44 scalability-junk joined #salt
09:46 crazysim joined #salt
09:53 alfborge If anyone is interested, the issue was that I'm not using the default path for the file_repo.  The win_repo and the win_repo_mastercachefile both construct their default values from salt.syspaths.BASE_FILE_ROOTS_DIR, so when I just fixed the win_repo value, the other was stuck in a root that was not shared with the minion.
09:57 emostar joined #salt
10:00 pdayton joined #salt
10:00 favadi joined #salt
10:05 ggoZ joined #salt
10:08 melb joined #salt
10:09 melb anyone know if the source_hash for file.managed can be bypassed?
10:16 Steamwells joined #salt
10:16 johtso joined #salt
10:28 MrTango joined #salt
10:31 mgw1 joined #salt
10:32 eculver joined #salt
10:32 eculver joined #salt
10:33 rawtaz joined #salt
10:34 sieve joined #salt
10:35 mgw joined #salt
10:37 kadel joined #salt
10:37 MedicalJaneParis joined #salt
10:46 blast_hardcheese joined #salt
10:55 sieve Hello, anyone in
10:55 NV no
10:55 sieve :)
10:56 sieve "Comment:   No Top file or external nodes data matches found" im getting this error for some of my nodes but not others
10:56 jeddi in what?
10:56 NV sounds like those minions dont match any states in the top.sls
10:56 sieve Although I cannot see a difference in the configuration for the nodes
10:58 sieve https://gist.github.com/anonymous/7138c57e7b6c073f8ce2 / https://gist.github.com/anonymous/70274db19e53a74a03c0
11:00 rawtaz joined #salt
11:02 yomilk joined #salt
11:04 __alex joined #salt
11:04 jeddi sieve: *actual* top.sls is where?
11:05 tcotav joined #salt
11:05 jeddi as in /srv/salt/top.sls (or whatever doc root you're using for salt srv)
11:06 sieve /etc/salt/master  https://gist.github.com/anonymous/a39ffa13e507560c4780
11:07 sieve jeddi: I have /srv/salt/top.sls also.
11:08 jeddi sieve: i don't seem to be able to find /srv/salt/top.sls in the pastes you've provided.  that's the key file.
11:08 sieve jeddi: https://gist.github.com/anonymous/428732178d4463cb49ec
11:08 jeddi as NV points out, it's likely that you've got some minions that are not referecned by the primary top.sls
11:09 sieve I am confused with the primary top and the base top.
11:09 jeddi so /srv/salt/top.sls and /srv/salt/base/top.sls both have 'base:\n  '*':\n    - lustre' - is that intentional?
11:10 manicouman joined #salt
11:10 sieve jeddi: not really
11:10 jeddi primary top catches everything.  ./base/ is a construct you have created ... perhaps you can explain your intent with that structure / layout?
11:10 sieve I am confused with the primary top and the base top. :)
11:10 sieve I see
11:11 jeddi by 'catches' i mean it's the way that you dictate what configuration every (potential) minion is parsed through and then gets.
11:12 kadel joined #salt
11:12 sieve so, in the /etc/salt/master configuration.
11:12 sieve I do not need a "base:" ?
11:12 sieve https://gist.github.com/anonymous/a39ffa13e507560c4780
11:13 jeddi what environments are these minions having?  if you've set file_roots: ... sub-sets then it comes down to the env's they have in their /etc/salt/minion (or similar)
11:13 sieve jeddi, they have the default configuration.
11:13 jeddi sieve: i *suspect* that your client*.cumberbatch machines are being caught by the client env in their minion config ..
11:14 jeddi oh.  okay then.  <rethinks>
11:14 jeddi i say that only because the client*.* boxes are appearing to be processed properly by the salt highstate.
11:14 sieve iml is also being processed correctly
11:15 jeddi actually, yeah, iml also.  (just read further down that file)
11:15 sieve jeddi: I had this working properly some weeks ago but I have since had a vacation.
11:16 jeddi others:  do you need an init.sls in the file_roots for dev/base/prod / etc directories?
11:16 jeddi never, ever, go on holidays.
11:16 sieve jeddi: I have learnt that lesson the hard way. Also the cats were very grumpy with us for a while.
11:20 sieve jeddi, would you care to ssh in?
11:20 sieve there is nothing sensitive on these systems
11:20 jeddi goodness ... ssh ... such power .. very secure.
11:21 jeddi do you have the whole construct in a git repo instead?
11:21 sieve of /srv?
11:21 manicouman joined #salt
11:22 jeddi well, /srv/salt
11:22 jeddi are you using pillars, sieve?
11:23 sieve http://th.physik.uni-frankfurt.de/~holway/srv/
11:23 sieve jeddi: I am still not quite sure what pillars is
11:23 jeddi sieve: that's good - pillar would just complicate matters here :)
11:24 sieve wow pillar, such state, many value
11:25 sieve I should have this in git
11:25 sieve but git doesnt like me
11:25 jeddi the lustre.sls .. will never run anything.  firstly there's nothing to run.  and the unless is an echo (which will always succeed)
11:25 jeddi git is lovely.  :)
11:25 jeddi we can fix that in a minute.  first, let's get this going.
11:25 jeddi can i suggest that you rename lustre.sls to /srv/salt/lustre/init.sls
11:26 jeddi it's a subtle thing but will bite you a bit less in the future.  (marginally)
11:28 jeddi anyway.  yeah.  you need a '- name: ' entry in the lustre cmd.run para .. name is the thing that it'll actually run (since the paragraph title is just a conf file name)
11:29 sieve 1) mv /srv/salt/lustre.sls /srv/salt/lustre/init.sls
11:29 jeddi well, mkdir /srv/salt/lustre first :)
11:30 sieve 2)/srv/salt/top.sls will find lustre/init.sls
11:30 jeddi if you reference a state that's a sub-directory it looks for the 'init.sls' in that sub-dir.   personally i think it's tider.   certainly it's tider than if you mix-n-match the formats (again, personal opinion)
11:30 jeddi yeah - top.sls can still reference 'lustre' and it'll look in the dir.
11:31 jrdx joined #salt
11:32 manicouman joined #salt
11:32 sieve "'- name: ' entry in the lustre cmd.run para"
11:32 sieve I dont quite understand
11:32 sieve http://docs.saltstack.com/ref/states/all/salt.states.cmd.html
11:32 sieve I am working from this doc
11:35 jeddi sieve: your lustre.sls   http://th.physik.uni-frankfurt.de/~holway/srv/salt/lustre.sls
11:35 jeddi ... is a conf file name, then a cmd.run, with no actual command to be run, then an 'unless', and the unless will *always* succeed, as it's an echo command
11:36 sieve Oh, I see
11:36 jeddi you can either have the first line of that file something like 'echo foo > bar'  or 'touch /tmp/hugo'  .. OR .. you can call it something meaningful, and then assign the actual command to be *run* by using the - name: parameter.
11:36 jeddi i'm a big fan of having meaningful stanza names (eg. pkg-etckeeper or run-install-mynt-tarball) and then using the - name: feature to define what actually gets run.
11:37 jeddi i'm not sure if tehre's a SaltStack Best Practice guideline for this.  I think(!) that it means I'll get hit with less risk of potential duplicates later on if I have two modules that try to do the same pkg install or cmd run.
11:37 jeddi anyway - your lustre.sls doesn't actually do anything.  this may be what's causing your errors on highstate.
11:38 sieve I cant find any documentation for name:
11:39 sieve jeddi: I think I understand what you are getting at
11:40 sieve my "unless" was a logical fudge
11:42 sieve jeddi: I am still very much stuck with my original problem however
11:42 sieve Comment:   No Top file or external nodes data matches found
11:42 manicouman joined #salt
11:42 jeddi sieve:  is that structure at uni-frankfurt.de updated?
11:44 sieve it is now
11:44 jeddi sieve:  http://docs.saltstack.com/ref/states/all/salt.states.cmd.html   ctrl-f 'name' - there's many references about a 5th the way down, and then an explanation int he syntax (about 1/3 the way down)
11:45 jeddi your lustre/init.sls still doesn't actually *do* anything.  i've never trie that before, but maybe highstate is bemoaning the fact it has nothing to do?
11:45 jeddi i'd certainly fix that before diagnosing the problem further, JIC it fixes it.
11:47 bhosmer joined #salt
11:48 sieve jeddi: ok, I think I understand. Because this file already exists in the required state on iml and client these nodes pass muster.
11:48 sieve however oss* and mds*, nodes that I have just reinstalled are missing
11:48 sieve they fail
11:48 jeddi possibly.  if you haven't actually defined groups / env's within your minion's configuration, they should all be running top.sls, which will point them towards lustre, which doesn't actually do anything.  i'm only confused by some things (iml and client) actually don't fail with that error.
11:49 jeddi ah - yeah - sieve that's likely it.  the file already exists.  though .. not sure how the unless: is  evaluated (if it runs and then tests - which is what i'd guess at)
11:49 jeddi it's a bit like doing an if (a = 2) construct ... assignment as part of a test.
11:51 sieve jeddi:  I deleted the file from iml and reran highstates. It put the file back without any problems.
11:52 sieve jeddi: could I ask that you give me an example of how I put this file there?
11:52 sieve or rather the accepted way.
11:55 derelm joined #salt
11:58 jeddi you want to make sur ethe file is there every time the state runs?
11:59 sieve jeddi: yes.
11:59 sieve jeddi: https://gist.github.com/anonymous/87190e735916aef37880
11:59 sieve I have this as my lustre/init.sls
12:01 manicouman joined #salt
12:04 jeddi http://rn0.ru/show/eIlqZ9pdRJpZ8izsoUR4/
12:04 jeddi sieve: or, that's better, yeah. :)
12:05 jeddi there used to be a standard recommendation (not sure if it still holds) that you preface all your source files/templates/etc with salt://fs/...   and therefore the files physically live under /srv/salt/fs/...  just keeps it tidy by restricting it to a single sub-dir in /srv/salt
12:05 jeddi (aside)
12:06 jeddi can i also recommend that whether you do that or not, you *do* maintain the full path - so you'd have salt://.../etc/modprobe.d/lustre.conf
12:06 jeddi *that* will definitely be less confusing over time.
12:06 sieve jeddi: ok http://th.physik.uni-frankfurt.de/~holway/srv/
12:06 sieve oh, I see
12:07 sieve I still have my original problem: https://gist.github.com/anonymous/585365c3ce9fd5546b85
12:09 jeddi it makes it much less confusing later on because the files are in a predictable / determinate location.  and you can also start having multiple files or templates for the same destination , depending on the target.   for exaple you'll often see things like this:   http://rn0.ru/show/VtY4KkP0nsl3BiO6dPPx/   ...
12:10 jeddi sieve: okay - it's more confusing now ;)   because all clients match the top.sls include to lustre's sls, and that will run on every iteration.
12:10 jeddi sieve: can you do something like this:    salt '*'  cmd.run 'uname -a'
12:11 jeddi and see which boxes respond.
12:11 sieve jeddi: all of them
12:11 jeddi a 'test.ping' might be comparable.
12:11 kadel joined #salt
12:11 jeddi okay.
12:12 bizboo joined #salt
12:12 jeddi i think in your /srv/salt/oss directory you need to have init.sls not top.sls ... but .. let me check that first.
12:14 jeddi i used that approach very briefly early on then abandonded it.  actually , i think i'm wrong - top.sls may well be the right one.
12:16 sieve jeddi, does salt enjoy lots of strange bugs?
12:16 johno joined #salt
12:17 jeddi sieve: i may not be the best person to really be solving this problem - i should have mentioend that earlier :)    though i am trying to experiment with my setup here. :)
12:17 jeddi and no .. not strange bugs.  not like this.  i think it's a straightforward problem of misconfiguration, just i lack the expertise to put my finger on it directly.
12:18 scurry joined #salt
12:18 johno hi there i am trying to force a reload of nginx when i add a site to site-available/enabled but this seems not to work https://gist.github.com/jsuchal/c103c6eead0fc1dd62ac
12:19 jeddi sieve: you're on a gnu/linux distro, right?  can you do the following -- capture the output of     salt oss04.cumberbatch.com grains.items     and salt client01.cumberbatch.com grains.items ... and then compare the two with kdiff3 or similar?
12:22 jeddi or meld, if you're on gtk-based desktop.
12:22 jeddi i'm pretty sure it's the way you've set up the multiple bases .. though if you say the minions aren't actually configured to think they're in different groups, that's a bit weird.
12:24 baniir joined #salt
12:29 GoKage joined #salt
12:30 sieve jeddi:  I have diff :)
12:31 Networkn3rd joined #salt
12:33 mapu joined #salt
12:37 mapu joined #salt
12:38 bhosmer joined #salt
12:38 sporkd2 joined #salt
12:40 mike25ro joined #salt
12:42 baniir joined #salt
12:42 jeddi sieve: notable differences in what they're returning - specifically regrding environments variables?
12:42 bhosmer_ joined #salt
12:43 jeddi i tend to think that it's simpler to have a single file_roots parameter in master's conf.
12:43 jeddi i may be wrong on this one.
12:45 sieve jeddi: I make a post on the forum.
12:45 sieve https://groups.google.com/forum/#!topic/salt-users/54et5cOvvu4
12:45 sieve See what comes back
12:45 kadel joined #salt
12:51 jeddi sieve: good idea.   i  keep meaning to use the g-groups more, but never get around to it.
12:52 jeddi it's weird, usually there's a lot more salt gurus on irc this time of day
12:53 johtso what's the correct format for lists when passing calling a salt module from the command line?
12:53 johtso foo=bar,bas doesn't seem to work
12:54 johtso *running a state
12:54 johtso (using state.single)
12:54 sieve jeddi: Its still 7am in Utah
12:57 vejdmn joined #salt
12:58 oz_akan_ joined #salt
12:58 tyler-baker joined #salt
12:59 jslatts joined #salt
13:00 oz_akan_ joined #salt
13:02 calvinhp_mac joined #salt
13:04 faldridge joined #salt
13:11 racooper joined #salt
13:12 scurry joined #salt
13:12 napper2 joined #salt
13:13 mortis__ does anyone know of any github public project which displays the use of git as backend to salt in a larger environment by chance? just looking for something to compare with current thoughts of implementation :)
13:13 mortis__ *googles a bit*
13:15 juicer2 joined #salt
13:15 jeddi sieve: oh.  it's afer midnight (now) here in sunny Straya.
13:16 jeddi mortis__: you mean using gitfs, or just keeping the config in git?
13:16 timoguin joined #salt
13:16 calvinhp_mac mortis__: we are using gitfs in a deployment with multiple remotes and using the new mountpoints and roots options as well in the develop brnach
13:16 calvinhp_mac what kinds of questions do you have?
13:17 mortis__ calvinhp_mac: we're pretty much in the planning-stage, and cant really get our heads around how to split it up
13:17 mortis__ calvinhp_mac: with say a base, dev and qa
13:17 wkf_ joined #salt
13:17 mortis__ could use fileroots or branches
13:17 calvinhp_mac yep
13:18 calvinhp_mac we have a standard base in one git repo
13:18 mortis__ stick pillars in a different repo maybe ..i dunno
13:18 calvinhp_mac and then per project we mount them up as sub mountpoints in the salt master
13:18 mortis__ ah
13:18 mortis__ so you dont use the gitfs subfolder stuff?
13:18 calvinhp_mac and each of those have the "master" which is base, and then branches for prod, acceptance and testing that contain pilar info for db logins etc
13:19 calvinhp_mac we use the new mount points to avoid name collisions in base
13:19 mortis__ do you have the need to separate the pillars (data) so that some users cant see it?
13:19 calvinhp_mac since each git repo has a master
13:19 mortis__ i mean like passwords and stuff
13:19 calvinhp_mac yes
13:19 mortis__ so you just dont give them access to that specific repo?
13:19 calvinhp_mac and diff passwords for each environment
13:19 mortis__ hmm
13:19 mortis__ any of your config public?
13:20 calvinhp_mac each projects folks can access their project repo
13:20 calvinhp_mac no
13:20 viq mortis__: I tried and getting pillars in same repo as states when using gitfs is problematic
13:20 calvinhp_mac but I was contemplating a blog post about the setup
13:20 mortis__ viq: ok, dont think we will do that
13:20 calvinhp_mac since it is one of them more complex ones i've seen
13:20 mortis__ that would prolly be helpful to many :)
13:20 mortis__ i mean, theres so many ways to do it
13:20 * calvinhp_mac bumps that up the todo list
13:20 mortis__ and i guess we'll just have to learn as we go
13:21 mortis__ but would be cool to see some setups before we fail horribly
13:21 mortis__ :)
13:21 gammalget joined #salt
13:22 calvinhp_mac mortis__:  one tip, leave the top.sls in the first repos' base to get started
13:22 calvinhp_mac then split it out once it grows large enough
13:22 mortis__ yeah, thats prolly a good idea
13:22 calvinhp_mac but it is easier to keep that in just one spot vs keeping it mapped in your head all split up
13:23 goncalo joined #salt
13:23 mortis__ for sure
13:23 zooz joined #salt
13:24 viq mortis__: that's what I currently have http://pbot.rmdir.de/J_RTc0eU1OwBwND2GYjq-Q
13:24 mortis__ viq: oh, thanks man
13:24 viq Well, on the other hand best practices recommend using formulas, and those rather each have their own repo
13:25 mortis__ hmm yeah
13:26 johtso how can I debug problems with file.directory? I'm getting a result of not being able to change the user or the group
13:26 sieve Dear salt gurus: https://groups.google.com/forum/#!topic/salt-users/54et5cOvvu4
13:26 johtso from the looks of things, the folder and its contents already have the correct user and group
13:27 mpanetta joined #salt
13:28 calvinhp_mac joined #salt
13:29 mortis__ calvinhp_mac and viq: thanks for the input btw :)
13:30 jeddi johtso: .sls extracts and error messages, or it didn't happen :)
13:31 R_Shackleford joined #salt
13:32 johtso @jeddi http://hastebin.com/raw/caqemububu
13:35 johtso looking at the check_perms code now..
13:37 mpanetta_ joined #salt
13:37 johtso I'm stumped
13:39 jaimed joined #salt
13:40 jeddi johtso: i've never done that kind of thing.  do you have to encapsulate all the kwargs in quotes?
13:40 johtso jeddi, that's just a replica of my state in command line format, and it results in exactly the same output
13:40 jeddi and/or is harvester an extant user on all those boxen?
13:40 johtso it is
13:40 jeddi johtso: gotcha.
13:40 johtso and I think it would give a different error if the user/group didn't exist
13:41 viq johtso: does user harvester exist?
13:41 jeddi and /apps/harvester exists .. of course :)
13:41 viq hm
13:41 jeddi actually, 'group' harvester is also complaining - also exists in /etc/groups ?
13:41 jeddi i know these are dumb questions, but they reflect what someone would first investigate if it happened to them .. so forgive us.
13:41 johtso let me just do a sanity check..
13:42 johtso no, thanks for asking the obvious questions
13:42 jeddi 'touch /tmp/foo ; chown harvester:harvester /tmp/foo'
13:42 mbowie left #salt
13:42 jeddi no fireworks ==>  problem.
13:42 mpanetta joined #salt
13:43 jeddi can you share the state file ... is apps/harvester being created by this state?  with 'make direcotries; true' (or whatrever the syntax is)
13:43 johtso jeddi, that worked fine
13:43 jeddi excuse the typing.   got a bottle of scotch for my birthday ;)
13:43 faldridge joined #salt
13:43 johtso jeddi, that's what it looks like in yaml form http://hastebin.com/raw/lusodahoha
13:43 jeddi - makedirs: True  #  that's what I meant :)
13:44 ajprog_laptop joined #salt
13:45 jeddi you're not doing something whacky like running salt-minion as non-root perchance?
13:45 calvinhp_mac joined #salt
13:45 johtso jeddi, I get this problem when running the command with sudo using salt-call
13:45 johtso *as well
13:45 johtso so that would rule that out right?
13:45 jeddi i echo viq's 'hmm' in this case :)
13:46 jeddi johtso: i would think it would.  i'd run up two extra terminals and tail -f the var/log/salt/minion and master files while doing this.
13:46 johtso drwxr-xr-x  4 harvester harvester 4096 Oct  4 12:02 harvester/
13:46 johtso I've looks at all the debug output and there is no useful information
13:47 johtso *looked
13:47 johtso unless I've overlooked it
13:47 suckaplease joined #salt
13:47 jeddi how large is the /apps/harvester hierarchy?  the number of errors that you were getting suggests there are files located within that the system can't change the ownership of.  is it a native (local) fs?  nfs?
13:47 johtso I've also run strace with trace=file .. and nothing immediately jumped out at me, although admittedly I don't know C and it's my first time using strace :)
13:47 jeddi if you try to make (new) a directory structure under /apps/foo .. and copy-n-paste the sls content you're currently using but apply to that?
13:48 jeddi oh, i've had no luck with strace and saltstack ;)
13:48 johtso ah :)
13:48 calvinhp_mac joined #salt
13:48 jeddi strace is lovely for non-interpretated languages ..
13:48 johtso yeah, lots of noise..
13:49 jeddi best to just dive into python (as they say in the classics).  but,yeah, if you can try generating a new parallel structure from scratch using comparable sls files?
13:49 jeddi and/or check if the rights (modes) of the files under /apps/harvester aren't restricting your permissions to change them (even as root).
13:49 jeddi ls -lR /apps/harvester --> output to pastebin.
13:50 jeddi and/or hop onto the minion and run that as root ...  'chown -R harvester:harvester /apps/harvester'
13:50 jeddi I think you alluded to having done something functionally similar.
13:50 ipmb joined #salt
13:51 seapasulli joined #salt
13:53 baniir joined #salt
13:54 Networkn3rd joined #salt
13:55 johtso jeddi, sudo chown -R harvester /apps/harvester works fine
13:58 jergerber joined #salt
14:00 calvinhp_mac joined #salt
14:02 johtso I might have to try throwing a couple of print statements into the salt module..
14:07 pmcg joined #salt
14:08 scurry joined #salt
14:10 elfixit joined #salt
14:11 Katafalkas joined #salt
14:17 GradysGhost joined #salt
14:19 quickdry21 joined #salt
14:24 rostam joined #salt
14:25 obimod joined #salt
14:25 akoumjian Howdy #salt. I want to switch from installing salt from the ppa repos to installing from a .deb we maintain. Are there build instructions somewhere?
14:25 akoumjian Building for Ubuntu 12.04
14:27 jeddi johtso: yeah - i'm out of ideas if that works as root on the box
14:27 jeddi johtso: yeah - i'm out of ideas if that works as root on the box
14:29 pdayton joined #salt
14:37 debian112 joined #salt
14:40 debian112 anybody no where I can get the latest salt source file. I have ver 17 salt-static-17.0.tar.gz, I am looking to upgrade to the latest. we have a ton of debian 5 servers that I had to manually put version 17 on, but I am looking to upgrade
14:40 alunduil joined #salt
14:42 GradysGhost joined #salt
14:44 Ryan_Lane joined #salt
14:47 Gifflen joined #salt
14:49 jeddi debian 5?!
14:51 conan_the_destro joined #salt
14:52 Thiggy joined #salt
14:52 mike25ro debian112: i think you should first update debian ... then deal with salt... really
14:54 TOoSmOotH joined #salt
14:55 meteorfox joined #salt
14:55 der_elm joined #salt
14:55 meteorfox joined #salt
14:56 TyrfingMjolnir joined #salt
14:56 Gifflen joined #salt
14:58 thayne joined #salt
14:59 GradysGhost joined #salt
15:02 quadmasta joined #salt
15:03 scurry joined #salt
15:04 Gordonz joined #salt
15:07 quadmasta I'm working on modifying the mongo_returner file to change the output so it's ORM friendly and I've got a few questions
15:08 quadmasta 1. how does Salt determine the "name" of the returner? Is it based on the name of the file or the __virtual__ method?
15:08 quadmasta 2. the docs say the returners are distributed on highstate, does this mean that after I've called highstate on a minion, the returner is there and will return on all subsequent calls?
15:09 dave_den both. if __virtual__ just returns True then it is the name of the file. If you need to return a name different than the file, then return the name in __virtual__
15:09 quadmasta dave_den: thanks
15:10 dave_den but that's mostly for overloading providers, like pkg. the real file name for a pkg provider can be yum, yumpkg, apt, pkgng, brew, etc. but they all present themselves as pkg in __virtual__ if they determine they are the provider for that minion's OS
15:10 jalbretsen joined #salt
15:10 quadmasta so I should refer to the returner as whatever that method returns ie: --returner foo
15:10 dave_den 2- modules are synced on highstate. you can also sync modules with saltutil
15:11 quadmasta dave_den: thanks again
15:11 dave_den quadmasta: yes, you would specify —returner foo if __virtual__ returns 'foo'
15:11 quadmasta dave_den: is 755 okay for file permissions or does it need something else?
15:12 schristensen joined #salt
15:12 dave_den 755 is fine, i believe.
15:12 ckao joined #salt
15:13 Furao joined #salt
15:13 quadmasta dave_den: thanks, I've got an issue somewhere else then
15:14 dave_den you should be able to see any loading errors of the module if you run your minion with -l debug
15:14 dave_den or turn on debug log level in the minion config
15:17 quadmasta syntax error, odd since I just copied the mongo one and modified the syntax of the document
15:17 debian112 mike25ro: Not really an option. It's been running fine on v.17 until the master got updated to the latest.
15:17 TheRealBill_here joined #salt
15:19 mike25ro debian112: i had the same issue... i had to revert to 0.17.1 :) at the moment... but i have updated all minions
15:20 chrisjones joined #salt
15:21 HeadAIX joined #salt
15:22 diegows joined #salt
15:22 debian112 mike25ro: Yeah I might just break that cloud service off to a single old version salt master. And run the newer OS's on the latest salt masters
15:22 mike25ro debian112: yeah i know :)
15:23 mike25ro i had the newest salt-master up and running.. but it had weird bugs.. like pkg.install was not working properly.... the packages were there but it wasn't installing them.
15:24 XxLocutusxX joined #salt
15:24 mike25ro anyway ... still with 0.17 ... looking forward to a more stable version
15:27 suckaplease joined #salt
15:27 debian112 yeah if you don't update all the clients to the latest I seen weird stuff
15:27 jdenning joined #salt
15:27 mike25ro yeah exactly
15:28 mike25ro too many differences between versions, but .. that's just me .. being picky :D
15:28 mike25ro salt is awesome... and that is a fact ;)
15:29 Mr_N So I've used -context and -defaults for file.managed stuff
15:29 debian112 yup! I got rid of puppet
15:29 Mr_N is there an equivilent for generic states, perhaps via include?
15:29 jeremyfelt joined #salt
15:29 * Mr_N has been scraping docs, and may just be blind, but...
15:29 johtso jeddi, I think I've found what might be the problem!
15:29 johtso many many print statements later...
15:30 johtso file.check_perms uses both get_user, and stats. when it calls stats it calls with with follow_symlinks=False.. but get_user calls stats with follow_symlinks=True
15:31 johtso I'll open an issue
15:32 suckaplease joined #salt
15:33 smcquay joined #salt
15:33 derelm joined #salt
15:33 sieve I am having a problem where some of my minions are failing to update state with "No Top file or external nodes data matches found”. as far as I can tell the working minions are no different from the non working minions apart from having a different name.
15:34 sieve I have opened a ticket here: https://groups.google.com/forum/#!topic/salt-users/54et5cOvvu4
15:34 jeremyBass joined #salt
15:35 Mr_N Wow.  Apparently people have wanted this for 2 years, and it hasn't been addressed in the original way requested.
15:35 Mr_N https://github.com/saltstack/salt/issues/976
15:36 sieve Mr_N: it would certainly help with things like network configurations
15:36 Mr_N Network mounts, in my case.
15:36 pdayton joined #salt
15:37 Mr_N the underlying state to manage the mount is VERY templateable, it'd be brilliant to just be able to pass in "mount point" "target"
15:37 Mr_N But instead I need to do some really roundabout things via pillar, or write piles of very similar states.
15:37 Mr_N The former which isn't imperitive, and the latter isn't clean.
15:37 Mr_N imperetive?
15:37 johtso jeddi, https://github.com/saltstack/salt/issues/11387
15:38 Mr_N Can't spell not code, but my statement stands.
15:39 naiyte joined #salt
15:40 quadmasta dave_den: thanks, I got it straightened out
15:41 sieve johtso: I dont suppose you can help me with this: https://groups.google.com/forum/#!topic/salt-users/54et5cOvvu4?
15:41 johtso sieve, sorry, need to get back to work, already spend half a day debugging salt :P
15:42 sieve johtso: what kind of state is the project in?
15:42 johtso satisfied that I found the culprit though
15:42 johtso sieve, the salt project itself?
15:43 sieve johtso: yep
15:43 frasergraham joined #salt
15:43 johtso well, I haven't spent *that* much time with salt, but I have mostly good feelings about it
15:44 johtso I love the philosophy behind it, but I have definitely found rough edges here and there
15:45 dave_den Mr_N: the approach taken in the issue is not a good way to go about it. the proper way is to use pillar.
15:45 dave_den there is no point to hardcode those values in top.sls
15:46 druonysus joined #salt
15:46 druonysus joined #salt
15:47 forrest joined #salt
15:47 calvinhp_mac left #salt
15:49 mike25ro left #salt
15:50 frasergr_ joined #salt
15:50 Gifflen_ joined #salt
15:50 CaptTofu joined #salt
15:50 CaptTofu hi!
15:51 Mr_N dave_den: Given the ways I know of to use pillar, I have to disagree. (qualifier, there could be a technique I'm not aware of.)  Let me expound on my use case:
15:52 Mr_N I currently have many states describing various nfs mounts, which I assign via pillar to machines.
15:52 Mr_N That being said, there is LARGE amounts of similar "code" between the states.
15:52 Mr_N I would _like_ to be able to call a generic "make nfs mount" state on an arbitrary target.
15:53 diegows is there a way to use a shared key between minions?
15:53 Mr_N Which would require some ability to plug arbitrary values into the state; which would either require tweaking the state, or changing a value in pillar, AFAIK.
15:53 diegows I'm using vagrant and salt as provisioner
15:53 Gifflen joined #salt
15:53 Mr_N Both of these are rather more clunky that for example, how you pass arguments into a file.managed template.
15:53 diegows but devs should remember to do a git full to fetch the latests recipes
15:53 Mr_N (If there is some component or use pattern I'm missing, I'd be glad to be shown the error of my ways)
15:53 diegows I was thiking about using the master directly instead of salt-minion --local
15:54 luminous what is the difference between pkg.purge and pkg.remove? https://salt.readthedocs.org/en/latest/ref/states/all/salt.states.pkg.html#salt.states.pkg.purged
15:54 diegows luminous, purge remove everything, including config files
15:54 diegows but depends on the distribution
15:55 tryfan joined #salt
15:55 luminous Mr_N: sounds like you want to use jinja or some renderer. generally, you turn the 'state definition' into some code that generates a state definition, which is applied as a formula
15:55 luminous diegows: ah, I see. thank you
15:55 dave_den Mr_N: you can use macros in jinja, or you can make sure to include your nfs mount sls templates
15:56 Katafalkas joined #salt
15:56 * diegows prefers mako, more flexible and pure python support ;)
15:56 luminous Mr_N: there are a lot of ways, what you do will depend on what you want and what you like
15:56 dave_den you don't need to repeat your nfs mount code everywhere.
15:56 dave_den and as luminous said, there are many ways.
15:56 luminous you _should not_ repeat it everywhere
15:56 luminous make formula programmable and generic, maintainability soars
15:56 luminous and you get lots more done
15:56 tryfan hey all, hitting my head against salt and freebsd.  brand new install of freebsd 10.0, just trying to get a pkg installed state and running into an error.  is this just not supported at this time?
15:56 xmj it is
15:57 Mr_N Sure luminous, and this spawns my root question.  I'm not quite sure how to pass parameters from one state into another state.
15:57 xmj tryfan: which error are you getting?
15:57 luminous tryfan: I don't know, cedwards likely would, but you should post your state/formula and errors
15:57 Mr_N And given what you said, I'm thinking that I'm looking at solving this code replication in the wrong way
15:57 Mr_N I'm aware of the -context and -default flags, and had been looking for something similar to that
15:57 luminous Mr_N: can you give an example? i'm not sure what you mean by passing between states
15:57 xmj tryfan: http://docs.saltstack.com/ref/modules/all/salt.modules.pkgng.html
15:58 tryfan xmj: http://pastebin.com/mQs3kWvD
15:58 Mr_N Basically turning the -default and -context flags under file.managed to have equivilent semantics under say, include.
15:58 xmj ok, uhm,
15:58 xmj http://docs.saltstack.com/ref/states/all/salt.states.pkgng.html
15:58 xmj terminalmage: do you know if ^ is uptodate ?
15:59 xmj tryfan: ah, the version should be pretty clear now, no? pkg, ver = line.split(' ')[0].rsplit('-', 1)
15:59 xmj you have to provide package-version like so: nginx-devel-1.5.11
15:59 Gifflen joined #salt
16:00 xmj err, nginx-devel 1.5.11
16:00 luminous Mr_N: each .sls is its own thing that is rendered
16:00 Mr_N Indeed, I realize this.
16:00 tryfan xmj: but that's awful for an sls just seeing if a package is installed
16:00 luminous Mr_N: use something like reclass to provide a more managable organization to pillar, then put that stuff in pillar and use it where necessary
16:00 Mr_N So, I must be explaining badly.  You're aware of the ability to "pass in parameters" to files managed via file.managed?
16:00 xmj tryfan: pkg.installed doesn't only check if it's installed but install it if not.
16:00 luminous Mr_N: I see what you mean though, and I agree that it's a little odd to not be able to 'share'
16:00 luminous but it's also a lot simpler
16:00 Mr_N Indeed.
16:01 luminous and simplicity is a good thing here
16:01 Mr_N simpler maybe, but removes a more imperitive way of calling states, which is how I intuitively structure solutions to this.
16:01 luminous just keeping forumla/state and pillar clear and straight is a challenge
16:01 Mr_N (yes, I realize this is a selfish viewpoint, but it was worth looking into.)
16:01 luminous look into reclass
16:01 tryfan xmj: in the case of this test, which is just for vim-lite
16:01 xmj uhm
16:01 Mr_N I have, in fact, it seems to solve different problems.
16:01 tryfan wait...
16:01 luminous you might find some answers to some problems
16:01 tryfan let me see something
16:01 xmj tryfan: which salt-version are you on?
16:01 Mr_N Looked into it a while ago for ext_pillar usage.
16:01 luminous yea
16:01 * madduck appoints luminous head of the reclass publicity team
16:01 luminous hah
16:02 luminous I highly recommend it for your sanity, if you will have anything complex to manage
16:02 Mr_N I was able to use -defaults and -context really usefully for a state I use for bootstrapping salt from salt-ssh
16:02 Mr_N which is why I wanted to use that same pattern elsewhere.
16:02 Mr_N is the only thing.
16:03 tryfan xmj: 2014.1.0
16:03 xmj hmmm
16:03 Mr_N /etc/salt/minion: file: -managed -source:~~~~~ -template: jinja -defaults: salt_masters: {{master}} is the short example
16:03 xmj tryfan: installed from ports?
16:03 Mr_N You can probably see what that does, and why I find it pleasingly elegent :P
16:03 djaime joined #salt
16:03 tryfan xmj: freebsd minion seems to be 0.17.5...
16:04 tryfan the master is on debian, installed from bootstrap yesterday
16:04 scurry joined #salt
16:04 xmj tryfan: you'll want to update that
16:04 tryfan the minion is freebsd, installed today from pkgng
16:04 xmj tryfan:  Modified Wed Mar 19 07:03:52 2014 UTC (32 hours, 58 minutes ago) by vg  << we have 2014.1.0 since yesterday early morning
16:04 krak3n` joined #salt
16:06 tryfan xmj: I'll update freebsd right now
16:06 utz joined #salt
16:06 dave_den Mr_N: are you hardcoding the value of jinja's 'master' variable in your state files?
16:07 RandalSchwartz continuing to read the basic docs.  I hope to be wiggling a file in /tmp later today... that'll be my first test
16:07 Mr_N No; in this case I populate it from a list in pillar; but I elided that for pasting it in IRC.
16:07 RandalSchwartz then I'll try grabbing a couple of configs...
16:07 RandalSchwartz then I'll try... "package... management"
16:07 Mr_N I was just showing the parameter passing, which I liked.
16:07 jay-atl joined #salt
16:07 Mr_N I'd like to get that value rather than from pillar, but from a parent state that calls this one, or from passing it in from a command line call, was my point.
16:07 RandalSchwartz does salt.highstate have a "dry run" option?
16:08 dave_den RandalSchwartz: test=True
16:08 xmltok joined #salt
16:08 RandalSchwartz Cool
16:08 RandalSchwartz is it pretty verbsoe
16:08 Mr_N dave_den: I spent a good few days after first learning about salt without knowing about that flag; that was some "fun" debugging :)
16:08 dave_den Mr_N: you can override pillar values on the CLI using pillar=
16:08 xmj tryfan: i'll run home. there's a couple of freebsd users among them, cedwards maintains the port and terminalmage does cool stuff to it
16:08 RandalSchwartz "would have copied this file here"
16:08 RandalSchwartz "would have started apache"
16:09 dave_den RandalSchwartz: give it a try :)
16:09 RandalSchwartz ok thanks
16:09 jslatts joined #salt
16:09 tryfan xmj: run home?
16:09 Mr_N Ah, I see!  so that's what you meant earlier about using a default in pillar.
16:09 xmj you know... walk.. with feet... away from keyboard... 'run home'
16:09 dave_den RandalSchwartz: ther eis also 'state_verbose' config option, which defaults to True
16:09 Mr_N Since my issue with that was that I didn't think there was a way to dynamically change it in all calling methods.
16:09 rgbkrk joined #salt
16:09 Mr_N But that does make it slightly cleaner.
16:09 tryfan xmj: just not something you here often on irc :P
16:09 tryfan *hear
16:09 Mr_N Thanks dave_den ; this certainly will let me produce a better solution.
16:10 tryfan xmj: I can't even find updated installation docs for freebsd
16:10 Mr_N I hadn't been thinking about it the right way, as I expected.
16:10 dave_den Mr_N: there are other ways of making cascading defaults as well, it all just depends on exactly what you need
16:10 xmj tryfan: that's because it hasn't changed
16:10 xmj tryfan: make -C /usr/ports/sysutils/py-salt config reinstall clean
16:11 tryfan xmj: the bootstrap installs py27-salt which is 0.17.5
16:11 Mr_N In this situation what I needed was a clean way to declare it from both the command line and the calling state, which this provides.
16:11 xmj tryfan: i don't care about your bootstrap :p
16:11 Mr_N May I ask for breadcrumbs on what other methods you have in mind?
16:11 xmj tryfan: run it the FreeBSD way and you'll be safe.
16:11 Mr_N They'd probably be useful in the future and I hadn't come upon much myself.
16:11 mgw joined #salt
16:11 tryfan xmj: but as of 10.0, the freebsd way is running pkg I thought...I'll try installing the port then
16:12 dave_den Mr_N: reclass (or a suitable ext_pillar), jinja macros, pillar heirarchy
16:13 xmj tryfan: oh, right, you can try that too
16:13 _jslatts joined #salt
16:13 RandalSchwartz I'm a big fan of ignoring the prebuilt packages... I got into trouble the first day I wanted a config var differently
16:13 Mr_N Ah; ok, those are what I was familiar with, but all of those seem "more static" than what I had in mind?
16:13 xmj tryfan: ports are packaged on wednesdays, this port is brandnew, so you might have luck.
16:13 RandalSchwartz ran into all sorts of dependency hell
16:13 RandalSchwartz about half of the ports I run have non-default configs
16:13 dave_den Mr_N: It Depends (tm)
16:13 RandalSchwartz (freebsd if you weren't clear :)
16:14 rgbkrk joined #salt
16:14 Mr_N I may be too close minded, I just don't typically think of overriding/mutating database entries as a method for dynamic parameter passing.
16:14 Mr_N Clearly in the pillar overriding case it works; but to me it's unintuitive
16:14 thayne joined #salt
16:14 Mr_N I may make an issue on stressing this use case in the documentation, if that wouldn't seem assumptive?
16:14 Mr_N Since it was unclear to me.
16:15 luminous Mr_N: if you dig deep,. you will find a lot about salt that is not intuitive, that is just how it is for just a paradigm-shifting experience we all have here
16:15 jslatts joined #salt
16:16 rgbkrk_ joined #salt
16:16 Mr_N luminous: I've been digging for the last 2-3 months, and I keep finding new things ><
16:16 luminous yea, that is how it is
16:16 Mr_N That's precisely the problem, there's so much power here.
16:16 Mr_N There are many many many ways to solve most problems.
16:16 luminous I don't find the other options better though, so I live with it personally
16:16 Mr_N Indeed; I chose salt after evaluating puppet/ansible/chef
16:16 luminous if you learn to be resilient to those shortcomings, you have tremendous power
16:17 luminous we need manys ways to solve problems, salt is a stack
16:17 luminous not an app
16:17 luminous ansible is an app
16:17 Mr_N The biggest problem I've had overcoming, is the proper "mindset"/model to approach problems with
16:17 luminous it does one thing rather well, I guess, if you like that thing
16:17 luminous salt is a stack to build things
16:17 krow joined #salt
16:17 Mr_N I'm still having "ah-hah" moments about pillar, as I did with dave_den 's latest explanation
16:17 RandalSchwartz you can get ansible parity using salt-ssh, I believe
16:17 luminous Mr_N: yea, that can be a challenge to develop
16:17 RandalSchwartz although the first step would be to install salt_minion :)
16:17 MTecknology Is it possible to configure salt to let non-root users execute commands against specific hosts?
16:17 luminous there aren't lots of super great examples, but there is still a lot you can get from looking around
16:18 RandalSchwartz MTecknology - sounds like a job for a restricted sudo
16:18 Mr_N utahdave's user creation example was the foundation for like, ALL of my user/group/machine management structure :P
16:18 MTecknology RandalSchwartz: that's what I'm doing and wanting to avoid.
16:18 Ahlee MTecknology: client_acl and external_auth
16:18 RandalSchwartz oooh.  more toys!
16:18 dave_den MTecknology: yes, euath.
16:18 dave_den eauth
16:19 Ahlee be warned, wheel requires eauth and can't be done with acl alone
16:19 Ahlee which is the suck
16:19 dave_den it's not super fine grained
16:19 Ahlee you don't think so?  You have to specifically spell out what you want to allow
16:20 krak3n` joined #salt
16:20 adpaolucci joined #salt
16:20 Ahlee so you can say yes to state.single only, rather thn allowing state.* or state.highstate or similar
16:20 dave_den it only works on a regex against modules and functions. that's pretty darn basic
16:20 MTecknology If I'm giving users access to run things, I want them to be able to run whatever they feel like on the servers they're aloud to play with.
16:20 Linz joined #salt
16:21 MTecknology the alternative is I give them root on those boxes and have them run salt-call
16:21 luminous MTecknology: salt-call is a great alternative to consider
16:21 RandalSchwartz or enough sudo to run salt-call
16:21 StDiluted joined #salt
16:21 _jslatts joined #salt
16:21 RandalSchwartz doesn't need to be full root
16:21 dave_den MTecknology: you can't restrict that, unfortunately. you can only permit executing modules and module functions, not which minions can be targeted
16:21 luminous and then you use salt-master/minion to control the boxen remotely
16:21 StDiluted morning
16:21 StDiluted something changed in the latest version, and I'm getting an error, justneed syntax help
16:21 MTecknology alrighty, welp... I was mostly just hoping. Thanks!
16:22 dave_den MTecknology: unless you created a custom runner module which did the security checks
16:22 StDiluted Invalid requisite type 'user.present'
16:22 StDiluted what's the current way to ensure a user is present before executing a state?
16:22 dave_den StDiluted: requisites are in the form of:   module: ID declaration
16:22 MTecknology that could work; maybe I'll look into that next year (when time is there)
16:22 dave_den not module.function: ID dec
16:23 MTecknology thanks for the info :)
16:23 StDiluted so require: - user: username?
16:23 StDiluted instead of require:  - user.present: username
16:23 dave_den if username is your id declaration, yes.
16:24 Linz joined #salt
16:24 schimmy joined #salt
16:24 StDiluted what is the current way to require that a particular user is present before applying a state declaration
16:24 RandalSchwartz if I install my packages (on freebsd), they tend to create the necessary users... does that mean I can probably leave those out of my declarations?
16:24 dave_den StDiluted: have a user.present state, then require that state in your other state.
16:25 n8n joined #salt
16:25 dave_den RandalSchwartz: just like stdiluted is doing, it's nice to have salt know about the user accounts in case you have other states that need to ensure the user is present before running
16:25 KennethWilke joined #salt
16:26 zooz joined #salt
16:26 StDiluted cool, that helps, thank you
16:26 dave_den salt will not know about the user unless you have a state that says user.present.
16:26 RandalSchwartz ahh.. so only the secondary dependencies then... not necessarily the one that adds the user
16:26 dave_den requisites look for states defined in salt - they do not query the actual system
16:26 RandalSchwartz oh
16:27 dave_den so if you have service.running: ….  require: user: blah, you need a salt state that says user.present: -name:  blah
16:27 StDiluted DAVE_DEN: THAT SYNTAX I HAD _USED_ TO WORK, TIL I UPDATED
16:27 StDiluted oops
16:27 StDiluted damn caps lock key
16:27 dave_den EEEK
16:27 StDiluted sorry
16:27 StDiluted hahaha
16:27 StDiluted scare ya?
16:28 RandalSchwartz "TIL I *UPDATED*"
16:28 dave_den StDiluted: yes, the mod.func should not have been allowed, but it was silently ignored
16:28 dave_den 2014 enforces correctness
16:28 * RandalSchwartz stands corrected, then {grin}
16:28 dave_den :P
16:30 joehillen joined #salt
16:30 schimmy joined #salt
16:30 dave_den joined #salt
16:31 RandalSchwartz heh... chapter 16: "Understanding YAML"
16:31 StDiluted it's all good, not complaining, just didnt know why my state suddenly failed
16:31 RandalSchwartz do they mean the syntax, or *why????*
16:31 * RandalSchwartz grins
16:31 dave_den RandalSchwartz: you would be surprised about how many problems are due to not understanding yaml.
16:31 dave_den or maybe you wouldn't, but it happens a LOT
16:32 forrest carmony, you around?
16:32 RandalSchwartz I'm gonna write all my sts files in JSON single-line format. :)
16:32 carmony forrest: sup
16:32 RandalSchwartz since that's a subset of YAML
16:32 forrest carmony, you saw you're talk is available now right?
16:32 carmony forrest: I didn't! :D
16:33 dave_den cool. i watched the first two yesterday. time for more
16:34 krow joined #salt
16:34 RandalSchwartz Hmm.  the YAML chapter doesn't list the JSON version
16:35 forrest Someone needs to come up with an algorithm that will analyze the slide on a youtube video, and make the slides play forward on slideshare
16:35 tryfan xmj: ports tree has picked up 2014.1.0, installing now
16:35 forrest then you could just go through the slideshare stuff as the person is talking.
16:35 RandalSchwartz { service: { running: { user: { present: ['name1', 'name2'] } } } }
16:36 RandalSchwartz unless a non-standard YAML parser is being used
16:36 jslatts joined #salt
16:37 dave_den it's PyYaml, but you can use the json  renderer.
16:37 RandalSchwartz so PyYaml doesn't support standard YAML?
16:37 StDiluted dave_den: did something change with mysql grants?
16:37 RandalSchwartz PyYaml looks to support YAML 1.1
16:37 rgbkrk joined #salt
16:37 StDiluted Exception: Invalid grant requested: 'ALL PRIVILEGES'
16:38 dave_den StDiluted: try just 'ALL'
16:38 dave_den that mysswl module has been finicky about all privs
16:38 dave_den RandalSchwartz: that would explain it.
16:38 RandalSchwartz Yeah - YAML 1.1 is effectively supporting JSON-style structures
16:39 RandalSchwartz so yeah, you could write your entire STS as JSON, and it'll still work
16:39 UtahDave joined #salt
16:39 StDiluted thanks, dave_den
16:39 dave_den welcome
16:40 druonysuse joined #salt
16:40 druonysuse joined #salt
16:42 mapu joined #salt
16:44 StDiluted hopefully that's working now ;) it's trying anyway
16:45 tryfan xmj: thanks for the pointer...things are working now
16:46 Gordonz joined #salt
16:46 StDiluted dave_den: I have an obscure rbenv state question, would you be able to answer?
16:46 dave_den not sure. i use rvm myself. might as well ask your question anyway :)
16:47 StDiluted ok. I an using rbenv.installed to install a particular version of ruby (1.9.3-p-484)
16:47 Gordonz joined #salt
16:47 StDiluted the first time i run the state, it fails
16:47 StDiluted it installs rbenv
16:47 StDiluted and the ruby-build plugin
16:48 StDiluted but then I have to log into the target system, and cd /usr/local/rbenv/plugins/ruby-build;git pull
16:48 StDiluted because it's not getting all the latest build packages
16:48 StDiluted it gets up to p448
16:48 StDiluted so I'm wondering, other than automating that task
16:49 StDiluted is there something I can do to make sure ruby-build is updated from the get-go?
16:49 krow joined #salt
16:49 StDiluted that make sense?
16:49 _jslatts joined #salt
16:50 dave_den i'm not sure how rbenv is being installed or installing ruby-build, but you can have a git.latest state that make sure you have the latest git checkout of the ruby-build repo.
16:50 dave_den without looking at the code and rbenv install, i wouldn't be able to comment on why it's not getting the latest rev
16:52 [diecast] joined #salt
16:52 StDiluted yeah I'm assuming the state is doing all that
16:52 StDiluted I never told it to
16:52 StDiluted I can look at the code and see
16:55 xmj tryfan: :)
16:55 xmj tryfan: gotta like people running salt on freebsd, makes my heart fuzzy :p
16:57 ipalreadytaken joined #salt
16:58 obimod anyone have a link for the webinar?
16:59 Furao joined #salt
16:59 obimod just registered and haven't received an email yet
16:59 Ztyx1 joined #salt
17:00 obimod yay nvm
17:01 StDiluted dave_den: looks like this is what gets called: git clone https://github.com/sstephenson/ruby-build.git {0}
17:01 StDiluted and there is an update ruby build method as well
17:01 StDiluted so maybe i need to do that
17:01 Ztyx joined #salt
17:01 StDiluted rbenv.update
17:02 [diecast] joined #salt
17:05 [diecast] joined #salt
17:07 jslatts joined #salt
17:09 moos3 is their way for me to secure my minions so that master know they are only from my infra ?
17:09 Ztyx1 joined #salt
17:09 RandalSchwartz well - they have that private key
17:10 RandalSchwartz that pretty much ensures authentication
17:10 RandalSchwartz and you can lock down the master so it's only listening on the "inside"
17:10 baniir joined #salt
17:14 moos3 yeah we are expanding out a aws VPC and wanted to do something where if the minions have the masters key they would just be added automagically
17:14 StDiluted you could use salt-cloud for that
17:16 xmj is it possible for minions to have the masters' public key instead?
17:17 danielbachhuber joined #salt
17:18 HeadAIX joined #salt
17:18 moos3 we are using aws's autoscalling
17:21 Ryan_Lane moos3: https://github.com/saltstack/salt/issues/10070
17:21 Iwirada left #salt
17:21 Ryan_Lane there's no really great way to handle autoscaling right now
17:22 Ryan_Lane basically the only sane way to handle it is with autosigning and limiting access to your salt master by security groups
17:22 moos3 yea
17:22 jacksontj Ryan_Lane: another thing you could do is to add a reactor on the master which sees the failed auth and checks if the minion is legit against the EC2 API or somesuch
17:23 moos3 what might just work too
17:23 sieve It seems that, when I have minions with version:   saltversioninfo: 2014    1      0 and I try to run state.highstate I get error: "Comment:   No Top file or external nodes data matches found"
17:23 Ryan_Lane hm. that is indeed a possibility. would the reactor have enough info, though?
17:23 Ryan_Lane it would be ideal to have the instance's IP and the keyname
17:23 sieve however the minions that show version: 0 17 5 have no problem
17:25 mapu joined #salt
17:25 Heartsbane So if you have locked down your master
17:26 Heartsbane is there any good documentation on how to configure salt to run without sudo
17:26 diegows joined #salt
17:26 Heartsbane ?
17:27 jnials joined #salt
17:28 StDiluted sieve: what version does your master have
17:29 Saint-N joined #salt
17:29 Saint-N hey
17:29 Saint-N is there a way to show ONLY errors on the final summary?
17:29 jacksontj Ryan_Lane: if that information isn't in the auth event we should probably add it ;) its important information
17:30 Saint-N ie only the red
17:30 sieve StDiluted: salt 0.17.4
17:30 jacksontj Heartsbane: minion or master without root?
17:30 StDiluted sieve: you can't have the minions ahead of the master
17:30 jacksontj salt is significantly less useful on the minions not running as root
17:31 Gareth morning.
17:31 obimod good morning!
17:31 StDiluted sieve: you gotta upgrade your master in order to control the 2014.1.0 minions
17:31 dave_den Saint-N: state_verbose: False
17:31 fxhp Saint-N - http://russell.ballestrini.net/filter-salt-stack-return-data-output/
17:32 fxhp or that ^
17:32 Saint-N yay thanks!
17:32 Heartsbane jacksontj: no, run as a non-root user
17:32 Heartsbane I think I found it
17:32 sieve StDiluted: thanks for the help
17:33 StDiluted sieve: of course!
17:33 fxhp Heartsbane: its tricky because most states modules and remote execution modules were writing in a way that assumes salt-master daemon is running as root
17:33 fxhp written*
17:34 sieve StDiluted: thats been bugging me all day
17:34 sporkd2 joined #salt
17:35 Heartsbane fxhp: so I want to give the Infrastructure team access to run everything from the master server and they are complaining that they always have to type sudo to run salt commands
17:35 StDiluted sieve: you always want to have masters ahead of minions. masters are backwards compatible unless otherwise specified in the docs
17:35 Heartsbane fxhp: so there is not a good solution
17:35 fxhp Heartsbane: tough, haha
17:35 fxhp Heartsbane: agreed
17:36 KyleG joined #salt
17:36 KyleG joined #salt
17:36 jacksontj Heartsbane: ah, yea there are docs somewhere.. but i haven't run it like that before ;)
17:36 Heartsbane Grrr...
17:37 ajw0100 joined #salt
17:37 fxhp Heartsbane: tell them salt commands require elevated privs, and sudo gives them elevated privs
17:37 fxhp Unless you don't mind letting them sudo to root
17:38 toastedpenguin joined #salt
17:40 frasergraham joined #salt
17:41 rdeshpande joined #salt
17:42 conan_the_destro joined #salt
17:42 toastedpenguin joined #salt
17:42 UtahDave left #salt
17:42 arthabaska joined #salt
17:42 Ztyx joined #salt
17:42 rdeshpande left #salt
17:44 Heartsbane I don't mind the rest of the team minds
17:46 suckaplease joined #salt
17:47 redondos joined #salt
17:49 fxhp Heartsbane: setuid on salt command to root
17:49 fxhp (don't really do that)
17:49 frasergraham joined #salt
17:50 jaimed joined #salt
17:51 ender joined #salt
17:51 n8n joined #salt
17:52 fxhp Heartsbane: the issue is all of you salt-minions daemon are also running as root
17:52 fxhp so giving users 'sudo salt' on salt-master is like giving them root on every server that has a minion running with root privs
17:53 fxhp Running salt-minion daemon as root is sort of a nessasary evil
17:54 fxhp without it, salt in general is way less powerful
17:57 pmcg joined #salt
17:58 gcbirzan I haven't read all the way back, but you can run salt-master as non-root, and also let other users run stuff on it
17:59 moos3 in a reactor is it possible to call a script if I wanted to query the aws ec2 api ?
17:59 nedrocks joined #salt
18:00 millz0r left #salt
18:01 jaimed joined #salt
18:04 ausmarton joined #salt
18:05 tryfan well here's a new problem...freebsd 10.0 again, running salt 2014.1.0.  trying to change an existing user shell, do I have to specify every variable for that user or just what I want to change?  I didn't include anything about groups but it says "values could not be changed: {'groups': []}
18:08 luminous Rendering SLS foobar failed, render error: expected '<document start>', but found '<block mapping start>' <<< anyone ever seen this? what is salt trying to tell me is wrong?
18:08 Ryan_Lane joined #salt
18:08 toastedpenguin joined #salt
18:08 luminous yes, rendering error with jinja .sls
18:09 luminous but what?
18:09 Ahlee ok, getting an error that Boron was passed in to this function when it was expecting a tuple, yet grep -R in the source does not return Boron at all
18:10 Ahlee i had expected only version.py to contain the version definition, yet it appears it's picking up Boron from somewhere else
18:10 n8n joined #salt
18:10 tryfan I guess the issue would be: why is salt worrying about groups in a user.present state if not explicitly defined?
18:11 toastedpenguin joined #salt
18:13 Ahlee Heartsbane: http://docs.saltstack.com/ref/clientacl.html
18:13 dave_den tryfan: try remove_groups: False
18:14 Ahlee you can run any non-wheel and non-runner without authentication
18:14 dfinn1 joined #salt
18:14 tryfan dave_den: thanks, that worked.  I would think that default would be the other way round
18:14 * dave_den shrugs
18:14 R_Shackleford joined #salt
18:14 dave_den dunno when that was implemented
18:14 moos3 does anyone have a good solution for cleaning out hosts that aren't there any more ?
18:15 dfinn1 are many people using salt to manage bind config files?  we had puppet doing this in the past and it didn't work out so well, mostly because of our puppet setup.  i'm thinking about just using something simple like git repos to manage bing doing forward (have transitioned from puppet to salt) but I thought maybe I should consider salt as well.
18:15 \ask dfinn1: what didn't work well with puppet for the bind files?
18:15 kula dfinn1: i've been doing the combo of "git repo" and salt's "make this directory look like this branch of this git repo" for a lot of stuff.
18:15 \ask dfinn1: I manage the data separately but have bind configs in both salt and puppet
18:16 cjwhn joined #salt
18:16 dfinn1 mostly huge delays in changes getting pushed out from the puppet master to the node(s).  also, it seemed overly complex.  make a git change in a local git repo, pull from puppet master, restart puppet master service, restart puppet on bind server
18:17 \ask dfinn1: you should just be updating the puppet master and then waiting for the update interval
18:17 dfinn1 and for urgent dns changes which most of ours seem to be?
18:17 cjwhn Does anyone know how I can avoid using the minion_id cached in /etc/salt/minion_id when running salt highstate (on a masterless minion)?
18:17 dfinn1 our update was 30 minutes so that wasn't working so well
18:17 dave_den Carmony: ops are pandas. lol.
18:17 \ask dfinn1: I'd manage the master data (the zone data) separately in subversion or git (and update it propmtly on the master), but the config files for bind (named.conf etc) I'd have in salt/puppet.
18:18 rjc joined #salt
18:18 dfinn1 ok, i'll think that one over.  seems sensible
18:18 \ask cjwhn: I think the latest version did away with that misfeature.
18:18 luminous I'd have it all programmable through pillar, and then through reclass
18:18 dfinn1 but then if you are adding a zone, you have to update things in 2 places.  salt and the git repo for the zones.  maybe not ideal but also not something we do all that often.
18:19 dfinn1 kula, would you mind sharing your sls with me for doing that?  I'm curious how that would look.
18:19 \ask dfinn1: right, that depends on your workflow. You could also have  the list of zones auto-generated somehow from the not-config-management repo
18:19 cjwhn \ask: I'm running 2014.1.0, and it's still using the id in /etc/minion_id every time
18:19 kula dfinn1: i don't have one specifically for bind, but i do it for other things
18:19 \ask cjwhn: no idea, we're still on 0.17.2 (or .4?)
18:20 cjwhn thats older?
18:20 Ahlee yes
18:20 Ahlee 0.17.5 -> 2014.1.0
18:20 Ahlee and, I sure as hell hope they're not doing away with minion_id
18:20 luminous \ask: update to v.17.5
18:21 luminous I would not recommend 2014.1 without testing your setup extensively
18:21 Ahlee I just rolled back to 0.17.2 from 0.17.5
18:21 luminous oh yea?
18:21 luminous ouch
18:21 luminous what's not working in .5 for you?
18:21 Ahlee gitfs caching
18:21 dfinn1 I'm planning on updating to 2014.1.0 tonight.  fingers crossed.
18:21 luminous I finally started to see some good results with .5 ;)
18:21 Gordonz_ joined #salt
18:21 luminous oh, yes.. gitfs caching has been problematic in the past. that's not easy
18:22 luminous I stopped using gitfs
18:22 \ask we turned off gitfs and have been much happier since.
18:22 luminous dfinn1: you should test and you should not if a migration willl work
18:22 \ask I made a small script to just update our master to the tag we wanted to put in that environment
18:22 luminous dfinn1: do not do it blindly, save yourself the trouble
18:22 \ask we have separate salt masters for prod and dev.
18:22 Ahlee \ask: same.
18:22 luminous yea, I don't mess with env either
18:22 Ahlee i still do env
18:22 Ahlee i just double whammy it
18:23 Ahlee makes for confusing discussions!
18:23 dfinn1 luminous, I have tested upgrading a clone of my current master and then pointed a minion against it and everything looked good.  maybe I should have tested further but it seemed to work OK for me.  rolling back is easy enough since our master is on vmware.
18:23 spechal joined #salt
18:23 dfinn1 we do use env extensively but it sounds like that will continue to work for a while
18:23 Ahlee ok that seals it though.  I'm going to just write a state to update what would be gitfs points
18:23 n00b joined #salt
18:23 Ahlee multimaster get patched yet?
18:24 cjwhn joined #salt
18:25 kula dfinn1: here's a rough outline of what i do: https://gist.github.com/tlk2126/9670521
18:25 dfinn1 thanks!
18:26 jaimed joined #salt
18:26 vejdmn joined #salt
18:28 spechal left #salt
18:29 n8n joined #salt
18:31 krow joined #salt
18:33 toastedpenguin joined #salt
18:35 younqcass joined #salt
18:39 suckaplease joined #salt
18:39 GoKage joined #salt
18:39 Gordonz joined #salt
18:41 R_Shackleford joined #salt
18:42 carmony dave_den: lol, yes... ops are pandas
18:43 dave_den carmony: great talk
18:43 carmony dave_den: thanks :)
18:43 boakley joined #salt
18:43 toastedpenguin joined #salt
18:43 carmony it had a few hiccups and such, not as smooth as I like, but it was my first time giving it :)
18:43 Gordonz joined #salt
18:44 dave_den i went through your slide deck a few weeks ago, but it was nice seeing you talk about it
18:44 dave_den very practical approach to figuring out what you need in devops
18:46 cheus joined #salt
18:47 cheus Hi. Is there a best practice on writing formulas that have dependencies covered by other formulas (eg, an approved or 'correct' way to include them) ?
18:48 jcsp left #salt
18:48 akoumjian Anybody know where the .deb build instructions are?
18:51 mpanetta joined #salt
18:53 naiyte joined #salt
18:55 Networkn3rd joined #salt
18:56 moos3 in a sls file I can run a command and pass it a var with cmd.run right ?
18:57 Heartsbane Ahlee: thank you
18:57 Shamil joined #salt
18:58 CaptTofu joined #salt
18:58 CaptTofu hi all!
18:58 Shamil Hi,
18:58 Shamil Anybody knows how to pass pillar to overstate?
19:00 whiteinge overstate cannot take pillar as a CLI arg, afaik
19:00 circ-user-5zSAy joined #salt
19:00 whiteinge the successor to overstate can. though it's not fully documented yet
19:01 Shamil successor? example?
19:01 circ-user-5zSAy left #salt
19:02 toastedpenguin1 joined #salt
19:02 luminous whiteinge: overstate is being replaced? interesting.
19:03 luminous I'm glad I didn't use it! :P
19:03 whiteinge similar syntax. it's the state.sls runner
19:03 whiteinge trying to find the doc...
19:03 toastedpenguin joined #salt
19:03 luminous ah yes, that's a more holonic approach
19:04 CaptTofu is Joseph Hall around here?
19:05 CaptTofu or Tom Hatch?
19:05 CaptTofu I've been trying to submit pull requests and git is biting me. I confess to sometimes being outsmarted by git.
19:06 Shamil whiteinge: found it, thanks
19:06 luminous CaptTofu: it happens to the best of us, that is git
19:06 luminous don't take it personally
19:06 oz_akan_ joined #salt
19:06 whiteinge CaptTofu: they tend not to idle on IRC. what's the git issue?
19:06 whiteinge Shamil: nice. link?
19:06 mpanetta joined #salt
19:06 toastedpenguin1 joined #salt
19:07 luminous http://paste.debian.net/hidden/18d6b3ea/ <<< what's up with postgres?
19:07 Shamil whiteinge: http://docs.saltstack.com/ref/runners/all/salt.runners.state.html#salt.runners.state.sls
19:08 whiteinge ah, thanks
19:08 whiteinge found the tutorial mention too: http://salt.readthedocs.org/en/latest/topics/tutorials/states_pt5.html#the-orchestrate-runner
19:08 luminous is this pip, python, or postgres, or salt that is unhappy here? this is a simple postgres_user.present state
19:08 dave_den luminous: is distutils installed?
19:08 luminous dave_den: it may not be, I'm not sure why I'd now need it, but I can ensure it is
19:09 CaptTofu whiteinge: so, I have two pull requests and the build failed because I had other commits in there that weren't supposed to be there
19:09 dave_den the postgres module should not be dependent upon distutils.
19:09 hunter joined #salt
19:09 CaptTofu whiteinge: what I'm going to try to do is reset to a commit before the mess, push that into my fork
19:09 luminous dave_den: this is on v.17.x
19:09 luminous dave_den: this is on v.17.5
19:10 whiteinge CaptTofu: how many commits are supposed to be in your pull req?
19:11 dave_den luminous: it looks like distutils is installed, but either self or other is undefined when comparing using cmp()
19:11 dave_den not sure why
19:11 luminous yea, this is whacky
19:11 CaptTofu whiteinge: well, one of them, it was messy and I thought I fixed it and started over from scratch in the develop branch and squashed them into one and then did the pull request
19:11 luminous I am going to suspect recent changes (of mine), I must review them a little more
19:12 CaptTofu then, the other, I used what I thought was a stock develop branch and made a single commit there and pushed that into yet another branch I did a pull request for
19:13 dfinn joined #salt
19:14 whiteinge CaptTofu: if it's just one commit, try this: git show, copy-and-paste the SHA for the commit. then: git fetch origin; git reset --hard origin/develop; git cherry-pick <THE SHA>
19:14 themadcanudist joined #salt
19:15 CaptTofu whiteinge: thanks! I'll try that.
19:15 themadcanudist hey guys… what's the general thought on modifying pillar data within an sls?
19:15 themadcanudist and consequences/best practices?
19:15 luminous interesting.. so pip.installed with version: latest will not update pip to the latest version using pip..
19:15 whiteinge CaptTofu: do you have a single remote defined for your fork or do you also have a remote set up for the upstream salt repo?
19:16 CaptTofu well, I did only have for my fork
19:16 CaptTofu but now I'm using two
19:18 Linz_ joined #salt
19:18 smcquay joined #salt
19:19 whiteinge if you have one for the upstream salt repo, you probably want to fetch and reset to that one instead: git fetch upstream; git reset --hard upstream/develop
19:22 obimod themadcanudist: sounds like php
19:23 obimod themadcanudist: architectural nightmare assuming it becomes relatively more complex?
19:23 luminous themadcanudist: modify it how?
19:23 luminous what are you trying to do?
19:24 obimod *performs sounds from the peanut gallery*
19:24 themadcanudist luminous: that's my question, when you reference pillar data as a python object in a .sls file (not pillar sls), are you actually modifying the pillar data or a python deep copied object?
19:24 luminous themadcanudist: I use salt['pillar.get']('foo:bar', default) generally
19:25 luminous and I generally use {% set ... %} in jinja with that, but you would do whatver similar in mako/etc
19:25 themadcanudist let's say i'm referencing pillar['key'] etc..
19:25 luminous don't do that
19:25 luminous use salt['pillar.get']('key', default)
19:25 themadcanudist before i don't do that, what is it that i'm doing
19:25 * themadcanudist nods
19:25 luminous you are looking up a key in a dictionary
19:25 themadcanudist that will then copy the object, gotcha.
19:26 luminous there's no copying
19:26 luminous this is python
19:26 obimod reference
19:26 luminous we don't copy objects, we reference them
19:26 themadcanudist sorry, bad wording
19:26 luminous s'ok
19:26 luminous *it's ok
19:27 luminous i think we're talking about the same
19:28 themadcanudist but by using pillar['key'] = 'value' I'm actually modifying the pillar structure, correct. This is why i *shouldn't* do that
19:28 obimod good question though... im not sure about jinja but i think you'd be able to hackishly modify it with cheeta
19:28 obimod cheetah**
19:28 themadcanudist if i were to do an assignment like that
19:28 themadcanudist i use mako
19:28 themadcanudist mako?yaml
19:28 themadcanudist mako|yaml*
19:29 obimod not too sure, only used it once in '11
19:29 obimod but yea, i think that would be breaking MVC separation so to speak
19:29 frasergraham joined #salt
19:30 obimod i think a better way would be to selectively associate grain data to the particular minion and reference that with {% if ...
19:31 luminous themadcanudist: but when/why would you do that?
19:32 luminous you should be doing something like foo: {{ bar }}     or foo: {{ pillar['key'] }}    (except using salt['pillar.get']
19:32 themadcanudist luminous: I'm just exploring salt really
19:32 luminous ok
19:32 themadcanudist and i'm just poking around
19:32 luminous a good thing to explore
19:33 luminous of course
19:33 luminous another good idea
19:33 faldridge joined #salt
19:33 obimod : ) i wonder if a shell script could modify grain data
19:33 luminous obimod: do you know where the grain name comes from?
19:33 luminous "grains of truth" - they are immutable (per minion run)
19:33 smcquay joined #salt
19:34 themadcanudist so using pillar.get() if the value of the key is a nested dict, youll get the whole structure back, correct?
19:34 themadcanudist i imagine so
19:34 luminous I think so, yes
19:34 obimod the jinja template wrapper might actually create a copy, like you said themadcanudist
19:35 themadcanudist obimod: as opposed to modifying/referencing the underlying pillar object directly, pillar.get() would just return a new object based on your key (not the pillar object).
19:35 luminous that might be true
19:35 obimod http://stackoverflow.com/questions/11047886/modifying-dictionary-attributes-in-jinja2
19:35 themadcanudist i think we're on the same wavelength, right?
19:36 luminous what would you try to do with that?
19:36 obimod "The idea is that you cannot perform assignments in jinja2. [...]"
19:36 luminous you use {% set var = %} for assignment
19:38 johtso joined #salt
19:38 connie joined #salt
19:39 themadcanudist very illuminating
19:39 themadcanudist thanks guys!
19:41 alunduil joined #salt
19:43 themadcanudist luminous: i imagine in general that all data/functionality should really always be done via salt modules/functions and not by directly accessing locals() etc..
19:43 themadcanudist unless of course, there is no other way and you need to do something crazy like that which may break in future releases, etc...
19:45 luminous yea, I try to keep things simple, personally
19:45 luminous themadcanudist: have you seen the formula on github?
19:46 luminous there are good examples of most of this stuff there
19:46 luminous some bad stuff too..
19:46 themadcanudist luminous: which formula? I've seen the lot of them.
19:46 luminous but eh, what's 'bad'
19:46 * themadcanudist nods
19:46 themadcanudist hehe, the formulas are a good reference, fairly simple though
19:46 vu joined #salt
19:46 luminous the way the master/minion configs are completely parametized with states/template/pillar is a good thing to aim for as 'standard'
19:47 themadcanudist yeah, for sure
19:50 ipalreadytaken joined #salt
19:51 hunter joined #salt
19:54 Ztyx joined #salt
19:55 krow joined #salt
20:02 frasergraham joined #salt
20:03 zooz joined #salt
20:05 googolhash joined #salt
20:06 johtso joined #salt
20:08 kermit joined #salt
20:09 alfborge I would like to have my win/repo in a subfolder of a git repository, but as far as I can see this isn't supported.  Is this correct?
20:10 kaptk2 joined #salt
20:17 GradysGhost joined #salt
20:19 sijis joined #salt
20:19 sijis what the difference between rest_cherrypy and rest_wsgi in regards to salt-api?
20:20 whiteinge sijis: rest_wsgi is sort a simple no-dep proof of concept. it's not recommneded for most things
20:20 cheus anyone know if there's a way to call salt.utils.dictupdate.update from a jinja template? I have a need to merge some pillar data with a dictionary of sane defaults.
20:21 sijis whiteinge: in most cases, i'd want to use the cherrypie one? i'm also seeing it as a dependency for salt-api (installing via yum)
20:21 whiteinge sijis: yes
20:22 sroegner joined #salt
20:23 whiteinge cheus: not directly. you could make a quick execution module to wrap it though
20:23 sijis whiteinge: i will test... but its not running a cherrypy instance, right? i can still run under apache (i have apache already running on this salt master server)
20:24 whiteinge cheus: have you seen the grains.filter_by function? it does something similar to what you're after
20:24 sijis whiteinge: based on the doc, i can use the wsgi example provided
20:25 whiteinge sijis: yeah, you can use the cherrypy server or another wsgi server. just pay attention to what user apache is running as and what user you have configured in eauth
20:25 Ahlee whiteinge: is there any hidden areas where salt would be mapping release:version?  i bumped my internal version up to 0.17.7 in version.py, and now salt/utils/__init__.py is seeing Boron come through, despite boron not showing up in grep -R salt/*
20:25 cheus whiteinge: Aye, but I have no grains that need filtering. Seems overly complex to fake a default just to get access to the recursive dictionary merge. The execution module's a good idea. Something like that will probably come in handy in other scenarios
20:26 rawzone joined #salt
20:27 napper2 joined #salt
20:27 cheus whiteinge, Too bad pillar.get doesn't have a third parameter for how it incorporates the passed default (eg, merge=False)
20:28 whiteinge cheus: yeah. might be a good addition :)
20:28 whiteinge Ahlee: what is returing Boron?
20:28 whiteinge what in utils i mean?
20:30 aboe joined #salt
20:31 Ztyx joined #salt
20:32 sijis whiteinge: looking to eauth - is pam only user based, not group capable. .. also, is api authenticating with user notied in eauth?
20:32 Ahlee one sec
20:33 whiteinge that's correct. we're working on group-based auth for the next Salt release. also correct that the user configured in eauth is the user you auth with in salt-api
20:34 Ahlee https://gist.github.com/jalons/04317126b228a9aa976f
20:35 Ahlee $ grep ^__saltstack_version__ /usr/lib/python2.6/site-packages/salt/version.py
20:35 Ahlee __saltstack_version__ = SaltStackVersion(0, 17, 7)
20:36 Ahlee yes, I bumped the minor, and removed the items chedking for the minor
20:36 bhosmer_ joined #salt
20:37 Ahlee (there were a few things regarding signing if memory serves)
20:39 sijis whiteinge: last question. any example on the ldap eauth config? we use centrify to auth to server.. which uses pam.. so i'm thinking using pam will work. but just in case it doesn't
20:39 suckaplease joined #salt
20:39 sijis whiteinge: glad to konw that gropu support is comming. :)
20:40 kballou joined #salt
20:41 Saint-N so here's a question... lets say you really wanted splunk but they wouldnt let you and you cant run logstash/kebana cuz its java monolith  what would you use that is close to splunks ability and centralization?
20:41 n8n joined #salt
20:41 che-arne joined #salt
20:41 whiteinge sijis: i would expect pam to work, yes
20:42 dudesalt joined #salt
20:43 sijis Saint-N: we use sumologic.. but its not an in-house offering
20:43 dfinn we also use sumo.  i've only used it a little bit but seems pretty awesome to me.
20:44 [diecast] joined #salt
20:44 dudesalt salt gurus need help... I am looking for command to set a role:apache to certain minion externally (by not defining in minion config file)... how do I specify that any thoughts ?
20:44 dfinn set it in the role?
20:44 whiteinge Ahlee: odd. (reading through that code now.) i'm not sure offhand. ooc, why the version change?
20:45 Saint-N sijis, doesnt look bad but yeah they're trying to find a free thingy
20:45 Saint-N i cant think of anything else that i wouldnt have to custom build that cna do what splunk does
20:45 Saint-N without having a perpetual stream to someone elses servers
20:45 aboe dfinn, salt 'minion' grains.setval role apache
20:45 sijis Saint-N: understood.
20:45 themadcanudist left #salt
20:46 dudesalt ohh ok
20:46 johtso joined #salt
20:46 whiteinge Ahlee: any chance there's another salt installation on that box?
20:47 whiteinge or possibly a Salt clone from git somewhere?
20:49 dudesalt Sweet worked like charm ... thanks
20:51 Ahlee whiteinge: i bumpted the version to make it easier to track internally. we backported the gitfs caching items, and testing whether or not that is reflected in (0,17,5) was proving difficult
20:52 Ahlee so we bumped the minor, i messed up 6 by missing another change, thus 7
20:52 hunter joined #salt
20:53 Ahlee whiteinge: i see no other version, and i was able to reproduce it on anoter system, so it's definitely my build.  I'll check out v0.17.5 tag and roll forward again and see where that gets me
20:53 Ztyx joined #salt
20:54 whiteinge Ahlee: let me know if i can help test. i also don't see "Boron" anywhere in 0.17.5. that text is in salt/version.py for the 2014.x releases though
20:54 Ahlee ah. so mayhaps i tainted my release
20:55 suckaplease joined #salt
20:55 Ahlee strange.
20:57 TheRealBill_here joined #salt
20:59 googolhash_k joined #salt
21:00 dfinn1 joined #salt
21:01 JesseCW joined #salt
21:02 jkleckner joined #salt
21:04 suckaplease joined #salt
21:07 bhosmer_ joined #salt
21:08 kaictl joined #salt
21:09 fragamus joined #salt
21:13 DaveQB joined #salt
21:13 dudesalt joined #salt
21:14 dudesalt Quick question  : how do I set multiple values on grain : following command is not working :  salt 'salt0' grains.setval roles salt-master apache (here i want roles to be salt-master and apache )
21:15 suckaplease joined #salt
21:20 krow joined #salt
21:23 dudesalt joined #salt
21:23 dudesalt joined #salt
21:25 salter joined #salt
21:26 aboe dudesalt, it is only key value, not dict..
21:27 aboe for that use: salt '*' grains.setval key "{'sub-key': 'val', 'sub-key2': 'val2'}"
21:27 aboe dudesalt, this also helps: salt \* sys.doc grains
21:29 [diecast] joined #salt
21:30 cewood joined #salt
21:30 stevetodd joined #salt
21:31 kermit joined #salt
21:32 GradysGhost joined #salt
21:32 salter aboe, well  i want to set multiple values for roles like salt-master and apache
21:33 frasergraham joined #salt
21:33 salter basically  sub-key: val1 val2
21:36 aboe salter, one moment testing something
21:37 salter thanks aboe
21:37 Katafalkas joined #salt
21:38 hunter aboe: does grains.setval survive across reboots?
21:38 aboe yes it will create /etc/salt/grains
21:38 * hunter wonders where that gets stored.
21:38 hunter oh - freaking awesome.
21:40 salter brb
21:42 Tlost joined #salt
21:42 g4rlic hunter: I just discovered that myself yesterday, I'm quite pleased.
21:44 aboe mmm. multiple values work in /etc/salt/grains. after restarting the minion
21:45 aboe salter, salt \* grains.setval roles "{'salt-master': 'true', 'apache': 'true'}"
21:45 aboe salter, and then restart minion and test with salt '*' grains.has_value roles:salt-master
21:45 arthabaska joined #salt
21:46 johtso how is file.directory supposed to behave in regards to permissions when there are symlinks?
21:46 wkf_ joined #salt
21:50 ipalreadytaken joined #salt
21:51 frasergraham joined #salt
21:51 obimod joined #salt
21:52 n8n joined #salt
21:53 hunter joined #salt
21:54 Ztyx joined #salt
21:55 salter joined #salt
21:55 hunter_ joined #salt
21:57 ipalreadytaken joined #salt
21:59 ipmb joined #salt
21:59 hunter joined #salt
22:00 ggoZ joined #salt
22:00 ggoZ joined #salt
22:01 suckaplease joined #salt
22:02 Ztyx joined #salt
22:02 nedrocks joined #salt
22:02 salter aboe thanks for the suggestion but its not exactly what i was looking
22:03 aboe salter, can you explain what you wanted it to do?
22:03 salter because if i do a sudo salt 'salt0'  grains.items i see :   roles: {'apache': 'true', 'salt-master': 'true'}
22:03 salter i actually want to see
22:03 salter roles : apache
22:03 salter salt-mater
22:04 kula huh, can't i not have both a Include declaration and a Jinja include in a single sls file?
22:04 aboe salter, yes, but how does salt check the roles key?
22:06 salter thanks aboe, let me se
22:06 salter see
22:07 thalyli joined #salt
22:07 dave_den why use a dict for roles? are you ever going to have apache: False?
22:08 dave_den just make it a list
22:08 hunter joined #salt
22:08 allanparsons joined #salt
22:08 salter how to make it list ?
22:08 hunter feh - wireless
22:08 allanparsons how do you parse nested pillar data?
22:08 yomilk joined #salt
22:09 hunter http://docs.saltstack.com/topics/conventions/formulas.html#map-jinja
22:09 dave_den salter: grains.setval roles "['a', 'b', 'c']"
22:09 allanparsons i.e., how would i read the deploy_key hosts in a a state file:  ex: http://pastebin.com/N7k9Sawp
22:10 hunter I have a question about the example map.jinja file given in that doc - what does the "lookup" sub key accomplish?
22:10 hunter I don't see the value added there, but thats a recent documentation/convention change. I want to understand the why.
22:10 salter ohh ok
22:12 dave_den allanparsons:  salt['pillar.get']('deploy:gitproj:deploy_keys')
22:12 salter dave_den thats  beautiful .... yea thats what i wanted
22:12 salter salt  'salt0' grains.setval roles "['salt-master', 'apache']" works like charm ... thanks aboe dave_den
22:13 aboe does salt \*  grains.has_value  work?
22:13 Katafalkas joined #salt
22:14 hunter I just read that whole section again and the why or what is not included.
22:15 dave_den hunter: i am not involved in the formula conventions, but it seems like 'lookup' is just used a convention so it's easier to know this value is overriding a formula's pillar data
22:16 hunter dave_den: but it adds another level of dicionary to the pillar data. I don't see the advantage.
22:16 bhosmer_ joined #salt
22:17 hunter dave_den: But then I've been doing network upgrade for 3 days so my IQ _might_ be negative  -its definately an imaginary number.
22:17 dave_den i can only gues, but probably to avoid clashes with existing pillar data for non formulas
22:17 dave_den but i'm just guessing
22:18 whiteinge hunter: it's a convention, like dave_den said. since those values have one purpose which is to override the values in map.jinja so putting them one level down reduces potential conflict
22:18 allanparsons dave_den: if i'm looping through my pillar data and returning name,args
22:18 allanparsons can i do something like: {% set deploy_keys_host = args.get('deploy_keys:host', {}) -%}
22:18 scoth_ joined #salt
22:18 hunter whiteinge: thats not clear to me - and by that I mean that logic and perhaps a better pillar example to go with it should be in the docs.
22:19 dave_den allanparsons: no, dict traversal is something provided by the salt pillar module  http://docs.saltstack.com/ref/modules/all/salt.modules.pillar.html#salt.modules.pillar.get
22:19 hunter whiteinge: I'm working with pillar a fair bit now and that wasn't at all obvious to me.
22:19 * hunter is trying to be helpful in improving the docs and due to be tired just sounds like a whining ass.
22:19 whiteinge :)
22:20 hunter Can we get that added? (the impoved doc, not me being a whining ass - the internet probably knows that by now)
22:20 whiteinge if you have a sec to add a clarification to that conventions doc, i would love to get that added
22:21 * hunter has no idea how to edit that.
22:21 hunter Or submit a patch
22:22 whiteinge https://github.com/saltstack/salt/blob/develop/doc/topics/development/conventions/formulas.rst
22:22 whiteinge Just click the "Edit" button. GitHub will walk you through the rest. :)
22:23 whiteinge no CLI work needed. you can do it straight from the web site
22:24 ajw0100 joined #salt
22:28 allanparsons {% for repo_name, args in pillar.get('deploy', {}).iteritems() %}
22:28 allanparsons {% set deploy_keys_host = salt['pillar.get']('deploy:repo_name:deploy_keys:host', '') -%}
22:28 hunter whiteinge: https://github.com/huntermatthews/salt/compare/saltstack:develop...patch-1?quick_pull=1
22:28 hunter Is that what I'm supposed to submit? I didn't really write new docs as I still don't get the why.
22:29 allanparsons how do you just test the loops on the command line?
22:29 hunter I did some edits though
22:29 hunter I should really do this when I'm not seeing mac addresses and port vlan configs in front of my eyes.
22:30 frasergraham joined #salt
22:31 hunter whiteinge: I'm out of here - I'll pick this up monday or tuesday when I can think straight.
22:32 whiteinge k
22:32 suckaplease joined #salt
22:33 pentabular1 joined #salt
22:37 [diecast] joined #salt
22:41 allanparsons lol, this works:
22:41 allanparsons {% for repo_name, args in pillar.get('deploy', {}).iteritems() %}
22:41 allanparsons {% set deploy_keys_host = salt['pillar.get']("deploy:%s:deploy_keys:host" % name, '') whiteinge
22:41 allanparsons is that kosher, dave_dn?
22:41 allanparsons dave_den*
22:42 allanparsons that name should be repo_name
22:43 smcquay joined #salt
22:44 Luke_ joined #salt
22:49 ajprog_laptop joined #salt
22:49 JonGretar joined #salt
22:51 Luke_ joined #salt
22:51 StDiluted joined #salt
22:53 krow joined #salt
22:55 andrej jeddi : thanks for the response (WAAAY) earlier regarding /etc/defaults/grub ... if I have salt get the file in the right state again after e.g. and pkg.upgrade - how can I make salt run update-grub when it restores the file?
22:57 johtso joined #salt
23:00 arthabaska joined #salt
23:02 ksalman left #salt
23:04 allanparsons is file.append supposed to create the file if it doesnt already exist?
23:06 thayne joined #salt
23:12 ajprog_laptop joined #salt
23:14 ipmb joined #salt
23:15 diegows joined #salt
23:18 ipmb joined #salt
23:18 RandalSchwartz has bootstrap-salt been checked for bashisms?
23:20 toastedpenguin joined #salt
23:23 frasergraham joined #salt
23:24 meteorfo_ joined #salt
23:28 RandalSchwartz when the docs say **kwargs for service.running, where do those args go?
23:28 ajw0100 joined #salt
23:29 RandalSchwartz and thus, where are the docs for them?
23:33 mgw joined #salt
23:33 arthabas_ joined #salt
23:37 [diecast] joined #salt
23:38 quickdry21 joined #salt
23:40 conan_the_destro joined #salt
23:41 smcquay joined #salt
23:42 pentabular joined #salt
23:44 pentabular1 joined #salt
23:54 [diecast] joined #salt
23:56 TyrfingMjolnir joined #salt
23:59 smcquay joined #salt

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