簡體   English   中英

使用 SAM 在 Git Actions 中構建項目,我收到新錯誤:AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'

[英]Build the project in Git Actions using SAM, I am getting new error: AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'

我正在使用 Python 3.9,我正在嘗試在 Git Actions 中構建代碼。 我今天看到這個新錯誤。直到 12 月 30 日,我在構建相同代碼時沒有遇到任何問題。 我沒有明確使用任何 PyOpenSSL 包/密碼學 package。所以它不是代碼問題。

但是,我嘗試降級和升級 PyopenSSL 和 Cryptography package,但我面臨同樣的問題。

Run sam build --config-env dev
Traceback (most recent call last):
  File "/home/runner/work/_temp/setup-sam-A5vDEq/bin/sam", line 8, in <module>
    sys.exit(cli())
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/click/core.py", line 1651, in invoke
    cmd_name, cmd, args = self.resolve_command(ctx, args)
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/click/core.py", line 1698, in resolve_command
    cmd = self.get_command(ctx, cmd_name)
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/samcli/cli/command.py", line 133, in get_command
    mod = importlib.import_module(pkg_name)
  File "/opt/hostedtoolcache/Python/3.9.16/x64/lib/python3.9/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/samcli/commands/build/__init__.py", line 6, in <module>
    from .command import cli  # noqa
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/samcli/commands/build/command.py", line 12, in <module>
    from samcli.commands._utils.options import (
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/samcli/commands/_utils/options.py", line 21, in <module>
    from samcli.commands._utils.template import get_template_data, TemplateNotFoundException
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/samcli/commands/_utils/template.py", line 10, in <module>
    from botocore.utils import set_value_from_jmespath
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/botocore/utils.py", line 37, in <module>
    import botocore.httpsession
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/botocore/httpsession.py", line 46, in <module>
    from urllib3.contrib.pyopenssl import (
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/urllib3/contrib/pyopenssl.py", line 50, in <module>
    import OpenSSL.crypto
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "/home/runner/work/_temp/setup-sam-A5vDEq/.venv/lib/python3.9/site-packages/OpenSSL/crypto.py", line 3268, in <module>
    _lib.OpenSSL_add_all_algorithms()
AttributeError: module 'lib' has no attribute 'OpenSSL_add_all_algorithms'
Error: Process completed with exit code 1.

誰能幫我解決這個問題? 看起來“加密”模塊在幾個小時前發生了一些升級。我不確定這是否是導致問題的原因。

我今天看到這個新錯誤。直到 12 月 30 日,我在構建相同代碼時沒有遇到任何問題。 我沒有明確使用任何 PyOpenSSL 包/密碼學 package。所以它不是代碼問題。

但是,我嘗試降級和升級 PyopenSSL 和 Cryptography package,但我面臨同樣的問題。

當 git 操作安裝 python 時,我可以看到它下載了 pyopenssl。 Collecting pyopenssl==22.0.0 Downloading pyOpenSSL-22.0.0-py2.py3-none-any.whl (55 kB)

這是我的 git 操作文件中的命令/操作列表:

jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.9' - uses: aws-actions/setup-sam@v2 - uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: aws-secret-access-key: aws-region: us-east-2 - run: echo "export SAM_CLI_TELEMETRY=0" >>~/.profile - run: source ~/.profile # Run unit tests - run: pip install -r tests/requirements.txt - run: python -m pytest tests/unit -v

試試這個:

pip install --upgrade pyopenssl

確保在任何pip install --upgrade awscli asw-sam-cli調用之后添加它。

將 sam 版本降級到 1.59.0 以解決此問題。

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:    
      - uses: aws-actions/setup-sam@v2
        with:
          version: 1.59.0

您可以參考sam build from Github actions suddenly failing from today中解決的類似問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM