https://www.puppet.com/community logo
Join Slack
Powered by
# voxpupuli
  • d

    dhollinger

    06/21/2022, 4:04 PM
    I mean, the code will account for those differences
  • t

    tvaughan

    06/21/2022, 4:04 PM
    Oh, I thought you could limit it to target environments
  • d

    dhollinger

    06/21/2022, 4:04 PM
    There can be different paths based on module or environment deploys
  • a

    Alex Fisher

    06/21/2022, 4:04 PM
    If it waits for completion, it can't be used with gitlab at least.
  • t

    tvaughan

    06/21/2022, 4:05 PM
    Yeah, for GitLab I'd probably drop 2 jobs. Deploy => Check (with retry and delay)
  • a

    Alex Fisher

    06/21/2022, 4:05 PM
    "Create a script/plugin for r10k/puppet server/bolt/choria that will send a notification message" Isn't that pretty much what the chatops bit is for?
  • d

    dhollinger

    06/21/2022, 4:06 PM
    Not necessarily
  • d

    dhollinger

    06/21/2022, 4:07 PM
    If running async, then all chatops will do is report if the request was accepted or failed
  • a

    Alex Fisher

    06/21/2022, 4:07 PM
    oh. I would have the chatops bit wait for the actual r10k run to pass or fail.
  • d

    dhollinger

    06/21/2022, 4:07 PM
    It could depending on how things are handled, but if something like bolt or choria is running, you'll want those to notify if there's a failure on specific machines
  • a

    Alex Fisher

    06/21/2022, 4:09 PM
    You could also (optionally) send out a message when a job is accepted, but there are already ways to tie webhooks to slack directly if eg. a SCM branch is updated.
  • a

    Alex Fisher

    06/21/2022, 4:11 PM
    googles generic solutions to queueing webhooks.
  • d

    dhollinger

    06/21/2022, 4:12 PM
    There are several. For generic in golang, it's using the built-in goroutines 😉
  • d

    dhollinger

    06/21/2022, 4:12 PM
    but there are ways that use separate processes entirely similar to sidekiq
  • b

    bastelfreak

    06/21/2022, 4:19 PM
    sidekiq \o/
  • l

    Lumiere

    06/21/2022, 4:20 PM
    I would think that a 202 returning a callback would allow chatops (or whatever) to poll for completion
  • a

    Alex Fisher

    06/21/2022, 4:21 PM
    Our existing setup is using bitbucket server and a custom python service to process the hooks. I'm under quite a lot of pressure to just adapt that, (which is a shame as I really wanted to get our migration to gitlab going with webhook-go).
  • d

    dhollinger

    06/21/2022, 4:21 PM
    @Lumiere It should, but again depends on what's being done. If we're talking a multi-server system, then chances are puppet or choria are being used to remotely execute r10k on several puppet servers. Then you need to know the individual results which would be easier to implement on a bolt or choria side than trying to parse the output of those commands.
  • a

    Alex Fisher

    06/21/2022, 4:23 PM
    Does bolt not give you back a single 0 exit code if all executions were successful?
  • d

    dhollinger

    06/21/2022, 4:25 PM
    I'd assume so, but not worried about successes, but failures. Vague errors are useless, though
  • d

    dhollinger

    06/21/2022, 4:25 PM
    Anyway, not ready for async operations yet. Need more time available to get to that.... after packaging and containers are done..... and docs are better
  • a

    Alex Fisher

    06/21/2022, 4:32 PM
    ok. If you think that's the right order. Not usable for me at least without async.
  • d

    dhollinger

    06/21/2022, 4:33 PM
    Even with async, there will be a time limit option to prevent OOM errors and the like
  • a

    Alex Fisher

    06/21/2022, 4:34 PM
    Makes sense.
  • l

    Lumiere

    06/21/2022, 4:55 PM
    @dhollinger yes, but at least ansible has a method of hitting a url and collecting a response until it successes
  • l

    Lumiere

    06/21/2022, 4:55 PM
    it's all a mess though, yes
  • v

    VoxBot

    06/21/2022, 4:59 PM
    bleh, acceptance tests for EL on puppetlabs-* modules are broken and I have no idea why
  • t

    tvaughan

    06/21/2022, 5:00 PM
    EL8 or 7?
  • t

    tvaughan

    06/21/2022, 5:01 PM
    (or something else)
  • v

    VoxBot

    06/21/2022, 5:04 PM
    I think I've seen it on RPM install of puppet-agent, but it's so unclear in the output
1...878889...648Latest