martinthomson / internet-draft-template

A template repository for Internet-Draft management
60 stars 58 forks source link

Fails to work over firewall? #11

Closed mouse07410 closed 7 months ago

mouse07410 commented 2 years ago
$ make
git clone -q --depth 10  \
    -b main https://github.com/martinthomson/i-d-template lib
python3 -m venv /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv
/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/bin/python -m pip install --upgrade pip setuptools wheel
Requirement already satisfied: pip in ./lib/.venv/lib/python3.10/site-packages (22.0.4)
Collecting pip
  Downloading pip-22.2-py3-none-any.whl (2.0 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.0/2.0 MB 21.0 MB/s eta 0:00:00
Requirement already satisfied: setuptools in ./lib/.venv/lib/python3.10/site-packages (58.1.0)
Collecting setuptools
  Using cached setuptools-63.2.0-py3-none-any.whl (1.2 MB)
Collecting wheel
  Using cached wheel-0.37.1-py2.py3-none-any.whl (35 kB)
Installing collected packages: wheel, setuptools, pip
  Attempting uninstall: setuptools
    Found existing installation: setuptools 58.1.0
    Uninstalling setuptools-58.1.0:
      Successfully uninstalled setuptools-58.1.0
  Attempting uninstall: pip
    Found existing installation: pip 22.0.4
    Uninstalling pip-22.0.4:
      Successfully uninstalled pip-22.0.4
Successfully installed pip-22.2 setuptools-63.2.0 wheel-0.37.1
/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/bin/pip install -r lib/requirements.txt
Collecting archive-repo
  Using cached archive_repo-0.0.2-py3-none-any.whl (10 kB)
.  .  .
Installing kramdown-rfc 1.6.14
Fetching net-http-persistent 4.0.1
Installing net-http-persistent 4.0.1
Bundle complete! 2 Gemfile dependencies, 10 gems now installed.
Bundled gems are installed into `./lib/.gems`
Post-install message from certified:
IMPORTANT: Remember to use the included executable `certifed-update` regularly to keep your certificate bundle up to date.
cat draft-cfrg-schwabe-kyber.md  | kramdown-rfc --v3 | lib/trace.sh draft-cfrg-schwabe-kyber.xml -s venue /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/bin/python lib/add-note.py | lib/trace.sh draft-cfrg-schwabe-kyber.xml -s v2v3 /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/bin/xml2rfc -q -s 'Setting consensus="true" for IETF STD document' --rfc-base-url https://www.rfc-editor.org/rfc/ --id-base-url https://datatracker.ietf.org/doc/html/ --cache=/Users/ur20980/.cache/xml2rfc --v2v3 /dev/stdin -o /dev/stdout >draft-cfrg-schwabe-kyber.xml
---
- No link definition for link ID 'x' found on line 233
/Users/ur20980/.cache/xml2rfc/reference.RFC.2119.xml: fetching from https://www.rfc-editor.org/refs/bibxml/reference.RFC.2119.xml
*** execution expired while fetching https://www.rfc-editor.org/refs/bibxml/reference.RFC.2119.xml
/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1069:in `read': execution expired (Net::OpenTimeout)
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1069:in `get_and_cache_resource'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1157:in `block in convert_img'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1143:in `scan'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1143:in `convert_img'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:335:in `block in inner_a'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:333:in `map'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:333:in `inner_a'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:340:in `inner'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:353:in `convert_p'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:335:in `block in inner_a'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:333:in `map'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:333:in `inner_a'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:340:in `inner'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:1395:in `convert_root'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:328:in `convert1'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc2629.rb:323:in `convert'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-2.4.0/lib/kramdown/converter/base.rb:107:in `convert'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-2.4.0/lib/kramdown/document.rb:116:in `method_missing'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/lib/kramdown-rfc/command.rb:575:in `<top (required)>'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/bin/kramdown-rfc:8:in `require'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/gems/kramdown-rfc2629-1.6.14/bin/kramdown-rfc:8:in `<top (required)>'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/bin/kramdown-rfc:29:in `load'
    from /Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.gems/bin/kramdown-rfc:29:in `<main>'
Error: Unable to parse the XML document: /dev/stdin
make: *** [lib/main.mk:72: draft-cfrg-schwabe-kyber.xml] Error 1
make: *** Deleting file 'draft-cfrg-schwabe-kyber.xml'

For the complete report please see https://github.com/bwesterb/draft-schwabe-cfrg-kyber/issues/2

mouse07410 commented 2 years ago

@martinthomson any suggestion, fix, or workaround?

martinthomson commented 2 years ago

This is down to kramdown-rfc, which runs fairly standard Ruby HTTPS. You might be able to find some tutorials somewhere that describe how to configure Ruby for a proxy. Maybe with environment variables.

mouse07410 commented 2 years ago

@martinthomson I checked what's available on the web, and my setup is conformant to what they all suggest: define HTTP_PROXY=proxy_host:proxy_port (same for HTTPS_PROXY, of course).

My env vars included those for ages, and it did not help here. If it matters, I can install Ruby gems fine from behind the firewall, so Ruby works with my web proxy.

Here's what I'm getting (hitting ^C when tired of waiting :)):

---
- No link definition for link ID 'x' found on line 233
/Users/ur20980/.cache/xml2rfc/reference.RFC.8174.xml: fetching from https://www.rfc-editor.org/refs/bibxml/reference.RFC.8174.xml
^Cmake: *** Deleting file 'draft-cfrg-schwabe-kyber.xml'
Traceback (most recent call last):
Traceback (most recent call last):
  File "/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/add-note.py", line 8, in <module>
  File "/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/bin/xml2rfc", line 8, in <module>
*** Can't get with persistent HTTP: 
    for line in fileinput.input():
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/fileinput.py", line 256, in __next__
    sys.exit(main())
  File "/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/lib/python3.10/site-packages/xml2rfc/run.py", line 530, in main
    line = self._readline()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/fileinput.py", line 392, in _readline
    parser = xml2rfc.XmlRfcParser(source,
  File "/Users/ur20980/src/draft-schwabe-cfrg-kyber/lib/.venv/lib/python3.10/site-packages/xml2rfc/parser.py", line 501, in __init__
    return self._readline()
KeyboardInterrupt
martinthomson commented 2 years ago

That fetch is not something I can fix. The problem is in kramdown-rfc, if anywhere, but if you are using the standard setup (which you seem to be), then this is in the net-http-persistent gem. I'm not much of a ruby wonk, so I'm afraid I can't provide much more help than that.