1 Commits
  • feat: Add Volcano Engine DNS API (#7069)
    * feat: add volcengine dns api
    
    * fix(volcengine): address review findings and fix record matching
    
    Code review fixes:
    - fix format string usage in signature computation (use printf %b / %s)
    - clear _H1.._H5 header state at start of request to avoid leaking
      conditionally-set headers into subsequent requests
    - check ListZones return status in _get_root
    - document Volcengine_SESSION_TOKEN option and fix duplicate "and" typo
    - fix Docs and Issues sections
    - remove and update some code comments
    
    Functional fixes:
    - stop matching ListRecords results by FQDN string: Volcengine lowercases
      the Host/FQDN in responses, so a case-sensitive compare against
      $fulldomain failed for mixed-case names, making rm silently skip
      deletion and add lose idempotency. ListRecords is already filtered by
      ZID+Host+Value+SearchMode:exact, so just extract RecordID from the
      result instead.
    - reset _record_id at the start of add/rm to avoid stale state leaking
      across calls within the same process
    - tag created records with Remark "acme.sh" for easier identification
    - adjust debug levels: hide Authorization header behind _debug2, surface
      response at _debug
    
    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
    
    ---------
    
    Co-authored-by: wenxuan70 <t736660416@gmail.com>
    Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>