Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2017-03-08

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

All times shown according to UTC.

Time Nick Message
00:00 systemex1t joined #salt
00:05 shoemonkey joined #salt
00:06 awhitaker joined #salt
00:06 uncool joined #salt
00:12 TheoSLC joined #salt
00:14 Gareth cachedout: that's a pretty awesome.
00:15 cachedout Aye, should be good if we can get something going for them
00:15 TheoSLC joined #salt
00:19 TheoSLC joined #salt
00:22 N-Mi joined #salt
00:22 N-Mi joined #salt
00:33 TheoSLC joined #salt
00:36 vegasq joined #salt
00:38 jas02 joined #salt
00:38 Gareth cachedout: I can definitely help contribute some examples.  I've been working with salt-cloud a lot lately.
00:41 TheoSLC joined #salt
00:46 cachedout Gareth: That would be great. I am trying to see if I can find a point person here at the office to handle the co-ordination. If somebody here would rather be the lead, even better, but if not I can put you in touch with whomever it ends up being.
00:49 Gareth Yeah.  Definitely.
00:50 jimklo joined #salt
00:50 cachedout Will do. Many thanks as always.
00:54 TheoSLC joined #salt
00:55 rickflare sup Gareth
00:56 Gareth Hi
01:05 Guest88863 joined #salt
01:05 mavhq joined #salt
01:05 nickabbey joined #salt
01:12 nZac joined #salt
01:13 wryfi we ran into an interesting issue today
01:13 wryfi we're using salt and gitfs
01:13 wryfi i had a file named rsyslog.conf, which had two different versions of an rsyslog config, in two separate files
01:14 edrocks joined #salt
01:14 wryfi i removed the directory, and consolidated the files into a single rsyslog.conf at the same level in the directory tree as the folder that was previously named rsyslog.conf
01:14 wryfi and this totally horked the checkout of the repo on the salt master
01:14 wryfi forcing us to stop the master, delete the cached repo, and then restart the master
01:14 wryfi has anyone run into anything like this before?>
01:21 Edgan wryfi: file named rsyslog.conf and two separate files doesn't make sense
01:22 aphor Hey: here's a new transport for salt https://www.wikileaks.com/ciav7p1/cms/files/DevelopersGuide.pdf
01:23 wryfi sorry Edgan, typo. it was initially a folder with two files in it.
01:23 wryfi folder renamed to a file with the same name.
01:30 cachedout Good news. I talked to the author this evening and we've reached a tentative agreement to include state graphing in the next salt release. Repo to be integrated is here: https://github.com/ceralena/salt-state-graph
01:30 cachedout Should make for a nice feature! We're big fans of her work.
01:30 aphor cool!
01:30 raspado joined #salt
01:33 aphor Hey @cachedout while you're here can I ask you a question?
01:33 cachedout Of course
01:33 aphor What's the canonical/customary/your-favorite way to deal with deprecating tests on deprecated code?
01:34 cachedout Great question. Is this a salt-specific question or a general one?
01:34 aphor Do people just mop up manually after deleting deprecated code routines?
01:34 aphor salt one.
01:35 aphor For example: I'm working on a branch to make the ntp execution and state modules work for both Windows and ntpd/chrony.
01:35 cachedout K. The salt answer is that one of our internal processes that we have during a release is to review the test suite log for exceptions/errors that get bubbled up to the console. If we find one, we make a note to go and adjust/remove the test as appropriate.
01:36 gableroux joined #salt
01:36 aphor So a nice way to deal with that is add deprecation messages to the test messages?
01:36 cachedout The answer is that if you raise an deprecation warning from salt, we'll see it when the tests run.
01:37 cachedout If you add them to the test itself, all the better. That makes everybody's job easier.
01:37 aphor Okay. Being a community thing, I'd err on the side of niceness.
01:37 cachedout We appreciate that. :]
01:38 whytewolf aphor: with execution modules they should be three different modules that all have the same __virtual__ name. which would make the state module edits a lot simpler. as the state module wouldn't care which module it is calling it just calls. ntp.setdate or something like that.
01:39 whytewolf kind of like how the pkg modules work
01:39 aphor Exactly, but the win_ntp module identifies itself as "ntp" in __virtual__() so I have to change that.
01:40 whytewolf um, no
01:40 whytewolf it SHOULD have a virtual name of ntp
01:40 aphor w32time is not ntp it's sntp
01:41 aphor and it should continue to refuse to load on non-windows platforms.
01:42 whytewolf you are talking about the win_ntp module.
01:42 aphor Buut.. if you install Meinberg NTP package on Windows the true ntp module should load.
01:42 aphor yes
01:42 whytewolf okay. but that is going to create more work for you when you go to write your state
01:43 whytewolf [or rewrite as the case may be]
01:43 aphor Yes, I know, but I want more functionality in the state.
01:43 whytewolf yes
01:43 whytewolf and this has nothing to do with that
01:43 aphor so that's already breached in my mind
01:44 whytewolf switch ntp to sntp is going to cause users that already use that command with windows to have issues as the name they access the exacution module by to change
01:45 aphor I agree the ntp state should do something smart about which modules it calls because I can't justify a separate state module for w32time.
01:45 cyteen joined #salt
01:45 whytewolf well, just add a check in the def __virtual__ that checks if the other software is installed to not load
01:46 whytewolf then write a exacution module for win_Meinberg_ntp
01:46 aphor I'm leaving in the w32time functions, but adding deprecation to them, "change your code from ntp.whatever to w32time.wahtever"
01:48 aphor Actually I want both to load on Windows so that salt.state.apply can *upgrade* w32time to Meinberg with a package.installed or whatever.
01:48 aphor or downgrade
01:48 aphor for silly (testing?) reasons
01:50 aphor are you still here @cachedout?
01:50 aphor Are you still here @cachedout?
01:50 aphor ooh lag
01:51 whytewolf ... but in a single state run. the Meinberg one wouldn't load until a reload modules is called anyway after a package install
01:51 whytewolf a reload modules would cause the ntp module to switch
01:52 aphor Actually I'm not confident in the Windows package.installed
01:52 fracklen joined #salt
01:53 whytewolf I'm not confident with windows so i guess we are even there ;)
01:53 whytewolf https://docs.saltstack.com/en/latest/ref/states/#reloading-modules
01:53 aphor the docs https://www.meinbergglobal.com/english/sw/ntp.htm have a command line method of doing unattended installs of real NTP for Windows.
01:53 aphor thx
01:55 aphor no more @cachedout?
01:56 whytewolf might have gone home for the night. it is almost 7 in MST
01:56 aphor whytewolf: are you working for saltstack?
01:56 whytewolf I wish
01:56 whytewolf I have just been using the software for a long time. and generally help out where i can
01:57 cachedout Sorry, I'm here. I'm easily distracted. Lots of people trying to find me.
01:57 cachedout What's up?
01:57 aphor Another thing I want to do is set up reasonable opinionated defaults for ntp servers in the state module.
01:57 cachedout whytewolf: We appreciate your help. Thank you!
01:58 aphor The nice guys in #ntp suggested that SaltStack fill out an application to get a pool.ntp.org domain like salt.pool.ntp.org
01:58 cachedout Interesting. What's their reasoning? They just want to distribute load?
01:58 aphor bad things happened when SnapChat hard-coded ntp server names in their app.
01:58 cachedout I'm happy to fill out an application. I'm mostly just curious.
01:58 whytewolf because they need more then 400 second tier ntp servers?
01:59 aphor Now pool.ntp.org is asking software vendors to request their own domain so they can do damage control if there's a bad release.
02:00 jas02 joined #salt
02:01 whytewolf ahh they are doing dns based load balancing ...
02:01 cachedout Ah, K. That makes sense.
02:01 cachedout Where's the application?
02:01 aphor Rather DNS based DDOS mitigation.
02:02 aphor https://manage.ntppool.org/manage/vendor <-- apply here.
02:02 Guest4533 joined #salt
02:03 whytewolf aphor: i do like the idea of a simple start. however. please make it overridable.... and have the ability to compleatly ignore defaults. I do setup local ntp servers in my software. I would like to be able to not have to fight salt for those settings
02:04 aphor whytewolf: I have lots of ideas, but sometimes I have trouble deciding between them, so your opinion is valuable to me. How would you like it to work?
02:05 aphor I was thinking of having the state module do ntp.enabled (Boolean) and that would get you automatic defaults.
02:05 whytewolf I would use ntp.defaults
02:06 mavhq joined #salt
02:06 aphor Buut you can add other stuff like pool, servers
02:06 cachedout aphor: Request sent to the NTP folks
02:06 aphor Thx @cachedout.
02:06 whytewolf okay then ntp.default_client ntp.default_pool ntp.default_server
02:07 aphor I think the whole point of a default is you don't have to configure it... convention over configuration.
02:07 cachedout I'm fourteen hours overdue for breakfast. aphor if you need anything else, drop me a line. mp@saltstack.com and I'm happy to help.
02:07 cachedout Have a good night everybody. :]
02:07 whytewolf have a good night cachedout
02:07 cachedout Thanks whytewolf
02:08 aphor thx!
02:08 whytewolf yes but ntp.enable to me just says enable the ntp it says nothing about it being configured in any kind of state
02:09 aphor enabling ntp without any servers is meaningless.
02:10 aphor When you check the box on an Ubuntu install that you want ntp, it sets up the ntpd to use ubuntu.pool.ntp.org
02:10 whytewolf I don't know about windows. but most linux ntp software comes built with defaults enough to start the application and connect to ntp pools
02:10 aphor That behavior is already conventional.
02:10 whytewolf check the box?
02:10 whytewolf what box. apt-get install ntp
02:10 whytewolf :P
02:10 Nahual joined #salt
02:10 whytewolf yum install chrony
02:11 aphor chrony wll get its own execution module.
02:11 whytewolf well yeah. but it should also be __virtual__ ntp
02:12 whytewolf it shouldn't matter what ntp software i am running
02:12 whytewolf as long as i type salt '*' ntp.setdate <ntpserver>
02:12 aphor I disagree. It behaves differently.
02:13 aphor Maybe this would work: the ntp module would proxy calls to w32tm or chrony or ntpd?
02:13 aphor ntpd and ntpdc..
02:13 whytewolf apt-get works differently then yum, by a wide margin. yet they both respond to pkg
02:14 whytewolf it isn't about them working differently it is about abstracting them to be the same
02:14 aphor whytewolf: only for the common functions.
02:15 whytewolf actually the exacution modules handle a lot more then common functions.
02:16 aphor whytewolf: some stuff will be exposed which only works on ntpd/ntpdc
02:16 whytewolf like what?
02:17 aphor inspecting the internal state of the peer list
02:17 whytewolf pretty sure that can be done in chronyc also
02:17 aphor forcing a resycn
02:20 aphor ok... chronyc has a lot of overlap with ntpdc.
02:20 whytewolf yeah
02:21 aphor which command nomenclature should be considered canonical for salt.modules.ntp ?
02:21 bdrung_work joined #salt
02:23 whytewolf i would say which ever fits the ntp protocol. [which most likely would be ntpd/ntpdc based as that was written by the ntp guys] I'm not saying use chronys names for things. just creating 4 different modules with 4 different __virtual__ names is not the right way to go about this. when you are just trying to clean up the ntp setup.
02:24 whytewolf I shouldn't care what salt.module.ntp module I am talking to. just that it knows what i am doing
02:25 aphor I think I steered myself in that direction under the impression that modules would not be reloadable in the middle of a switch from one to another, ergo needing both.
02:26 whytewolf understanable. the whole __virtual__ thing takes a ton of getting used to
02:26 aphor How about if there's already a conf file, and it already has servers, don't impose the salt default pool servers when doing state.ntp enable=True.
02:27 whytewolf I like that.
02:27 aphor But if there aren't any, use opinionated reasonable defaults because none is a corner case.
02:27 whytewolf although, maybe add an option to force salt defaults like defaults=true
02:27 aphor I like that.
02:28 aphor OK. I think I need to crank on the new code.
02:29 aphor Thx @whytewolf!
02:29 whytewolf alright, I need to head and get dinner.
02:29 mikecmpbll joined #salt
02:29 whytewolf no problem :)
02:30 DEger joined #salt
02:32 mansquab joined #salt
02:32 mansquab hey y'all I wanted to start writing a new formula for the Netdata project and was wondering which formula I should look at for ideas/patterns to follow
02:48 ilbot3 joined #salt
02:48 Topic for #salt is now Welcome to #salt! <+> Latest Versions: 2016.3.5, 2016.11.3 <+> Support: https://www.saltstack.com/support/ <+> Logs: http://irclog.perlgeek.de/salt/ <+> Paste: https://gist.github.com/ <+> See also: #salt-devel, #salt-offtopic <+> Ask with patience as we are volunteers and may not have immediate answers <+> Meet the Maintainers Friday, March 10th 3:00 PM MST https://goo.gl/pLv8Fz
02:52 sp0097 joined #salt
02:53 aphor https://github.com/saltstack-formulas/newrelic-formula
02:54 aphor https://github.com/saltstack-formulas/nagios-formula
02:55 aphor https://github.com/saltstackme/salt-rocks/tree/master/zenoss
02:56 whytewolf https://github.com/saltstack-formulas/template-formula
02:59 mansquab awesome, ty
03:08 nZac joined #salt
03:16 edrocks joined #salt
03:16 jas02 joined #salt
03:35 aphor Actually the ones I suggested *might* be examples of what *not* to do @mansquab
03:42 cachedout joined #salt
03:42 cachedou1 joined #salt
04:03 TheoSLC joined #salt
04:03 scoates joined #salt
04:03 nickabbey joined #salt
04:08 shoemonkey joined #salt
04:21 jimklo joined #salt
04:26 evle1 joined #salt
04:26 nZac joined #salt
04:28 jas02 joined #salt
04:34 Praematura joined #salt
04:46 nickabbey joined #salt
04:48 Praematura joined #salt
04:50 smcquay joined #salt
04:51 cachedout joined #salt
04:51 cachedou1 joined #salt
04:58 nZac joined #salt
05:20 rdas joined #salt
05:30 DEger joined #salt
05:41 preludedrew joined #salt
05:54 toabi joined #salt
05:56 justanotheruser joined #salt
05:59 nZac joined #salt
06:09 shoemonkey joined #salt
06:16 citaret joined #salt
06:17 jas02 joined #salt
06:36 mavhq joined #salt
06:43 bocaneri joined #salt
06:45 evle1 joined #salt
06:49 DEger joined #salt
06:51 lasseknudsen joined #salt
06:53 bocaneri joined #salt
06:58 colttt joined #salt
07:29 jas02 joined #salt
07:30 nineteen joined #salt
07:31 duncanmv joined #salt
07:37 DEger joined #salt
07:41 CrummyGummy joined #salt
07:45 fracklen joined #salt
07:49 ivanjaros joined #salt
07:52 BHauser joined #salt
07:54 c4rc4s joined #salt
07:55 aldevar joined #salt
07:58 riftman1 joined #salt
08:00 nZac joined #salt
08:01 candyman88 joined #salt
08:02 enginx joined #salt
08:03 enginx hi guys
08:03 enginx i have a problem when i use the consul as a pillar soruce
08:03 enginx source
08:03 enginx salt version: salt-master-2016.11.2
08:04 enginx i just want to read KV from consul in salt
08:04 enginx but it cannot read KV, and there is no any info or error messages in master log
08:04 jas02 joined #salt
08:05 jas02 joined #salt
08:05 enginx http://pastebin.com/6MNnE37C
08:05 enginx my config
08:06 enginx also i cannot read KV using consul token. That's ok because it cannot support as well yet, so i see it. However i cannot read KV without use a token
08:06 enginx anyone know why ?
08:07 enginx when i check the pillar data like this salt "target" pillar.items so i can't see the KV which is coming from consul servr
08:10 shoemonkey joined #salt
08:14 notArnold joined #salt
08:14 devtea joined #salt
08:14 notArnold hello fellow salt-stack users :)
08:15 notArnold does anyone know what the diffrence between setting a salt-master who gets access to certain minions or getting a salt-syndic ?
08:15 notArnold what does the salt-syndic provides me ?
08:17 AndreasLutro salt-syndic is for when you need to split your minions between multiple masters but still want to control them from a central location
08:17 candyman89 joined #salt
08:19 notArnold why not adding another master ? and just configure them at /etc/salt/minion to add him
08:19 notArnold like every minion have master1,2,3  and those special minions will have master,1,2,3,4.  what the difference between that and getting a salt-syndic?
08:20 AndreasLutro that's fine if you can remember which minions are on which master
08:20 notArnold yeah i guess so
08:20 edrocks joined #salt
08:20 notArnold thanks
08:20 AndreasLutro if you don't have a lot of minions without a clear separation it's going to get harder
08:20 AndreasLutro if you have a lot of minions without a clear separation it's going to get harder
08:20 AndreasLutro is what I meant
08:20 candyman89 joined #salt
08:21 notArnold does the salt-syndic has its own top.sls file ? where he can send states to his minions ?
08:22 notArnold like a master only for a little group of minions ?
08:22 AndreasLutro no, what salt-syndic does is fetch things like top.sls from the parent master and relay that to the local salt master
08:22 teclator joined #salt
08:23 notArnold i'll explain you our problem (maybe u could advise me what to do):
08:23 notArnold we have 3 salt-masters. and we have groups of programmers who develop their apps. we want each program team to write their own states and manage their servers(their minions)
08:24 notArnold so my question is : what is the best way to apply that ? to create salt-syndics or salt-masters ?
08:25 AndreasLutro in that case, entirely separate salt-masters sounds like the way to go
08:25 AndreasLutro you could still share things like states if you want, through gitfs and formulas
08:25 notArnold cool . thanks man
08:25 AndreasLutro so you don't have to copy-paste everything
08:26 jas02 Hello, what's the Salt best practice regarding accessing pillar variables within templates. It's preferable to access them directly {{ pillar['variable_name'] }} or indirectly through SLS file.managed: - context: variable_name: pillar['variable_name']?
08:29 notArnold Is it possible to install salt-master on windows ? (win srv 2012 for example)
08:30 babilen No
08:31 babilen jas02: Read https://docs.saltstack.com/en/latest/topics/best_practices.html - It's a matter of taste really, but I'd access them directly.
08:33 jas02 babilen: Thanks
08:36 dunz0r joined #salt
08:36 o1e9 joined #salt
08:37 mavhq joined #salt
08:39 darioleidi joined #salt
08:42 Rumbles joined #salt
08:48 Praematura joined #salt
08:49 ronnix joined #salt
08:49 DanyC joined #salt
09:01 starryeyed joined #salt
09:01 jimklo joined #salt
09:05 mikecmpbll joined #salt
09:08 skullone_ joined #salt
09:11 MTecknology Does anyone know where master.py makes minions do?
09:21 MTecknology man... this is some touch to digest source :(
09:24 Alaniaris joined #salt
09:32 Mattch joined #salt
09:32 s_kunk joined #salt
09:37 scristian joined #salt
09:45 babilen What's the nicest way to make pkg.installed states customisable? I was thinking along the lines of http://paste.debian.net/918710/ but there might be other nice ways
09:45 MTecknology I found it! :D
09:45 babilen I have some formulas where I'd like to install packages from a different repository, but that's just one of the applications I have in mind
09:46 babilen MTecknology: Well done
09:46 MTecknology babilen: I'm not understainding your goal
09:47 babilen MTecknology: I'd like to be able to define some pillar value that holds "additional settings" for a pkgrepo (or really: any) state
09:48 babilen In that users of that state could, for example, pass "fromrepo: foo-repo" or "sources: ..." easily
09:48 babilen (without having to touch the states themselves)
09:49 MTecknology just ah, I do something sorta like that.. I'd decide what you want the pillar data to look like first and see what fits well with thaht
09:49 MTecknology are batch_trigger_size and batch_trigger_threshold too long for option names?
09:49 MTecknology s/trigger/safe/?
09:50 MTecknology I like safe actually...
09:52 babilen They aren't too long, but I wouldn't immediately know what they are being used for
09:52 MTecknology sounds like you're trying to solve a problem that doesn't exist
09:53 MTecknology and hasn't yet been fully imagined
09:54 babilen You mean my question?
09:54 MTecknology ya
09:54 Mattch joined #salt
09:55 babilen Well, the problem is that I'd like to write a generic state that installs a package and that I'd like to be able to provide a "fromrepo: foo-repo" via pillar for *some* state applications
09:55 babilen Hence the idea to provide part of the state datastructure via pillars and just append it to the "basic" one
09:56 MTecknology that sounds like a recipe for things getting really messy really fast... devs should never be able to install whatever the crap they want
09:56 babilen That would allow users of that state/formula to easily change the states without having to fork them
09:56 MTecknology (it still fits here..)
09:56 Mattch joined #salt
09:56 MTecknology ohhh... formulas
09:57 babilen Well, lets make this more specific then: I'm using nginx-formula and would like to install nginx from jessie-backports on *some* boxes
09:57 MTecknology nevermind! formulas go against every grain of my being. Anything I say is gonna not work well with them.
09:57 babilen I'd still like to use the "normal" formula states without having to extend them
09:58 babilen I know that I'm probably derailing the discussion, but: What's wrong with them?
10:00 MTecknology I've gone on that rant in here a few times and I think you've been part of them before..
10:00 Mattch joined #salt
10:00 nZac joined #salt
10:01 babilen I must have suppressed the memories ;)
10:03 MTecknology babilen: can you look at _preview_target(self): around line 210 in salt/cli/salt.py?
10:03 jimklo joined #salt
10:03 babilen I guess ..
10:05 babilen Which branch?
10:05 MTecknology dev
10:05 MTecknology Does it seem wrong to you that salt is spitting data to the console there?
10:05 jagguli Hi whats the best way to deploy a salt master
10:06 MTecknology should not it instead rather be returning the data and letting the returned to routine decide what to do with it?
10:06 babilen jagguli: We are partial to using system administrators riding on the back of dragons (salt-cloud, salt-ssh, bootstrap.sh, ...)
10:07 babilen MTecknology: I see where you are coming from and probably would have expected something like that, but this is the "preview" function and might simply be used for providing output to the user
10:08 MTecknology I don't use salt-ssh and I wrote a custom bootstrap, but after that, I thought it was a very sexy process
10:08 Mattch joined #salt
10:08 MTecknology "salt-cloud -p do.sfo pubweb08.lustfield.net" and in 5 minutes I check it and add to DNS
10:08 jagguli well I'd prefer to teleport it in ... just need some coordinates
10:08 babilen jagguli: It really hinges on the environment you're working in already. Which methods for instance installation and customisation do you have?
10:09 jagguli my states are in git
10:09 jagguli i guess i could add my directory to salt_roots
10:09 jagguli then do further configs using the local minion
10:11 shoemonkey joined #salt
10:13 N-Mi joined #salt
10:13 N-Mi joined #salt
10:22 edrocks joined #salt
10:27 Joy joined #salt
10:28 Joy so, er, can someone make sense of the trace inside https://github.com/saltstack/salt/issues/39876 - what am i actually doing wrong?
10:28 saltstackbot [#39876][OPEN] sls parser throws confusingly chatty error output on trivial user syntax errors | Description of Issue/Question...
10:28 Joy i thought i had made a syntax error, but then i checked again and there doesn't seem to be one
10:28 Joy or at least it's sufficiently obscure to me
10:31 max42 I want to copy a file to the minion only if it exists on the master as salt://files/some_file_{{grains['host'}}. How do I check for existence of a file in the file backend?
10:46 babilen max42: cp.list_master
10:47 blue0ctober joined #salt
10:48 max42 babilen: will check it out, thanks
10:54 MTecknology Is it possible to specify 'batch' in the master config file and have it always apply that batch size to salt commands?
10:54 MTecknology is there any saltrc file?
10:58 Joy Saltfile ?
10:59 DanyC joined #salt
11:00 MTecknology I want something like /etc/saltrc that can be overridden by ~/.saltrc
11:00 MTecknology or maybe not overwritten..
11:00 DanyC joined #salt
11:05 jimklo joined #salt
11:09 impi joined #salt
11:09 MTecknology Do these two new options sound sane to anyone interested?  https://github.com/saltstack/salt/compare/develop...MTecknology:develop
11:10 masber joined #salt
11:11 amcorreia joined #salt
11:12 MTecknology also.. good night everyone!
11:15 DanyC joined #salt
11:18 catpig joined #salt
11:23 netcho joined #salt
11:33 Joy so, another question. i want to add a /home filesystem, but if i'm doing it for the first time, with copying the old /home/* into it... how do i compose this into salt states the canonical way?
11:36 abednarik joined #salt
11:36 AndreasLutro write a shell script that does it, call it with cmd.script
11:36 Joy egad, i was hoping i could actually avoid doing that
11:36 AndreasLutro why?
11:36 Joy because the whole point of switching to CM was to have everything neat and tidy? :)
11:36 Joy i'm rewriting my shell provisioning into salt syntax
11:37 AndreasLutro if you think salt states are automatically more "neat and tidy" than a shell script you've got a very extreme view
11:37 AndreasLutro the right tool for the right job
11:39 Joy at least i can hook it with onchanges right?
11:39 Joy so i get the idempotency at least
11:39 netcho hi all, i have a question regarding salt-cloud profiles (AWS). Is there a way to import data from pillar or something into profiles. For example i need a profile for the same machine in 3 environments, everything is the same except instance type and subnet
11:39 AndreasLutro sure, though I'd probably use onlyif/unless instead to check if /home is its own partition already or not
11:40 netcho i don't like having 3 profiles with only 1 or two lines changed
11:40 AndreasLutro netcho: iirc there is a way for profiles to "extend" eachother, so you can create an abstract profile with common properties
11:41 netcho hm, sounds good going back to docs :)
11:42 Joy can i group two calls in yaml into a single unless?
11:45 impi joined #salt
11:46 netcho AndreasLutro: yep, found it ... thanks :)
12:01 nZac joined #salt
12:06 jimklo joined #salt
12:08 nZac joined #salt
12:12 shoemonkey joined #salt
12:12 valkyr2e joined #salt
12:14 ronnix joined #salt
12:24 sriman joined #salt
12:25 sriman hi, how to use source attribute in file.managed??
12:25 sriman i placed like "- source: salt://sshfile/testmaster"
12:25 sriman but where exactly the file should exists?
12:25 Norrland left #salt
12:27 sriman i have a file in my home directory and i want to replace the file on agent node with this file
12:27 sriman how can i do this?
12:27 sriman can anyone help me
12:36 PhilA_ sriman, in your sshfile directory
12:37 PhilA_ In salt base dir
12:39 sriman salt base directory means, /srv/salt
12:39 sriman or /etc/salt
12:39 sriman ?
12:39 sriman i'm very much confused
12:41 tampakrap left #salt
12:47 toastedpenguin joined #salt
12:49 mansquab joined #salt
12:49 BHauser sriman: it wil look for the directory "sshfile" in the directories that you've listed in your salt-master configuration /etc/salt/master. Look at section "file_roots"
12:50 BHauser for example at my location it would look for: /srv/salt/sshfile/testmaster
12:50 BHauser (on the salt master that is)
12:52 sriman BHauser: thanks a lot, i'm using salt-ssh
12:53 sriman i mentioned a c0onfig dir in my roster file
12:53 sriman i'm done with this
12:53 BHauser Ah sorry, i have no experience with salt-ssh.
12:53 sriman PhilA: thanks for ur help
12:53 sriman BHauser: No worries, thanks a lot
12:57 ronnix joined #salt
12:59 Miouge joined #salt
13:00 numkem joined #salt
13:01 nickadam joined #salt
13:08 jimklo joined #salt
13:17 abednarik joined #salt
13:24 edrocks joined #salt
13:37 TheoSLC joined #salt
13:44 Joy how come this doesn't work
13:44 Joy temp disable /var-using services:
13:44 Joy service.dead:
13:44 Joy - name:
13:44 Joy - rsyslog
13:44 Joy - cron
13:44 Joy service doesn't operate on lists?
13:46 edrocks joined #salt
13:47 shoemonkey joined #salt
13:49 CrummyGummy joined #salt
13:57 gableroux joined #salt
14:03 sgo_ joined #salt
14:06 mavhq joined #salt
14:10 jimklo joined #salt
14:11 jken joined #salt
14:15 ssplatt joined #salt
14:24 dyasny joined #salt
14:25 dendazen joined #salt
14:27 TheoSLC joined #salt
14:33 racooper joined #salt
14:37 abednarik joined #salt
14:49 netcho joined #salt
14:50 impi joined #salt
14:50 nickabbey joined #salt
14:57 ksk Hey, I have added a map.jinja where I hold a list of IPs I want inside a config file via jinja template - right now it does put a list like "['element1','element2']" (like python style) in that config-file. How would I make it put just the list (like "element1, element2") in there? thanks!
14:58 vegasq joined #salt
15:02 mpanetta joined #salt
15:03 mpanetta joined #salt
15:05 dps joined #salt
15:09 _JZ_ joined #salt
15:11 jimklo joined #salt
15:11 jas02 joined #salt
15:12 TheoSLC joined #salt
15:15 ravenx joined #salt
15:15 ravenx what's the deal with using s3fs
15:16 ravenx no matter what i set in the s3.location
15:16 ravenx i keep getting this:
15:16 ravenx AuthorizationHeaderMalformed: The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'us-west-1'
15:16 ravenx it's drivign me up the wall
15:16 ravenx anyone else experience with?
15:16 squig joined #salt
15:17 squig hi, I am wondering what specified the node name of a salt-minion, some of my nodes have a fqdn name and some dont
15:17 squig I have a heap of crazy different minion versions and I am trying to bring every thing in line
15:21 sarcasticadmin joined #salt
15:22 jas02 joined #salt
15:22 ivanjaros joined #salt
15:22 tapoxi joined #salt
15:24 jagguli hi I cant get salt-ssh to execute with sudo
15:24 raspado joined #salt
15:25 jagguli i have sudo:True and sudo_user set in roster
15:31 nickabbey joined #salt
15:31 Tanta joined #salt
15:31 DEger joined #salt
15:57 netcho joined #salt
16:03 Brew joined #salt
16:08 tiwula joined #salt
16:09 lompik joined #salt
16:14 mpanetta_ joined #salt
16:17 cscf jagguli, are you using NOPASSWD sudo?
16:19 dyasny joined #salt
16:24 edrocks joined #salt
16:25 oms101 joined #salt
16:26 cachedout joined #salt
16:26 jimklo joined #salt
16:27 DammitJim joined #salt
16:33 rlatimore joined #salt
16:34 nZac joined #salt
16:40 nickabbey joined #salt
16:52 GMAzrael joined #salt
16:53 GMAzrael Playing with the Firefox Repo-ng for Windows, and I am getting Conflicting ID 'install_flags' outside of my loop. Any ideas?
16:56 swills joined #salt
16:56 nickabbey joined #salt
16:58 leonkatz joined #salt
16:59 abednarik joined #salt
17:02 aldevar left #salt
17:02 jas02 joined #salt
17:06 shoemonkey joined #salt
17:07 impi joined #salt
17:15 sh123124213 joined #salt
17:18 sh123124213 joined #salt
17:18 bltmiller joined #salt
17:21 gtmanfred GMAzrael: what does your state look like?
17:21 gtmanfred probably need to add information in your loop to the stateid
17:22 GMAzrael http://pastebin.com/FVMtCEja
17:22 GMAzrael wouldnt think adding 64bit Firefox was that difficult
17:23 leonkatz joined #salt
17:24 gtmanfred can you paste to gist.github.com?
17:24 gtmanfred pastebin.com uses flash for ads, and i prefer not to use that
17:28 nickabbey joined #salt
17:29 gtmanfred GMAzrael: ^^
17:31 jas02 joined #salt
17:33 fxhp joined #salt
17:38 nZac joined #salt
17:39 mpanetta joined #salt
17:40 dps joined #salt
17:42 rick_ joined #salt
17:43 mpanetta_ joined #salt
17:45 duncanmv joined #salt
17:49 mpanetta joined #salt
17:52 PatrolDoom joined #salt
17:53 leonkatz joined #salt
17:54 edrocks joined #salt
17:55 GMAzrael gtmanfred: https://gist.github.com/mercsniper/f5384c9b1f0fb78c19d0929b28420672
17:56 Edgan joined #salt
17:57 nickabbey joined #salt
18:00 mpanetta_ joined #salt
18:02 johnkeates joined #salt
18:05 ronnix joined #salt
18:08 gtmanfred GMAzrael: if you indent all the extra stuff to be in line with the definitions does it work?
18:08 gtmanfred I left a comment on the gist
18:09 GMAzrael so if I shove everything over after the install flags minus the endfor it compains about "while parsing a block mapping in "<unicode string>"
18:11 fyb3r joined #salt
18:13 gtmanfred can you try https://gist.github.com/gtmanfred/32b2a86fe7b3f853b5bd9438d1964635 ?
18:14 av_ joined #salt
18:14 dps joined #salt
18:16 GMAzrael gtmanfred: comment left
18:17 gtmanfred hrm, that is really odd
18:18 GMAzrael right?
18:19 gtmanfred GMAzrael: updated, try that one, i changed the spacing
18:20 DanyC joined #salt
18:20 GMAzrael think I got it
18:20 g3cko joined #salt
18:20 GMAzrael was doing 2x+1 spaces instead of just 2x
18:21 gtmanfred yaml is weird
18:22 fyb3r yeah it can be. you could always just pop into a python shell and use the yaml module to try importing your file to see if the layout is correct
18:22 gtmanfred https://www.json2yaml.com
18:23 fracklen joined #salt
18:23 Inveracity joined #salt
18:25 s_kunk joined #salt
18:25 s_kunk joined #salt
18:32 GMAzrael problem is online convertors don't like the jinja parts
18:32 gtmanfred GMAzrael: i use cp.get_template...
18:32 gtmanfred salt-call cp.get_template salt://this.sls /test template=jinja
18:32 gtmanfred to render the jinja
18:32 gtmanfred and then dump it into yaml converters
18:37 dober joined #salt
18:37 dober joined #salt
18:40 mpanetta joined #salt
18:43 SaucyElf joined #salt
18:50 tapoxi client.cmd_iter('web*', 'pkg.install', pkgs=['pkga', 'pkgb'])
18:50 austin__ joined #salt
18:50 tapoxi this the proper syntax or have I got it all wrong?
18:50 mpanetta_ joined #salt
18:51 austin__ regarding versions. can the minion have a later version then the master or is it the other way around
18:51 tapoxi austin__: other way around
18:51 austin__ tapoxi: thanks
18:52 gtmanfred austin__: https://docs.saltstack.com/en/latest/faq.html#can-i-run-different-versions-of-salt-on-my-master-and-minion
18:52 tapoxi austin__: a newer master can break connectivity in rare instances, hasn't happened to me. I use salt-ssh as a fallback if something breaks when I upgrade alt
18:52 SaucyElf joined #salt
18:52 tapoxi *salt
18:53 sh123124213 joined #salt
18:53 austin__ gtmanfred: yea that is what i was looking for. thanks
18:53 gtmanfred tapoxi: i believe that you have to do client.cmd_iter('web*', 'pkg.install', kwarg={'pkgs': ['pkga', 'pkgb']})
18:53 gtmanfred austin__: :D
18:53 austin__ my plan was to upgrade my MoMs first and move down to my syndics and finally minions
18:54 austin__ (although syndic minions would be upgraded while syndics are upgraded)
18:54 gtmanfred that should work
18:54 gtmanfred also, i use salt-ssh to update salt packages
18:54 gtmanfred especially the new cache roster in develop
18:54 gtmanfred which can look up minion ip and stuff in the grains cache
18:54 gtmanfred so you don't have to use /etc/salt/roster
18:55 fyb3r As long as you do not have any 2015.X trying to communicate to 2016.X, for some reason the 2016.X versions are not backward compatible with the 2015.x
18:56 gtmanfred i believe it is a bug in 2015.5.2 or something super old
18:56 gtmanfred the deafult version in ubuntu is too old
18:56 gtmanfred or was not backwards compatible with it
18:56 gtmanfred but was fixed in a future release
18:57 austin__ gtmanfred: stuff in the grains cache ?
18:58 gtmanfred the ip addresses of minions
18:58 Miouge joined #salt
18:58 gtmanfred https://docs.saltstack.com/en/develop/ref/roster/all/salt.roster.cache.html#module-salt.roster.cache
18:59 gtmanfred can also use mine data if you prefer
19:00 austin__ yea i need to wrap my head around "mine data"
19:00 austin__ something i just haven't had a chance to dive into yet
19:00 austin__ too much stuff :)
19:03 aldevar joined #salt
19:03 mikecmpbll joined #salt
19:07 shoemonkey joined #salt
19:08 gtmanfred tapoxi: did you try client.cmd_iter('web*', 'pkg.install', kwarg={'pkgs': ['pkga', 'pkgb']}) ?
19:10 DanyC joined #salt
19:13 DanyC joined #salt
19:15 jas02 joined #salt
19:17 snarfy^ joined #salt
19:18 snarfy^ left #salt
19:19 Guest42583 joined #salt
19:25 leonkatz joined #salt
19:26 cyborg-one joined #salt
19:26 nickabbey joined #salt
19:28 yuhl______ joined #salt
19:28 cscf Is there a way to log that it was Salt system.reboot that caused a reboot, on the minion?  I log interactive shutdowns through molly-guard already
19:29 mpanetta joined #salt
19:33 gtmanfred it might be logged in /var/log/salt/minion, but we should allow for specifying the message sent to wall on a reboot being issued.
19:36 mpanetta joined #salt
19:36 DammitJim joined #salt
19:45 jas02 joined #salt
19:47 sp0097 joined #salt
19:48 sp0097 left #salt
19:49 nickabbey joined #salt
19:50 beachmang joined #salt
19:51 nickabbey joined #salt
19:51 beachmang hey mangs, I gotta strange one here. I created a helper module for sending slack messages (it pulls pillar data for channel/api key) but when I execute against the minion running on my master server, the pillar data is always null. Works just fine on all other minions.
19:53 gtmanfred Sounds like the minion on the master is not targeted correctly in the top.sls
19:53 nickabbe_ joined #salt
19:54 beachmang I can pull the pillar data on that minion fine using the pillar module
19:55 beachmang pillar.get slack:channels:{{ env }}:system-activity
19:56 mpanetta joined #salt
19:56 beachmang I suppose I can go through that more... I don't see why it will access that pillar pulling directly verses when pulling during a cross-called module
19:56 cachedout joined #salt
20:02 mpanetta_ joined #salt
20:06 gtmanfred hrm, that is odd
20:06 gtmanfred are you pulling the pillar information in the module.py file?
20:07 gtmanfred and when you are checking on the minion, are you checking with pillar.get or pillar.items?
20:08 mpanetta joined #salt
20:19 jas02 joined #salt
20:26 mpanetta_ joined #salt
20:31 fracklen joined #salt
20:32 twork_ joined #salt
20:32 jas02 joined #salt
20:35 mpanetta joined #salt
20:36 beachmang pillar.get
20:37 gtmanfred are you using __pillar__ in the module or __salt__['pillar.get'] ?
20:37 beachmang def send_slack_message(message):     env = __salt__['grains.get']('env')     channel = __salt__['pillar.get']('slack:channels:{0}:system-activity'.format(env))     log.info("Sending message to {0}".format(channel))     __salt__['slack.post_message'](         channel="{0}".format(channel),         message="{0}".format(message),         from_name=__salt__['grains.get']('host'),         api_key= __salt__['pillar.get']('slack:api_key'))
20:37 jauz joined #salt
20:38 gtmanfred odd, yeah then IDK
20:38 beachmang poo
20:38 gtmanfred i would recommend checking out config.get
20:38 gtmanfred instead of pillar.get, works the same, but future proofs for changes in configs
20:40 Miouge joined #salt
20:41 beachmang okay, just ran config.get (hadn't used that before) nice and generic. I'll give that a shot and see.
20:41 beachmang I'm assuming no change as it's probably using the same code as pillar, but we'll see
20:42 gtmanfred probably
20:42 gtmanfred i don't expect a change
20:42 gtmanfred more of just an FYI this exists
20:44 KingJ joined #salt
20:45 beachmang gotcha
20:46 dps joined #salt
20:47 leonkatz joined #salt
20:49 Acade joined #salt
20:50 jauz What's the difference between editing configs in master or master.d in /etc/salt?
20:51 gtmanfred nothing
20:51 gtmanfred master.d is loaded in a specific order, and i think can overwrite variables in earlier files
20:51 iggy in master.d will tend to fight less with your package manager
20:57 dps_ joined #salt
20:58 scoates joined #salt
21:00 jauz Thank you.
21:07 gtmanfred Edgan: fyi https://github.com/saltstack/salt/pull/39904
21:07 saltstackbot [#39904][OPEN] Move stuff to make it available for salt-ssh | What does this PR do?...
21:08 gtmanfred fixes the issue with listen on salt-ssh
21:08 shoemonkey joined #salt
21:12 arif-ali joined #salt
21:19 gmoro joined #salt
21:24 eprice joined #salt
21:24 TyrfingMjolnir joined #salt
21:25 abednarik joined #salt
21:26 ry joined #salt
21:26 netcho joined #salt
21:29 Edgan gtmanfred: Nice :)
21:29 Edgan gtmanfred: thanks
21:29 mpanetta_ joined #salt
21:33 jfive joined #salt
21:33 pidydx joined #salt
21:34 jfive I have a question about formulas. I cloned this https://github.com/jackscott/golang-formula formula into /srv/formulas.
21:34 gtmanfred the best way to use formulas is using gitfs
21:34 jfive Can I then do something like ```salt '*' state.apply golang
21:34 jfive ``` ?
21:34 gtmanfred https://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#adding-a-formula-as-a-gitfs-remote
21:34 gtmanfred you should be able to just do salt '*' state.apply golang
21:34 jfive @gtmanfred, yea I haven't gone down the route of installing all the dependencies for gitfs yet, I will once I work through this
21:35 gtmanfred jfive: you might configure the golang version in the pillars with https://github.com/jackscott/golang-formula/blob/master/pillar.example
21:35 gtmanfred but other than that, looks like you should just be able to run it
21:35 jfive @gtmanfred, ya I did that as well. Interesting. Ty
21:35 pidydx @gtmanfred: Is the gitfs thing the preferred way to manage salt state stuff in a CI/CD fashion?
21:36 gtmanfred pidydx: using an external fileserver is the way I would recommend it, because it allows for multiple people to manage it.  But it is not necessary
21:36 jas02 joined #salt
21:37 pidydx As in, setting things up so changes to pillars/states/etc can be stored in github/gitlab type setup and available on merge to master of each piece rather than having to git clone down to a salt master
21:37 gtmanfred yeah, that is how i like to do it
21:37 netcho hi all, having issues when using subnetname and securitygroupname in salt-cloud profile for AWS, when i set the by ID it's ok but when i set names it reates minion in a wrong VPC and does not apply correct sec groups nor it installs minion on it
21:38 netcho s/reates/creates
21:38 djgerm ooh CI/CD talk in here: I was looking for some bread crumbs to get some CI/CD in our environment…. are there white papers or use cases published out there at the moment I can read up on?
21:40 pidydx gtmanfred: Is there a way to do that with states/pillars or is it better to write all your states as formulas, store them in gitlab, add them as gitfs remotes, and then manage pillars separately?
21:41 gtmanfred pidydx: one second, lemme see if I can find you a video from last saltconf
21:43 babilen I quite enjoyed reading https://groups.google.com/forum/#!topic/salt-users/VqYjdlWsNHU -- Good points in there that need to be addressed. I don't quite understand why we don't have a more easily managed formula/state repo such as galaxy yet.
21:43 jauz Galaxy for Salt would be fantastic.
21:43 babilen But, I guess, there'll be a lot more Ansible in my life due to k8s kargo
21:44 gtmanfred pidydx: djgerm https://youtu.be/8-3FBy1mP74
21:44 djgerm what is Galaxy?
21:44 gtmanfred jauz: galaxy is a mess
21:44 gtmanfred babilen: we are working on getting up some spm repos for salt
21:44 babilen djgerm: State/Playbook collection for Ansible that makes it easy to "upload" your states. It also comes with a CLI tool that allows you to "enable" them easily with a single command
21:45 gtmanfred but the reason we don't have something like galaxy is this https://twitter.com/jpmens/status/831214347611422722
21:45 gtmanfred we are working on hooking the saltstack-formulas stuff up to a server so that spm can directly use that
21:46 babilen gtmanfred: I honestly think that anything centralised in the sense that a single group of people has to do all the work is doomed. What salt needs is a central repo, with tooling, that allows users to upload their states and maintain them there (as a group). Could be easily done as a frontend to GitHub/Gitlab/... so that we don't have to do deal with users/authentication
21:47 babilen The trick is "easy to support", "easy to use" (i.e. tooling to work with it 'salt-formula enable babilen/openssh' or similar) and non centrally maintained
21:47 jauz Yeah, a compromise between brain-share and hundreds of clones doing slightly different versions of the same thing.
21:47 gtmanfred yeah
21:47 gtmanfred that is what we are working on
21:47 babilen Good
21:47 gtmanfred the first step was getting spm and multiple versions working
21:48 gtmanfred but in the end, you could setup your own frontend for your formulas, and setup multiple spm repositories
21:48 whytewolf jauz: hundreds of clones doing slightly different versions of the same thing but none of them actualy accomplishing something that works for everyone
21:48 gtmanfred babilen: http://i.imgur.com/55DhGEM.png
21:49 babilen gtmanfred: Absolutely -- The point of galaxy is, much like pypy, that it is easy to use while still being a centralised place
21:50 babilen I actually think that pypy is a good inspiration
21:50 hemebond Do you mean pypi?
21:50 gtmanfred babilen: joseph is using the the web frontend of the archlinux AUR
21:51 babilen hemebond: Yeah, I do
21:51 babilen Man
21:51 babilen I am referring to the cheese shop
21:51 gtmanfred heh
21:52 mpanetta joined #salt
21:52 babilen I also think that salt should sell the idea of "awesome message bus" a bit more. It is one of the unique selling points and *really* powerful.
21:53 whytewolf honestly one of the things needed before a front end or maybe at the same time... standards for formulas.
21:53 gtmanfred that is what the sales team talks about a lot from what I understand
21:55 babilen The other thing that I really miss are 1. Tools like linters and 2. Being able to define/work with all boxes that are currently targeted. Given that salt works on multiple minions it is way too hard to express things like "run this command on one box, and these on the others (I don't care which)"
21:56 whytewolf a random target within set would be nice
21:56 babilen Yeah, exactly
21:56 gtmanfred yeah, i ran into that problem when setting up gluster
21:57 gtmanfred babilen: you can do that from the commandline
21:57 babilen Just some "meta states" that work on the "target set of minions" -- Things like random actions on k minions, run_on_one, ...
21:57 gtmanfred --subset 1
21:57 gtmanfred but yeah i get the point
21:57 whytewolf it is needed for almost all cluster type software as you need to start one server with a speciel command and everything after that is normal
21:58 gtmanfred would it be useful to have subset: be able to be used from state.orchestrate?
21:58 netcho can it be done with orchestrator>
21:58 babilen gtmanfred: It's just that it is sometimes surprisingly hard to define inter-minion "things". Salt could, for example, work in "dumb mode" and just automatically gather updated grains in the mine for all targeted minions" and make them easily accessible
21:59 babilen These are things that are quite easy in Ansible
21:59 whytewolf gtmanfred: i believe so.
21:59 whytewolf netcho: right now subset can't be used inside orchestration
21:59 gtmanfred i will add that to my list, to try and get in this month for nitrogen
21:59 babilen I mean things like: "Listen to the event bus and react to them" are really hard (hehe) in Ansible, but many people don't need that
22:01 Tanta joined #salt
22:02 whytewolf netcho: with teh way orchestration works now you have to pick a server before hand. instead of saying any one of these servers
22:02 cachedout joined #salt
22:02 gableroux joined #salt
22:02 whytewolf makes things like percona a royal pain
22:03 netcho oh so you mean something like pick 3 out of 10, random?
22:03 whytewolf yeah
22:03 netcho hm
22:03 whytewolf which is what --subset allows on the cli. but you can't "currently" call subset from orch
22:03 netcho gotcha
22:03 gtmanfred but i am going to try and add in a minute
22:03 Praematura joined #salt
22:04 beachmang joined #salt
22:05 whytewolf one of my biggest wish list items would be a mine for files
22:07 pidydx gtmanfred: Thanks!
22:09 netcho i would love to see (maybe it exists already) salt-key filtering/sorting
22:09 netcho autocomplete for example also
22:10 whytewolf well salt-key does accept wildcards.
22:10 gtmanfred salt-key -Ay
22:10 gtmanfred !next!
22:10 netcho yeah i grep and stuf
22:10 whytewolf ....
22:11 whytewolf accept everything :P
22:11 whytewolf since i generally push keys instead of accept keys i don't do much with salt-key
22:12 whytewolf except --gen-keys
22:12 netcho example: salt my_min[tab] shows my_min* and i can select which one :)
22:12 netcho like cd/ls in zsh
22:12 netcho :)
22:12 whytewolf bash compleation
22:12 netcho yes
22:13 whytewolf actually that wouldn't be bad. although with people with thousands of servers that would be problematic
22:13 whytewolf bash compleation tends to have issues with large datasets
22:13 netcho true
22:14 babilen gtmanfred: Thanks for listening to my random ramblings, but I think that salt would be in a much better place with 1. Grassroot formula hub 2. Linters/.../ 3. A basic setup for "beginners" 4. Ways to more easily define actions on/work with all boxes in the current "target group"
22:14 netcho linter +1
22:14 babilen whytewolf: Yeah, but many people don't have thousand of servers
22:15 gtmanfred i agree with the linter
22:15 whytewolf babilen: avg is at least 1000+
22:15 gtmanfred babilen: have you seen the beginner tutorials here? https://docs.saltstack.com/en/latest/
22:15 gtmanfred they are seperate from the docs stuff
22:15 babilen yeah, so we need to conquer the 1-50 bracket also! :)
22:15 babilen gtmanfred: They are great
22:15 gtmanfred https://docs.saltstack.com/en/getstarted/config/
22:16 netcho docs are fine
22:16 netcho they can be confusing at som point but..
22:16 babilen I was more thinking of a "well made bed" with an (opinionated and simple) setup that addresses most of the 1-100 server guys problems
22:16 whytewolf gtmanfred: we could always move my debug.render into the main system. it technically acks kind of like a jinja linter
22:16 gtmanfred that would be nice, I personally use cp.get_template
22:16 netcho yep i use yml linter if there is no jinja ... in those 2 states i have :D
22:17 whytewolf cp.get_template is nice. although having to actually get to the system to get the file makes it a pain sometimes
22:17 babilen Sorry .. bbl
22:18 whytewolf i did try and find an actual jinja lint. and all i found was a 12 line python file that did rendering and spit out the errors
22:24 netcho can anyone maybe know from the top of his/her head why is this not working for me
22:24 netcho https://hastebin.com/ukakilusir.pl
22:25 ahrs joined #salt
22:25 netcho it does not work with subnet and secgrp names
22:25 mpanetta_ joined #salt
22:26 netcho with ids it works
22:26 netcho for some reason it does not detect VPC when setting the subnet-name
22:27 jfive @gtmanfred, couldn't get it to work when in /srv/formulas, but using gitfs worked without a problem.
22:29 mpanetta joined #salt
22:33 llua netcho: salt-key, salt and a few others already has minion completion in zsh
22:38 mpanetta_ joined #salt
22:40 gtmanfred jfive:it should go in /srv/salt/<formula>
22:41 jfive @gtmanfred, I over-rode the location in the master config to /srv/formula, but either way it's working now. Git is better
22:44 Trauma joined #salt
22:45 netcho i have another silly question ... i would like to have my /etc/salt/master.d/* and /etc/salt/cloud* in repo with my states and pillars
22:45 netcho what would be the best way to do that?
22:45 jfive change the locations of those references in the /etc/salt/master file so they are in your repo
22:46 jfive not sure if that's the *best way* but I think it's a *way*
22:46 jas02 joined #salt
22:46 jholtom symlink them in
22:46 jholtom put them in in a git submodule
22:47 netcho i was just about to write if symlink would be the most elegant solution
22:51 pg208327e netcho: file.symlink or "ln -s"?
22:52 jfive Can anyone spot check this? When I apply this state, I get a "The following requisites were not found:
22:52 jfive require:
22:52 jfive pkg: users"
22:52 jfive whoops, sorry about that
22:52 jfive http://kopy.io/r7mqC
22:53 jfive However if I apply the users state direction via 'salt * state.apply users' it works
22:53 gtmanfred netcho: i wish there was, i do a symlink
22:53 pguinardco users is not a package under the require
22:53 jfive is not not? at line 15?
22:54 jfive s/not not/it not/g
22:55 johny_ joined #salt
22:55 gtmanfred jfive: why do you have - require: twice?
22:55 jfive double the trouble? I tried a list but it gave an error, so I was trying various methods to see what the issue is
22:56 gtmanfred where is your users: pkg state?
22:56 pguinardco Shouldn't it be require: users without the pkg
22:56 whytewolf also. do you have a state that is called users that installs a package?
22:56 gtmanfred you could do sls: users
22:56 whytewolf sls: users would be better
22:56 jfive I am using the linked users formula
22:57 whytewolf - pkg: referse to a state with pkg.installed or pkg.latest
22:57 whytewolf s/refurse/refers
22:57 whytewolf or pretty much any pkg.*
22:58 jfive so how do I make sure that the users formula has run first?
22:58 jfive if it doesn't install a pkg to detect
22:58 jfive or does the initial include insure that?
22:58 whytewolf sls: users
22:58 nZac joined #salt
22:59 patrek joined #salt
22:59 jfive Thanks
22:59 johny_ Hi everyone. Does anyone here know anything about the Thorium reactor? I'm trying to use its very basic example of cleaning up dead minions (https://docs.saltstack.com/en/latest/topics/thorium/index.html) but every time either the master or the minion is restarted, after a short time the minion is rejected because "Minion id <id> is not who it says it is!"... I'm using version 2016.11.3
23:01 johny_ This basically happens soon after the AES communication key is rotated
23:03 netcho bed  time, see you all tomorrow
23:05 whytewolf jfive: although yes the include actualy should ensure that. as it will force the states to run
23:05 whytewolf the require will just make sure there are no errors
23:06 leonkatz joined #salt
23:06 jfive @whytewolf, ya I removed the requires actually, since it didn't need to do anything at that point. Thanks
23:06 KingJ joined #salt
23:08 shoemonkey joined #salt
23:16 jauz joined #salt
23:22 Brew left #salt
23:46 Pulp joined #salt
23:49 eprice left #salt
23:51 gtmanfred whytewolf: https://github.com/saltstack/salt/pull/39911
23:51 saltstackbot [#39911][OPEN] [WIP] add subset to orchestrate | What does this PR do?...
23:51 gtmanfred babilen: ^^
23:52 * whytewolf gives a thumbs up
23:57 jas02 joined #salt

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