https://www.puppet.com/community logo
Join Slack
Powered by
# office-hours
  • b

    bastelfreak

    07/31/2025, 5:49 PM
    well you could also do something for the open source community and adopt libxslt
    donotwant 1
  • c

    csharpsteen

    07/31/2025, 5:50 PM
    Fair enough. I just forsee swapping that problem for a bunch of nasty "Nokogiri won't install" tickets because nothing about the CVE is going to make XML less popular as a config format, and it will take years/decades/if ever for Nokogiri to be a less popular tool for working with it. There's a lot of inertia there.
  • j

    josh

    07/31/2025, 5:51 PM
    If there was an option to disable libxslt, then I'd be ok like
    gem install nokogiri --platform=ruby -- --use-system-libraries --no-libxslt
  • c

    csharpsteen

    07/31/2025, 5:53 PM
    Yeah. That would be nice as 95% of the Nokogiri use case is just parsing
    .xml
    files and running some queries or inserts on the resulting data. Unless XSLT is somehow used when writing XML back out, I don't see a lot of use for rendering
    .xml
    data to some other structure via a style sheet.
  • j

    josh

    07/31/2025, 5:58 PM
    I don't believe xml code requires xslt, but xslt does rely on xml. I'll start a discussion in nokogiri
  • c

    csharpsteen

    07/31/2025, 6:00 PM
    Also, if we yank
    nokogiri
    in a patch release... stuff is going to break until folks that are using it sort out what to do with
    puppet_gem
    .
  • c

    csharpsteen

    07/31/2025, 6:03 PM
    And, would they have to drag
    build-essential
    in or its equivalent (for Windows? for AIX?)
  • j

    josh

    07/31/2025, 6:04 PM
    we only ship nokogiri on macOS
  • c

    csharpsteen

    07/31/2025, 6:05 PM
    Ahhh. Ok. That makes removal much more viable then.
  • j

    josh

    07/31/2025, 6:10 PM
    I filed https://github.com/sparklemotion/nokogiri/discussions/3532
  • b

    bastelfreak

    07/31/2025, 6:11 PM
    different topic, but: Is there an easy way on a puppetserver to check if the process is up and running? Do I have to curl the status API?
  • j

    josh

    07/31/2025, 6:12 PM
    are you checking locally? I think there's a pid file
  • b

    bastelfreak

    07/31/2025, 6:13 PM
    yes locally
  • j

    josh

    07/31/2025, 6:15 PM
    I don't know if this is the best way, but I've had luck with
    Copy code
    pid=`pgrep -f /opt/puppetlabs/server/data/puppetserver/restartcounter`
  • b

    bastelfreak

    07/31/2025, 6:17 PM
    ah lol, interesting
  • j

    josh

    07/31/2025, 6:20 PM
    I would bet money @csharpsteen has a better way
  • b

    bastelfreak

    07/31/2025, 6:21 PM
    ExecStartPost=/usr/bin/timeout 30 sh -c 'while ! ss -H -t -l -n sport = :8140 | grep -q "^LISTEN.*:8140"; do sleep 1; done'
    is my current idea
  • b

    bastelfreak

    07/31/2025, 6:21 PM
    And I think that deserves bonus points for readability
  • c

    csharpsteen

    07/31/2025, 6:21 PM
    The SystemD unit shouldn't transition from
    starting
    to
    running
    if the service isn't up.
  • c

    csharpsteen

    07/31/2025, 6:23 PM
    As far as I know, we go through the whole startup sequence: webserver listening on socket, JRubies up and running to handle requests, etc. before the restart counter updates, which causes
    ExecStart
    to return, which causes SystemD to mark the service as Started.
  • b

    bastelfreak

    07/31/2025, 6:24 PM
    yeah
  • b

    bastelfreak

    07/31/2025, 6:27 PM
    A better systemd integration would be nice, so we could use
    Type=notify-reload
  • b

    bastelfreak

    07/31/2025, 6:28 PM
    Then puppetserver could use sd_notify to tell systemd when it started all the jrubies or whatever, and also inform systemd when a reload is done
  • c

    csharpsteen

    07/31/2025, 6:36 PM
    Probably doable now. I think the current setup is the way it is to support RHEL 6 and older versions of Debian/Ubuntu, or SLES that had not adopted SystemD yet. So, not exactly a modern concern.
  • c

    csharpsteen

    07/31/2025, 6:37 PM
    But, the current setup should also result in SystemD accurately reflecting the
    running
    state of the service. So, If it ain't broke, maybe not worth poking it.
  • b

    bastelfreak

    07/31/2025, 7:11 PM
    Yep. I am trying to replace the wrapper scripts in the systemd unit
  • c

    CVQuesty

    08/04/2025, 3:32 PM
    @CVQuesty has left the channel
  • n

    natemccurdy

    08/04/2025, 9:55 PM
    @natemccurdy has left the channel
  • k

    Keith Ward

    08/12/2025, 6:37 PM
    @Keith Ward has left the channel
  • a

    austb

    08/12/2025, 11:59 PM
    @austb has left the channel