Perl 6 - the future is here, just unevenly distributed

IRC log for #salt, 2016-09-09

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

All times shown according to UTC.

Time Nick Message
00:12 sjmh joined #salt
00:22 onlyanegg aphor: that naming convention makes more sense. I felt something was wrong, but couldn't put my finger on a good solution.
00:24 onlyanegg The problem with refering to a single file in the onchanges requisite is that I have several systemd service files, and I don't want to have to maintain this list of them
00:24 onlyanegg I want to run systemctl daemon-reload whenever any file within that directory changes
00:25 pipps joined #salt
00:25 onlyanegg I see examples of this kind of behavior online for the watch requisite, but not for onchanges
00:25 onlyanegg Are these implemented differently?
00:26 onlyanegg The problem with watch is that, afaik, it doesn't control the execution of the state that it's defined in
00:27 aphor watch states will run no matter what, but watch forces the ordering to follow the watched states.
00:34 LiamMon_ joined #salt
00:39 LiamMon joined #salt
00:41 flowstate joined #salt
00:46 sparticl joined #salt
00:46 binocvlar joined #salt
00:47 pipps joined #salt
00:48 badon joined #salt
00:53 pipps joined #salt
00:54 jimklo joined #salt
00:55 ssplatt joined #salt
00:56 XenophonF whee fixing the broken p5-GSSAPI package and rebuilding/updating git fixed the bug i was encountering with git.latest
00:57 badon joined #salt
01:03 edrocks joined #salt
01:05 ageorgop joined #salt
01:06 sparticl joined #salt
01:07 pipps99 joined #salt
01:13 catpigger joined #salt
01:13 sp0097 joined #salt
01:14 sparticl joined #salt
01:20 pipps joined #salt
01:24 k_sze[work] joined #salt
01:24 whitenoise joined #salt
01:32 nicksloan joined #salt
01:33 pipps joined #salt
01:33 pppingme joined #salt
01:40 flowstate joined #salt
01:46 pipps joined #salt
01:48 ilbot3 joined #salt
01:48 Topic for #salt is now Welcome to #salt! | Latest Versions: 2015.8.12, 2016.3.3 | Support: https://www.saltstack.com/support/ | Logs: http://irclog.perlgeek.de/salt/ | Paste: https://gist.github.com/ (please don't multiline paste into channel) | See also: #salt-devel, #salt-offtopic | Ask with patience as we are volunteers and may not have immediate answers
01:52 pipps joined #salt
02:01 jimklo joined #salt
02:07 mpanetta_ joined #salt
02:07 bastiandg joined #salt
02:19 sjmh joined #salt
02:28 badon joined #salt
02:29 jimklo joined #salt
02:31 systo joined #salt
02:38 PerilousApricot joined #salt
02:39 flowstate joined #salt
02:41 netcho joined #salt
02:44 sp0097 left #salt
02:48 teryx510 joined #salt
02:48 sparticl joined #salt
03:03 ageorgop joined #salt
03:05 edrocks joined #salt
03:14 sjmh joined #salt
03:20 sjmh joined #salt
03:33 tuxx joined #salt
03:35 stanchan joined #salt
03:37 DEger joined #salt
03:40 flowstate joined #salt
03:41 CronoM joined #salt
03:41 CronoM left #salt
03:45 lompik joined #salt
03:48 daishan left #salt
03:59 sparticl joined #salt
04:08 pipps joined #salt
04:10 pipps99 joined #salt
04:12 mavhq joined #salt
04:24 jimklo joined #salt
04:26 jimklo_ joined #salt
04:30 amy_ joined #salt
04:36 krymzon joined #salt
04:40 flowstate joined #salt
04:41 perfectsine joined #salt
04:41 netcho joined #salt
04:47 perfectsine_ joined #salt
04:50 pipps joined #salt
04:52 iknownothing joined #salt
04:53 _JZ_ joined #salt
04:56 onlyanegg joined #salt
04:58 sparticl joined #salt
04:58 kshlm joined #salt
05:03 netcho joined #salt
05:03 ivanjaros joined #salt
05:08 edrocks joined #salt
05:14 impi joined #salt
05:14 sparticl joined #salt
05:18 pfc joined #salt
05:20 John_Kang joined #salt
05:21 pipps joined #salt
05:21 sparticl joined #salt
05:22 justan0theruser joined #salt
05:30 netcho joined #salt
05:34 ekristen joined #salt
05:34 bocaneri joined #salt
05:38 krymzon joined #salt
05:40 flowstate joined #salt
05:43 nidr0x joined #salt
06:05 Rumbles joined #salt
06:06 cyborg-one joined #salt
06:23 ivanjaros joined #salt
06:26 jxm_ joined #salt
06:28 pipps joined #salt
06:36 yuhlw_ joined #salt
06:37 ttrumm joined #salt
06:39 ttrumm joined #salt
06:40 flowstate joined #salt
06:44 ttrumm joined #salt
06:52 ekristen joined #salt
07:00 DEger joined #salt
07:01 ninjada_ joined #salt
07:10 edrocks joined #salt
07:11 ttrumm joined #salt
07:20 ttrumm joined #salt
07:21 jhauser joined #salt
07:28 ttrumm joined #salt
07:28 Romlok joined #salt
07:29 Romlok left #salt
07:30 ttrumm_ joined #salt
07:32 PakoJuan joined #salt
07:33 PakoJuan hello, i'm starting to use salt-cloud tyo deploy VMs in a VMWARE environment
07:33 JohnnyRun joined #salt
07:33 PakoJuan I can deploy VMs
07:33 PakoJuan but i don't know howto change a running VM
07:34 PakoJuan for instance, add a second disk, or add a network interface
07:34 PakoJuan do you have some example ?
07:34 badon joined #salt
07:34 lero joined #salt
07:34 PakoJuan it's possible ?
07:40 flowstate joined #salt
07:41 akunin joined #salt
07:47 ronnix joined #salt
07:54 Finlander joined #salt
07:55 geomacy joined #salt
07:58 keimlink joined #salt
07:59 johnkeates joined #salt
08:09 phx joined #salt
08:15 Rumbles joined #salt
08:20 impi joined #salt
08:21 lero joined #salt
08:23 coredumb joined #salt
08:23 coredumb morning
08:23 Reverend coredumb - sup
08:24 coredumb Got a question about non supported package manager
08:24 MadHatter42 joined #salt
08:24 * Reverend is clueless atm - not the best person to ask
08:24 Reverend also - I'm working on IIS this morning and I'm already about to kill someone. sooooo. yeah.
08:24 coredumb Seems like I should get there https://github.com/saltstack/salt/tree/develop/salt/modules and code a new support for it
08:25 Reverend what package manager are you wanting to use though, out of interest?
08:26 coredumb apk
08:26 coredumb package manager of Alpine Linux
08:27 N-Mi joined #salt
08:27 N-Mi joined #salt
08:29 CeBe joined #salt
08:29 LostSoul Hi
08:29 LostSoul Strange issue here :)
08:30 LostSoul I've got something like this: http://paste.debian.net/hidden/a727f335/ and salt always gives me:
08:30 LostSoul Comment: Service bacula-fd is already enabled, and is dead
08:30 LostSoul And it's returned as an error
08:30 LostSoul Any idea how to approach this?
08:30 pipps joined #salt
08:34 johnkeates joined #salt
08:38 ivanjaros joined #salt
08:39 flowstate joined #salt
08:41 krymzon joined #salt
08:42 ivanjaros3916 joined #salt
08:53 fredvd joined #salt
08:53 ivanjaros joined #salt
08:55 fannet joined #salt
09:04 teryx510 joined #salt
09:05 ttrumm joined #salt
09:09 teryx510 joined #salt
09:10 teryx510 joined #salt
09:13 edrocks joined #salt
09:31 MadHatter42 joined #salt
09:35 AirOnSkin joined #salt
09:39 flowstate joined #salt
09:49 AirOnSkin Hey folks. What module (config_set / latest / present) from the salt.states.git state should I use to reproduce the following command in Salt: git clone -b dev ssh://repo@phabricator.ourdomain.ch/diffusion/CFGMGMT/saltstack-cfgmgmt.git .
09:49 AirOnSkin Anyone got experience with that?
09:58 PerilousApricot joined #salt
10:04 DEger joined #salt
10:09 DEger joined #salt
10:16 hemebond joined #salt
10:18 DEger joined #salt
10:20 perfectsine joined #salt
10:22 PakoJuan nobody can help me ?
10:22 hemebond PakoJuan: What's the problem?
10:22 PakoJuan hi
10:23 PakoJuan i'm using salt-cloud to deploy a VM under vmware environment
10:23 PakoJuan it's possible to add (for instance) a nic or disk when the VM is running ?
10:23 DEger joined #salt
10:23 PakoJuan i need to change vm settings over the time
10:24 PakoJuan but i don't know if it's possible to do that with salt
10:26 hemebond Mmm.
10:27 hemebond Is it vpshere?
10:28 hemebond What are your vmware VMs running on?
10:29 hemebond PakoJuan: ?
10:30 PakoJuan yes is vmware
10:30 PakoJuan vsphere
10:30 PakoJuan i want add a disk is needed or a network interface, or change disk spaces
10:30 PakoJuan the typical operations
10:34 hemebond Have you used ESXi Shell?
10:35 PakoJuan yes
10:35 hemebond Well there is this execution module https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.vsphere.html#salt.modules.vsphere.esxcli_cmd that allows running commands through ESXi.
10:36 PakoJuan well, it's a bit more complicated
10:36 PakoJuan imagine that you have a big cluster
10:36 PakoJuan where do you run the command ?
10:36 PakoJuan where is running the VM ?
10:37 hemebond You would have to add the vsphere host as a minion, yes.
10:37 hemebond Or...
10:37 PakoJuan could be a solution but
10:37 hemebond Another machine that can run the ESXi commands.
10:37 hemebond vmware VMs can't add disks to themselves so you have to do it from a host.
10:37 PakoJuan ok, you solved my doubt
10:37 hemebond ????
10:37 PakoJuan salt-cloud cannot reconfigure the vm
10:38 PakoJuan just create or delete
10:38 jhauser joined #salt
10:38 hemebond salt-cloud is mostly for provisioning.
10:38 PakoJuan yes i know, but i can do it with ansible for instance
10:38 flowstate joined #salt
10:39 PakoJuan by the way, salt is faster provisioning
10:39 hemebond Do what? Modify the VMs?
10:39 hemebond How does it do that?
10:39 PakoJuan yes
10:39 hemebond It looks like the EC2 cloud module can modify VMs/instances.
10:39 PakoJuan if you reapply the playbook the vm gets the new parameters
10:39 PakoJuan yes, but my environment is not aws
10:39 hemebond So it appears to just be a current limitation of the vsphere cloud module.
10:39 PakoJuan sure
10:40 PakoJuan it's vsphere cloud module
10:40 PakoJuan i just want to be sure, i,'ve searched a lot in google, git etc... and didn't find the way to go
10:40 PakoJuan i'm thankfully for your responses
10:40 hemebond Okay. Right now it seems you can't directly modify the VMs via Salt, no.
10:40 hemebond One day, maybe :-)
10:41 PakoJuan cool, thanks for all
10:41 hemebond Good luck :-)
10:41 ttrumm_ joined #salt
10:42 hemebond Oh, be sure to have a look through the open issues regarding vmware/vsphere to make sure there are no big bugs that might bite you in the butt.
10:47 ninjada joined #salt
10:55 rubenb joined #salt
10:56 rubenb Hi, wondering why 'salt pillar.item x' renders different output from 'salt-call pillar.item x' (I have modified the pillar files, and the salt-call command displays the correct info)
11:15 edrocks joined #salt
11:17 bastiandg joined #salt
11:17 fleaz joined #salt
11:17 roock joined #salt
11:17 PerilousApricot joined #salt
11:20 AirOnSkin How do I clone a specific Git branch (and only that one) with salt.state.git into a directory? I don't want to checkout the whole repo and checkout into the branch. I could do a cmd.run with git clone -b dev ssh://repo@phabricator.ourdomain.ch/diffusion/CFGMGMT/saltstack-cfgmgmt.git /srv/salt/dev ... but I'd like to use states if possible...
11:20 AirOnSkin * I don't want to clone the whole repo ...
11:21 orgaizer joined #salt
11:21 amcorreia joined #salt
11:23 buxy joined #salt
11:23 buxy Hey, I wonder if it's possible to schedule a salt.orchestrate call on the master.
11:24 DEger joined #salt
11:24 buxy I could use cron to execute "salt-run salt.orchestrate" on the master but I wonder if it's possible to do that entirely within salt itself with the schedule facility.
11:26 sparticl joined #salt
11:30 DEger joined #salt
11:32 ninjada joined #salt
11:33 hemebond rubenb: Do you mean the values are different?
11:43 DEger joined #salt
11:46 orgaizer Hey, I am working in an operations team in a company which is NOT connected to the global network at all.
11:47 orgaizer We are lookin for the best solution for windows repository with saltstack
11:47 orgaizer What is your recommendation? salt.winrepo/choco/something else?
11:57 west575_ joined #salt
12:00 hemebond orgaizer: Are you a Windows house?
12:06 orgaizer hemebond: Well I didnt understand your question but maybe it will help: My masters are Ubuntu 16.04 servers, we have about 7k minions to be added (We started this week the salt project). Most of out minions are Windows Server 2012R2 standart 64bit, others are Ubuntu and centos.
12:06 orgaizer Did I help somehow?
12:07 hemebond So you'll be deploying Windows packages to Windows Server servers?
12:07 orgaizer yea
12:07 hemebond Well, I've not used the new winrepo stuff. but I gather it's working well now. I have used Choco with Salt and found it okay.
12:08 hemebond Probably want to use winrepo.
12:08 hemebond Assuming the Windows Server 2012 servers are standalone (not on a domain).
12:08 orgaizer they are in a domain
12:09 hemebond Oh they are? Well, for Windows domains I would recommend Windows tools like Group Policy.
12:09 hemebond To deploy software.
12:09 hemebond But that's a different management process.
12:10 deus_ex joined #salt
12:10 AndrewPashkin joined #salt
12:11 orgaizer Well we are looking for a solution to config management. For example, creating a Windows web server in one click (so we will write a state which installs iis, .net, visual studio and etc..)
12:12 mirko joined #salt
12:17 ferbla joined #salt
12:22 mage_ in an orchestration how can I get the minion id of the "caller" ?
12:24 DEger joined #salt
12:27 ssplatt joined #salt
12:28 geomacy joined #salt
12:31 edrocks joined #salt
12:32 XenophonF orgaizer: i've been working on windows-related stuff for my own needs
12:33 XenophonF orgaizer: here's my work on active directory - https://github.com/irtnog/active-directory-formula
12:34 XenophonF to be honest salt has pretty poor support for windows
12:34 XenophonF but i'm not sure other tools are any better
12:34 hemebond GPMC makes it easy.
12:35 XenophonF group policy is definitely the right tool for things like configuring audit settings or windows update or the firewall
12:35 XenophonF but you can't really use it to do things like deploy a replica domain controller
12:35 XenophonF or stand up a sharepoint farm
12:36 XenophonF so anyway, right now my primary config management needs are active directory domain services, active directory federation services, and sharepoint services
12:36 XenophonF my first take on AD DS is up in that github repo
12:36 XenophonF and amounts to a wrapper around DCPROMO or the various *ADDS* PowerShell cmdlets
12:37 MadHatter42 joined #salt
12:37 numkem joined #salt
12:39 ronnix joined #salt
12:39 numkem joined #salt
12:40 XenophonF AD FS and SharePoint are much more complicated
12:41 XenophonF well, AD DS, too
12:42 XenophonF to really handle these deployments correctly requires orchestration
12:42 XenophonF as well as interfacing with the various powershell management apis
12:43 gh34 joined #salt
12:44 XenophonF orgaizer: to get back to your question about IIS, you can start simple and just script your web server deployments using PowerShell, and then kick that off from Salt using cmd.run
12:45 XenophonF anything more complex will require extending Salt, which while not difficult still requires some effort
12:46 XenophonF i like to cheat - this is a wrapper I wrote for the AD FS PowerShell cmdlets
12:46 XenophonF https://github.com/irtnog/active-directory-formula/blob/master/_modules/identityserver_sts.py
12:47 XenophonF you could use a similar technique to quickly wrap all of the IIS-related cmdlets with Python functions, and then home them in an execution module
12:47 lovecraftian joined #salt
12:58 subsignal joined #salt
13:00 teryx510 joined #salt
13:00 orgaizer well hoped to find out that there is a better support for windows :(
13:00 orgaizer probably salt is yet young for it
13:00 orgaizer we will check other CM tools's (chef/puupet) support for windows
13:01 orgaizer maybe will fit us more
13:01 hemebond Probably not that many devops out there using Windows and able to contribute back.
13:03 nicksloan joined #salt
13:03 drybjed joined #salt
13:19 lionel joined #salt
13:25 orgaizer Yea you are correct. Hate Windows
13:26 coredumb Am I blind or is the only way to a update a package with salt is to run pkg.upgrade ?
13:27 coredumb oh yeah ok I see
13:27 coredumb it depends on the pkg module
13:30 racooper joined #salt
13:32 Reverend Windows server is basically windows 10, butchered to BADLY fit a server OS.\
13:32 Reverend 'please reboot after installation'.... say whut?
13:33 Reverend is that a thing? my ecom boxes have been up for nearly 900 days....
13:35 SpX joined #salt
13:38 ivanjaros Hi. I am an Ansible user but I am setting up server where Salt is used to do some basic stuff with minions because I didn't liked the SSH approach for this cae. So )I will be running Salt from Ansible :D anyway I have a JSON file with configuration where each entry means that on each minion a certain file structure has to exist and certian file with certain content has to be present. I want to fetch this config with ansible and
13:38 ivanjaros provide it to Salt as argument but I haven't found cli argument to do so. How would I go about it?
13:42 cyborg-one joined #salt
13:46 SpX joined #salt
13:53 tvinson ivanjaros: you're kicking this off via ansible because you want ssh? have you looked at salt-ssh?
13:53 sp0097 joined #salt
13:53 ivanjaros no, I do NOT want ssh. the ansible playbook will be executed locally
13:54 ivanjaros actually it will be nodejs -> ansible -> salt :D
13:54 ivanjaros i like ansible playbooks but i also like salt speed
13:54 Brew joined #salt
13:55 ivanjaros and salt handling its oen encryption keys
13:55 ivanjaros *own
13:55 cscf I found Ansible's way of specifying hostnames in the playbook, rather than calling states from a top file, backwards and unintuitive.
13:56 tvinson ivanjaros: i feel like this is more of an ansible question and i don't have enough familiarity there to suggest something reasonable
13:56 cscf tvinson, he said he wants to be able to pass a config as an arg to salt, it's a salt questio n
13:58 catpig joined #salt
13:58 Tanta joined #salt
13:58 aphor You can pass pillars to salt on the command line.
13:58 DEger joined #salt
13:59 ivanjaros basically i have queue and i fetch messages from it in nodejs worker. this worker executes ansible playbooks. one of the scenarios is that i have webservers where i have multitenant app and i need to redistribute configuration for tenant(s) which consists of configuraiton file(db login and stuff) and basic directories for files(like client/123/files)
13:59 tvinson ivanjaros: is the json document that you're talking about passing into salt a set of keyword arguments for file.managed or similar?
13:59 ivanjaros i am using salt because fiddling with ssh in autoscaled setup is pita and i tihnk in the future it can help in some case if something needs to be done manually
14:00 ekristen joined #salt
14:00 tvinson an important note is that passing pillar data is not safe for multitenant. all nodes can see the pillar data.
14:00 ivanjaros tvinson: currently it is sinple string key -> string value json
14:00 ivanjaros *simple
14:00 ivanjaros tvinson: that's fine
14:01 ivanjaros an example - imagine 100 webservers(minions) where each has to have /var/www/client/config.json file on it
14:02 ivanjaros i guess a better approach will be to store the file locally where salt can read it and pass it to minions
14:05 tvinson ivanjaros: either approach might be ok, but i think you need to do the thing you want to do in salt and work backward from there.
14:05 pipps joined #salt
14:06 Kelsar joined #salt
14:07 Reverend all I hear when we talk about asnible is "blasphemy" over and over.
14:07 * Reverend burns the heretic
14:08 DEger joined #salt
14:08 Aikar joined #salt
14:08 mpanetta joined #salt
14:09 Aikar Hi, when salt is doing things on the box, is there a way to make it print feedback as the processes are running (namely: for like when using cmd.run apt-get upgrade -y) instead of buffering it all and sending when done?
14:10 babilen ivanjaros: Might it be an option to simply push something into git (used via GitFS from salt) from Ansible and then kick of a (high)state ?
14:10 ivanjaros Reverend: i dont know about that. i use ansible because its more intuitive(to me) and it doesnt use fancy labels for basic stuff like grains, formulas or pillars or whatever :d
14:10 ivanjaros babilen: nope, this wont be in git
14:11 tvinson ivanjaros: when i've built similar integrations to what i think you're doing i had the web backend storing documents inside redis that salt was using as an external pillar, and also calling salt-api.
14:12 ivanjaros tvinson: sounds similar. i have data in CMS that i am exporting as json respons and fetching them as such
14:13 DEger joined #salt
14:14 tvinson Aikar: when using salt-call? -l debug
14:14 Aikar salt 'id' state.sls <state> for this specific case
14:14 fredrick joined #salt
14:15 Aikar will -l debug work for that too?
14:15 tvinson Aikar: that wouldn't get published back to the master
14:16 whitenoise joined #salt
14:17 tvinson or i should say you'd see some debug messages about the job being published -- but you wouldn't get debug messages from the minion
14:17 Aikar so its not possible to flush output back to master as it runs the commands
14:17 Aikar im not directly meaning debug, but the command output that normally prints when done
14:18 tvinson Aikar: if there is i'm not familiar with it
14:24 flowstate joined #salt
14:25 bowhunter joined #salt
14:25 bluenemo joined #salt
14:27 Reverend ivanjaros - I'm just fucking with you :)
14:29 edrocks joined #salt
14:30 Kelsar joined #salt
14:31 sparticl joined #salt
14:32 DammitJim joined #salt
14:35 XenophonF joined #salt
14:38 tapoxi joined #salt
14:48 flowstate joined #salt
14:48 nlf84075 joined #salt
14:50 flowstate joined #salt
14:51 armonge joined #salt
14:52 west575__ joined #salt
15:00 _JZ_ joined #salt
15:03 DEger joined #salt
15:07 ecdhe If we're talking about terminology, I rememeber that it took me about two weeks to get past the terminology in chef -- salt was quite refreshing after that.
15:09 doublemetres joined #salt
15:10 DEger joined #salt
15:14 aranhoide joined #salt
15:18 Reverend ecdhe - I am a born and bred puppeteer. Unfortunately that didn't serve me well in salt. But you get the hang of it pretty quickly after working with other provisioners.
15:18 onlyanegg joined #salt
15:18 Reverend It's just everything is so complicated with puppet... it's like 20 lines just to get a bloody file somewhere.
15:19 flowstate joined #salt
15:20 aranhoide if I want to select named IPs when creating a VPS in Google Compute Engine, IIUC I need to pass the external_ip name in the profile?
15:20 aranhoide does that mean I need to somehow create a different profile per VPS I launch?
15:20 aranhoide or is there a way to override profile fields when launching VPSs?
15:20 pipps joined #salt
15:21 aranhoide (this is what I'm talking about: https://docs.saltstack.com/en/latest/topics/cloud/gce.html#external-ip)
15:21 brewdente joined #salt
15:21 beowuff joined #salt
15:22 brewdente hey, what's the best place to get salt support?  Is this it?
15:23 flowstate joined #salt
15:25 babilen brewdente: Support for what?
15:25 brewdente salt minion <-> master connectivity issues in Boron
15:26 brewdente i've looked everywhere for the last day and i'm stumped
15:27 ecdhe Reverend, if you include your minion file, top.sls, and put-a-file-somewhere.sls, isn't it about 20 lines in salt for a hello-world,-put-a-file-somewhere?
15:29 JohnnyRun joined #salt
15:31 flowstate joined #salt
15:32 flowstate joined #salt
15:36 nicksloan joined #salt
15:38 bluenemo hi guys. How do I call a salt module that I placed in /srv/salt/_modules/mycollection/foo.py that contains a function called bar() ?  salt 'minion' mycollection.fo.bar does not work :(
15:39 ivanjaros joined #salt
15:42 raspado joined #salt
15:43 XenophonF bluenemo: your file is nested too deep
15:43 XenophonF put foo.py in /srv/salt/_modules
15:43 XenophonF sall it via salt['foo.bar'](...)
15:44 bluenemo XenophonF, we just found out that it actually is working - we forgot saltutil.sync_modules x)
15:44 XenophonF ah good
15:44 XenophonF glad i'm wrong about the nesting!
15:48 bluenemo yeah me too :D
15:50 fredrick joined #salt
15:51 pipps joined #salt
15:52 DEger joined #salt
15:53 ageorgop joined #salt
15:55 amcorreia joined #salt
16:00 ninjada joined #salt
16:00 nidr0x joined #salt
16:05 vieira joined #salt
16:06 vieira Hello, network.routes in debian is not working correctly I thing
16:06 vieira it just generates a executable sh script with the routes and puts it in if-up.d
16:07 vieira that file will get executed each time an interface comes up
16:08 vieira the first time it works, but the others will fail with SIOCADDRT: File exists
16:08 vieira and the networking service will go to a failed state
16:11 jimklo joined #salt
16:14 sjmh joined #salt
16:19 orgaizer
16:20 zer0def quick question: is there a way to pass an arg specifying an outputter to the `saltmod.state` state module while running the orchestration runner?
16:23 zer0def i see that saltmod.state takes a list of returners, which then asks the question of "how would i configure a local returner to use a particular output module?"
16:28 pipps joined #salt
16:39 nicksloan joined #salt
16:44 edrocks joined #salt
16:52 bhosmer_ joined #salt
17:04 aranhoide joined #salt
17:07 impi joined #salt
17:08 sjmh joined #salt
17:09 flowstate joined #salt
17:10 ALLmightySPIFF joined #salt
17:12 pipps joined #salt
17:19 KyleG joined #salt
17:19 KyleG joined #salt
17:23 iggy uhh, when did nesting modules start working? I know it didn't a year ago (I tried to nest some stuff I wrote for the postgres formula)
17:24 KyleG by nesting do you mean something like:
17:24 KyleG cmd:
17:24 KyleG package.installed:
17:24 KyleG service.running:
17:24 KyleG bla bla
17:24 iggy that's states
17:24 iggy more like what bluenemo and XenophonF were discussing
17:24 ninjada joined #salt
17:25 iggy (i.e. salt '*' collection.module.function)
17:26 iggy states would be nice too... ID:\n  mysql.user.exists:\n    - name: foo
17:27 iggy it has always bugged me writing mysql_user.exists
17:32 sparticl joined #salt
17:39 west575_ joined #salt
17:40 ageorgop joined #salt
17:45 flowstate joined #salt
17:46 plup joined #salt
17:47 ALLmightySPIFF joined #salt
17:49 pipps joined #salt
17:49 iggy doesn't seem to work for me
17:50 iggy I'll have to see if bluenemo did anything special next time I see them around
17:51 pipps joined #salt
17:54 cprior I am confused about the proxy minion examples: When the examples define the function ping() in e.g. /srv/salt/_proxy/rest_sample.py , why is that function called with salt 'rest_sample' test.ping ??? (I added a log call to verify)
17:55 cprior I am trying to define my really own functions, but cannot get them to work. I also tried to overwrite file.file_exists without success
17:56 pipps joined #salt
18:00 bhosmer_ joined #salt
18:01 pipps joined #salt
18:05 cprior Ah, it seems that /usr/lib/python2.7/dist-packages/salt/utils/lazy.py is involved...
18:08 pipps joined #salt
18:08 oeuftete joined #salt
18:09 dendazen joined #salt
18:12 ALLmight_ joined #salt
18:13 subsignal joined #salt
18:14 plup Hi guys ! I would like an advice about the best pratices for what I'm trying to do : I have 2 apps ('django1' & 'django2') on the same minion. I have one state 'django' for all these apps and I want to trigger deployment of 'django1' with something like 'salt minion state.apply apps.django1.
18:16 plup But 'django1' and 'django2' are just a set of parameters for the 'django' state and not a state by themself.
18:16 impi joined #salt
18:17 tapoxi joined #salt
18:17 mrueg joined #salt
18:18 plup If I put those parameters in pillar, I could do 'salt minion apps.django' but how can I tell that I want to deploy with the 'django1' set of parameters ?
18:18 plup Any ideas are welcome !
18:21 iggy salt minion apps.django pillar="{'app': 'django1'}"
18:21 iggy or something similar
18:24 fredvd joined #salt
18:27 scoates joined #salt
18:28 plup ok, and I would have a dictionnary in pillar with all my parameters for djangoX apps ?
18:29 iggy well, you could pull from the pillar based on that app arg or you could put the whole pillar config on the command line (not suggested)
18:30 plup Yes, I guess your first proposal is the way to.
18:30 plup Yes, I guess your first proposal is the way to go.
18:31 plup Yeah, it definetly make sense. Thanks iggy !
18:38 iggy really though, if you have a module that's doing this (you wrote apps.django, not state.sls apps.django), you can just use module args instead of passing in pillar
18:39 tapoxi joined #salt
18:45 ALLmightySPIFF joined #salt
18:48 amy joined #salt
18:58 nidr0x joined #salt
19:07 nonades joined #salt
19:12 west575_ joined #salt
19:12 flowstate joined #salt
19:15 flowstate joined #salt
19:16 silicon_id joined #salt
19:16 hasues joined #salt
19:16 hasues left #salt
19:17 fl33t joined #salt
19:17 fl33t joined #salt
19:25 cyborg-one joined #salt
19:26 amcorreia joined #salt
19:27 sparticl joined #salt
19:30 fl33t We are having a lively discussion in my office about the implementation convention for saltstack.
19:30 fl33t Specifically, state-ful vs transformational
19:30 fl33t One side is arguing for a high state based approach, where changes are placed in the pillars or states on the master and high state is run to move the systems between up configuration to maintenance configuration.
19:30 fl33t The other side is arguing for an orphan maintenance mode state which transforms a set of system from some configuration to some other configuration. You would run the orphan state against the target set you wish to transform in this manner.
19:30 fl33t any input on advantages or disadvantages of each approach?
19:31 Rumbles joined #salt
19:33 whytewolf personally i perfer not having to remove things. it can always bea pain and you are never sure if you removed everything. would be one of the ways i perfer a state-ful approch
19:33 iggy not following the second bibt
19:34 Sketch iggy: me either, but i definitely prefer the stateful approach ;)
19:34 iggy but we just rebuild everything when we think it's in such bad shape that a highstate is not safe (if that's what you're getting at... as I said, not clear)
19:35 whytewolf since saltstack is mostly geared more towards cloud thinking. transforming a system seems kind of redundent. in cloud you typically delete old and start fresh
19:35 sp0097 joined #salt
19:36 iggy we use it extensively on bare metal... we have systems that have been up for months and definitely aren't "ephemeral"
19:36 iggy but we do have a lot of cattle too
19:36 iggy so I think it fits in both situations
19:37 Sketch iggy: same here.  you could equate a fresh reinstall with cobbler or similar to starting fresh in the cloud, though.
19:37 whytewolf agreed. when i mean delete and restart would in bare metel the same as nuke and pave
19:37 GreatSnoopy joined #salt
19:38 Sketch we have created states for removing SOME things.  but not everything, just things that we know we may move around.
19:39 iggy yeah, I was just saying a lot of places don't have that mindset (or ability) yet to think of _everything_ as cattle
19:39 gnord joined #salt
19:39 whytewolf I have created remaval states when i was developing some things. as a way to speed up my development
19:39 iggy salt still works for pets in addition to cattle
19:39 Tanta what if it's a DB server iggy
19:39 Tanta any machine that involves stateful data is a challenge with salt
19:40 iggy I wouldn't say it's a challenge with salt
19:40 Tanta I autoscaled everything except my mongodb cluster
19:41 Tanta couldn't find a smooth way to make it automated without some higher level services like service discovery
19:42 Tanta it's also easier to keep the state consistent on servers, as only 3 people have remote logins for them and one of those is me
19:43 fl33t Basically, we are placing the systems into maintenance mode while we perform maintenance and upgrade code. We use the same maintenance mode to take down the service when it breaks.
19:44 fl33t We argued over whether high state represents the current state or whether high state represents the server operating normally (not in maintenance mode)
19:45 whytewolf i use highstate in schedule as a way to keep the system as it should be. and orchestrate/exacution modules as a way of changing systems. adding things and what not.
19:46 perfectsine joined #salt
19:46 whytewolf but that is just me
19:49 fl33t @whytewolf what would changing a system entail?
19:51 whytewolf fl33t: changing grains, upgrading software. installing new software.
19:53 whytewolf also changing repos
19:54 fl33t @whytewolf interesting, so there are no software versions in your pillars?
19:54 whytewolf none
19:55 whytewolf which should be fine if you controll the repo you are grabbing from
19:55 fl33t @whytewolf it is interesting, not sure how we would do that here
19:56 west575__ joined #salt
19:57 whytewolf well like i said it is me. this is my own personal setup not a company. I use salt to build and controll an openstack cluster
20:02 sparticl joined #salt
20:13 adelcast left #salt
20:13 adelcast joined #salt
20:13 drawsmcgraw joined #salt
20:16 aphor logically, state.highstate means "converge the current and intended states"
20:22 jimklo joined #salt
20:24 sp0097 joined #salt
20:25 chainey joined #salt
20:26 jimklo joined #salt
20:27 fl33t joined #salt
20:27 PerilousApricot joined #salt
20:29 ajw0100 joined #salt
20:33 RandyT howdy stackers
20:34 RandyT can someone tell me what the preferred git_pillar_provider is these days?
20:34 RandyT running into problems with pygit2 not being accepted on my centos master
20:39 iggy considering there wasn't an option other than gitpython until the most recent version of salt, I'm not sure there's a "preferred" option
20:42 tapoxi joined #salt
20:42 jholtom RandyT: I still use pygit2
20:43 RandyT just giving dulwich a try which seems to get pillar working again
20:43 RandyT centos has some lagging support for things like cffi which holds back pygit2
20:44 dendazen joined #salt
20:44 jholtom yeah, I had to backport packages in debian for it
20:44 iggy yeah, that's why int he salt formula I added supprt to build that stuff
20:44 iggy from source
20:44 RandyT good idea. I should probably revisit that approach...
20:45 edrocks joined #salt
20:48 twork_ so... situation we've run into a few times now: field in an account gets changed (GECOS has been the frequent culprit so far, but, others have come up); salt, rather the 'users' formula, sees this as a new account with entries that conflict with an existing one, and calls it an error.
20:49 twork_ is there any way to tell salt "change something from last time?
20:49 jenastar joined #salt
20:52 iggy that's not declarative
20:53 twork_ yeah, that's what i was suspecting
20:54 iggy are you specifying things for that field and then changing them outside of salt?
20:55 iggy because that's never going to end well
20:55 twork_ no
20:55 iggy either manage that data all in salt or all out of salt
20:56 twork_ well maybe yes... we're changing an entry in the pillar, is that "outside salt"?
20:56 flowstate joined #salt
20:56 iggy I think I'd have to see an example, but that doesn't sound right
20:56 tapoxi joined #salt
20:57 twork_ huh.  seemed straightforward enough, but ok, i'll write up a mail.
20:57 twork_ thanks
20:58 whytewolf nothing is ever as straightforward as one thinks. examples always shine lights
20:58 LiamMon joined #salt
21:01 iggy yeah, a gist would work
21:01 iggy I wasn't asking for an autobiography, just some code snippets
21:03 pipps joined #salt
21:08 flowstate joined #salt
21:10 Salander27 joined #salt
21:11 sparticl joined #salt
21:18 ajw0100 joined #salt
21:27 ninjada joined #salt
21:39 pwhack joined #salt
21:44 drawsmcgraw joined #salt
21:45 pwhack are grains states available to 'require' in other states, like cmd and file are? (https://docs.saltstack.com/en/latest/ref/states/all/salt.states.grains.html) i have a custom grain that gets set by a java install state. a second state adds certs to the java keystore. right now the keystore state kills highstate because the grain isn't set yet. attempts to add 'include java; require: -grains: java_home' in the keystore state don't seem to make
21:45 pwhack any difference.
21:46 RickLee joined #salt
21:47 lero joined #salt
21:49 hasues joined #salt
21:49 hasues left #salt
21:49 * MajObviousman would also like to know this
21:51 hemebond How are you setting the grain?
21:52 pwhack "set_grains:
21:52 pwhack grains.present:
21:52 pwhack - name: java_real_home
21:52 pwhack - value: {{ java.java_real_home }}"
21:52 pwhack (at top of state)          {%- from 'sun-java/settings.sls' import java with context %}
21:52 hemebond - requires:
21:52 hemebond - grains: set_grains
21:52 hemebond ?
21:53 pwhack yup, that's what i have in my keystore state. doesn't make a difference (keystore state still says grain doesn't exist). also doesn't throw error about syntax so it's at least plausible
21:54 hemebond Oh, you listed "-grains: java_home"
21:54 hemebond So you've tried both then.
21:54 pwhack btw, all i did was add that "set_grains" block to the stock saltstack sun-java formula (https://github.com/saltstack-formulas/sun-java-formula)
21:55 pwhack ah, yes, sorry, my example was trying to be simple so i called it java_home but when i copied and pasted the block, that's the actual name. the keystore state does actually say it requires set_grains. i thought i was making this easier but failed. sorry for confusion.
21:55 pwhack i'll create a gist file with the blocks to clear up the mud
21:55 hemebond And where are you trying to require this?
21:55 hemebond Outside of that formula?
22:00 pwhack http://pastebin.com/0KwEUAER
22:00 pwhack yes, outside the formula in another state. that pastebin snippet has full blocks and a little more clarification
22:01 hemebond Hmm. I wonder if you're just hitting a type of race condition here.
22:02 aphor +1 race condition
22:02 hemebond You're setting a grain in at the same time you're trying to use it. Grains are sent to the master periodically.
22:03 hemebond I would import sun-java/settings.sls and use the Jinja variable.
22:03 pwhack would something like a sync grains after setting help? if not, what's the best practice way to do something like this (still kinda new here)?
22:03 aphor First Jinja does template substitutions, then the rendered Yaml is rendered to objects.
22:03 pwhack ah, import its settings, that'd work
22:04 onlyanegg Can I pass a pillar to salt-run state.orchestrate on the command line?
22:04 hemebond What aphor said. Jinja has already done its work before Salt state processing starts.
22:05 aphor you need two state runs
22:05 aphor or... don't use grains for communication between states.
22:07 pwhack @aphor so is the general best way to communicate between states to have one import data from another? (as opposed to using grains?)
22:07 hemebond I prefer pillars.
22:08 hemebond But I didn't know if you had pillars for this already.
22:08 aphor pwhack: can you know before you start all the state runs in any order what the value of java_home should be?
22:08 onlyanegg I want to pass a yaml file with deployment information (eg. version numbers, etc.) to a generic deploy script.
22:08 aphor onlyanegg: pillar command line argument
22:10 pwhack @aphor: yes, the sun-java formula does have some reasonable defaults in that settings file. the pillar data the formula looks for, sadly, does not include something like destination folder (aka java_real_home), that's internal to the formula and its settings. sort of wish that was able to be set via pillar so both formula and state would get the data from pillar. maybe i'll put in a pull request to the formula.
22:10 aphor pwhack: all of the states should really be one big slab of internally consistent assertions that can be evaluated in one shot.
22:12 aphor pwhack: do they have a map.jinja you can import?
22:12 ninjada joined #salt
22:12 pwhack @aphor: i think the settings file is basically doing the same thing as they typically-named map.jinja:    https://github.com/saltstack-formulas/sun-java-formula/blob/master/sun-java/settings.sls
22:13 onlyanegg aphor: can I pass a file that way? I'm getting 'Pillar data must be formatted as a dictionary'
22:13 subsignal joined #salt
22:13 pwhack i guess really two pull requests are needing for the sun-java formula: 1) add keystore entry handling (check in my state with some more general handling), and 2) allow destination to be specified by pillar.
22:16 justanotheruser joined #salt
22:19 dendazen joined #salt
22:19 viq joined #salt
22:25 ninjada joined #salt
22:35 NightMonkey joined #salt
22:42 sparticl joined #salt
22:51 Kelsar joined #salt
22:51 pwhack thanks @hemebond and @aphor for your help!
22:51 hemebond Good luck :-)
22:52 gaga joined #salt
22:53 marie1972 joined #salt
22:54 marie1972 left #salt
23:01 onlyanegg I'm trying to pass pillar data to state.orchestrate like this:
23:01 onlyanegg salt-run state.orchestrate deploy pillar='{"deploy":{"environment":"local","pods":["pod1"],"certain_app":{"revision":3936,"branch":"trunk"},"api":{"revision":3936,"branch":"trunk"},"internal_services":{"revision":825,"branch":"minor"},"external_services":{"revision":825,"branch":"minor"}}}'
23:02 onlyanegg but I'm getting this: "No matching salt environment for environment 'base' found", "No matching sls found for 'deploy' in env 'base'"
23:02 onlyanegg I actually don't have a 'base' environment
23:02 fl33t joined #salt
23:02 edrocks joined #salt
23:03 ninjada joined #salt
23:04 sp0097 joined #salt
23:10 onlyanegg and I don't know where that is coming from
23:10 hemebond onlyanegg: base is the default environment name.
23:11 hemebond It's where your salt states are stored.
23:11 hemebond If your master is default config, it'll be /srv/salt/ I think.
23:11 hemebond See file_roots
23:12 onlyanegg but my master and minion configs both specify which environment to use
23:12 hemebond But you're using orchestration.
23:12 onlyanegg k, what do you mean by that?
23:12 hemebond I haven't used orchestration myself, but does it have its own file root?
23:13 onlyanegg oh, hmmm. idk
23:13 hemebond I thought it had it's own kind of state file.
23:14 hemebond It looks like it just uses the states directory.
23:14 hemebond By default at least.
23:14 hemebond So in your base environment state directory you should have your orchestration states.
23:14 hemebond Otherwise try salt_env=blah on the command line.
23:14 hemebond *saltenv
23:15 hemebond Not sure why I keep thinking it has an underscore.
23:15 hemebond salt.runners.state.orchestrate(mods, saltenv='base', test=None, exclude=None, pillar=None)
23:15 hemebond There you go; by default it uses the base environment but you can override.
23:15 hemebond https://docs.saltstack.com/en/latest/ref/runners/all/salt.runners.state.html#salt.runners.state.orchestrate
23:16 onlyanegg ahh, thank you! I need to specify the saltenv on the command line
23:19 flowstate joined #salt
23:20 barmaley joined #salt
23:21 hemebond ????
23:22 onlyanegg nice! didn't know emojis were possible
23:22 hemebond That's a unicode character :-)
23:23 hemebond Some people with old clients will just see a square.
23:25 ekristen joined #salt
23:29 drew__ joined #salt
23:31 drew__ does anyone know how to change syndic_wait?
23:32 MTecknology Is there any module for copying a file from minion to master?
23:34 hemebond MTecknology: https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.cp.html#salt.modules.cp.push
23:34 MTecknology :D
23:35 MTecknology weird setup where I just can't log into the box I need a file from, but I have salt. :P
23:35 MTecknology I guess bug is a better word than setup
23:36 DEger joined #salt
23:37 amy joined #salt
23:38 amcorreia left #salt
23:43 Eugene `salt foo cmd.run curl -X PUT whatever`, but that's just me.
23:50 sparticl joined #salt
23:52 |aaron salt.states.network doesnt support freebsd :( sad day. i was hoping to there might be a 3rd party formula but im not finding anytyhing.. anybody have a solution for this?
23:54 DEger joined #salt
23:56 scoates joined #salt

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