Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dt-cli dependency issue running on 'ubuntu-latest' github runners #180

Open
DaveyHuze opened this issue Feb 5, 2025 · 0 comments
Open
Labels
bug Something isn't working

Comments

@DaveyHuze
Copy link

Describe the bug
Since the changes to the Ubuntu-latest to Ubuntu 24.04 (actions/runner-images#10636), the build for dt-cli is broken.
The pipeline used has built and deployed many extensions prior to the runner change and the issue is resolved simply by replacing runs-on: ubuntu-latest with runs-on: ubuntu-22.04. The workflow example below is redacted, however the 'install dt-cli' and 'Build extension' steps are verbatim.

Interestingly, when the workflow runs, the Install dt-cli step does not fail.

To Reproduce
Create a workflow with the following logic:

jobs:
  build-extension:
    runs-on: ubuntu-latest # Note that changing this to "ubuntu-22.04" resolves the issue

    steps:
    - Checkout Repository
    - Set Variables
    
    - name Install dt-cli
       run: |
           pip install dt-cli
    
    - do other things...
    
    - name: Build extension
      run: |
        cd ${{ inputs.path }}
        dt extension assemble

Expected behaviour
In the Install dt-cli step:

Run pip install dt-cli
Defaulting to user installation because normal site-packages is not writeable
Collecting dt-cli
  Downloading dt_cli-1.6.21-py3-none-any.whl (32 kB)
Requirement already satisfied: cryptography>3 in /usr/lib/python3/dist-packages (from dt-cli) (3.4.8)
Collecting PyYAML<7.0,>=6.0
  Downloading PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (751 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 751.2/751.2 KB 35.8 MB/s eta 0:00:00
Collecting jsonschema<5.0,>=4.7
  Downloading jsonschema-4.23.0-py3-none-any.whl (88 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 88.5/88.5 KB 21.9 MB/s eta 0:00:00
Collecting click-aliases<2.0,>=1.0
  Downloading click_aliases-1.0.5-py3-none-any.whl (3.5 kB)
Collecting typer<1,>=0
  Downloading typer-0.15.1-py3-none-any.whl (44 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.9/44.9 KB 17.3 MB/s eta 0:00:00
Requirement already satisfied: wheel<1,>=0 in /usr/lib/python3/dist-packages (from dt-cli) (0.37.1)
Collecting requests<3.0,>=2.26
  Downloading requests-2.32.3-py3-none-any.whl (64 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.9/64.9 KB 27.0 MB/s eta 0:00:00
Collecting asn1crypto<2.0,>=1.4
  Downloading asn1crypto-1.5.1-py2.py3-none-any.whl (105 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 105.0/105.0 KB 37.8 MB/s eta 0:00:00
Collecting click<9.0.0,>=8.1.7
  Downloading click-8.1.8-py3-none-any.whl (98 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.2/98.2 KB 26.9 MB/s eta 0:00:00
Collecting attrs>=22.2.0
  Downloading attrs-25.1.0-py3-none-any.whl (63 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.2/63.2 KB 14.4 MB/s eta 0:00:00
Collecting rpds-py>=0.7.1
  Downloading rpds_py-0.22.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (381 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 382.0/382.0 KB 49.9 MB/s eta 0:00:00
Collecting jsonschema-specifications>=2023.03.6
  Downloading jsonschema_specifications-2024.10.1-py3-none-any.whl (18 kB)
Collecting referencing>=0.28.4
  Downloading referencing-0.36.2-py3-none-any.whl (26 kB)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/lib/python3/dist-packages (from requests<3.0,>=2.26->dt-cli) (1.26.5)
Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3/dist-packages (from requests<3.0,>=2.26->dt-cli) (3.3)
Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests<3.0,>=2.26->dt-cli) (2020.6.20)
Collecting charset-normalizer<4,>=2
  Downloading charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (146 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 146.1/146.1 KB 43.8 MB/s eta 0:00:00
Collecting shellingham>=1.3.0
  Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
Collecting rich>=10.11.0
  Downloading rich-13.9.4-py3-none-any.whl (242 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 242.4/242.4 KB 43.3 MB/s eta 0:00:00
Collecting typing-extensions>=3.7.4.3
  Downloading typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Collecting pygments<3.0.0,>=2.13.0
  Downloading pygments-2.19.1-py3-none-any.whl (1.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 89.4 MB/s eta 0:00:00
Collecting markdown-it-py>=2.2.0
  Downloading markdown_it_py-3.0.0-py3-none-any.whl (87 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 87.5/87.5 KB 25.2 MB/s eta 0:00:00
Collecting mdurl~=0.1
  Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: asn1crypto, typing-extensions, shellingham, rpds-py, PyYAML, pygments, mdurl, click, charset-normalizer, attrs, requests, referencing, markdown-it-py, click-aliases, rich, jsonschema-specifications, typer, jsonschema, dt-cli
Successfully installed PyYAML-6.0.2 asn1crypto-1.5.1 attrs-25.1.0 charset-normalizer-3.4.1 click-8.1.8 click-aliases-1.0.5 dt-cli-1.6.21 jsonschema-4.23.0 jsonschema-specifications-2024.10.1 markdown-it-py-3.0.0 mdurl-0.1.2 pygments-2.19.1 referencing-0.36.2 requests-2.32.3 rich-13.9.4 rpds-py-0.22.3 shellingham-1.5.4 typer-0.15.1 typing-extensions-4.12.2

In the Build Extension step:

Run cd extensions/yaml/awesome-extension
Building extension.zip from src
Adding file: src/extension.yaml as extension.yaml

Actual Behaviour
In the Install dt-cli step:

Run pip install dt-cli
Defaulting to user installation because normal site-packages is not writeable
Collecting dt-cli
  Downloading dt_cli-1.6.21-py3-none-any.whl.metadata (6.1 kB)
Requirement already satisfied: PyYAML<7.0,>=6.0 in /usr/lib/python3/dist-packages (from dt-cli) (6.0.1)
Collecting asn1crypto<2.0,>=1.4 (from dt-cli)
  Downloading asn1crypto-1.5.1-py2.py3-none-any.whl.metadata (13 kB)
Collecting click-aliases<2.0,>=1.0 (from dt-cli)
  Downloading click_aliases-1.0.5-py3-none-any.whl.metadata (1.7 kB)
Requirement already satisfied: cryptography>3 in /usr/lib/python3/dist-packages (from dt-cli) (41.0.7)
Requirement already satisfied: jsonschema<5.0,>=4.7 in /usr/lib/python3/dist-packages (from dt-cli) (4.10.3)
Requirement already satisfied: requests<3.0,>=2.26 in /usr/lib/python3/dist-packages (from dt-cli) (2.31.0)
Collecting typer<1,>=0 (from dt-cli)
  Downloading typer-0.15.1-py3-none-any.whl.metadata (15 kB)
Requirement already satisfied: wheel<1,>=0 in /usr/lib/python3/dist-packages (from dt-cli) (0.42.0)
Collecting click<9.0.0,>=8.1.7 (from click-aliases<2.0,>=1.0->dt-cli)
  Downloading click-8.1.8-py3-none-any.whl.metadata (2.3 kB)
Requirement already satisfied: attrs>=17.4.0 in /usr/lib/python3/dist-packages (from jsonschema<5.0,>=4.7->dt-cli) (23.2.0)
Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /usr/lib/python3/dist-packages (from jsonschema<5.0,>=4.7->dt-cli) (0.20.0)
Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/lib/python3/dist-packages (from typer<1,>=0->dt-cli) (4.10.0)
Collecting shellingham>=1.3.0 (from typer<1,>=0->dt-cli)
  Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
Requirement already satisfied: rich>=10.11.0 in /usr/lib/python3/dist-packages (from typer<1,>=0->dt-cli) (13.7.1)
Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/lib/python3/dist-packages (from rich>=10.11.0->typer<1,>=0->dt-cli) (3.0.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/lib/python3/dist-packages (from rich>=10.11.0->typer<1,>=0->dt-cli) (2.17.2)
Requirement already satisfied: mdurl~=0.1 in /usr/lib/python3/dist-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<1,>=0->dt-cli) (0.1.2)
Downloading dt_cli-1.6.21-py3-none-any.whl (32 kB)
Downloading asn1crypto-1.5.1-py2.py3-none-any.whl (105 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 105.0/105.0 kB 4.3 MB/s eta 0:00:00
Downloading click_aliases-1.0.5-py3-none-any.whl (3.5 kB)
Downloading typer-0.15.1-py3-none-any.whl (44 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.9/44.9 kB 13.0 MB/s eta 0:00:00
Downloading click-8.1.8-py3-none-any.whl (98 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.2/98.2 kB 16.2 MB/s eta 0:00:00
Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
Installing collected packages: asn1crypto, shellingham, click, click-aliases, typer, dt-cli
Successfully installed asn1crypto-1.5.1 click-8.1.8 click-aliases-1.0.5 dt-cli-1.6.21 shellingham-1.5.4 typer-0.15.1

In the Build Extension step:

Run cd extensions/yaml/awesome-extension
Traceback (most recent call last):
  File "/home/runner/.local/bin/dt", line 5, in <module>
    from dtcli.__main__ import main
  File "/home/runner/.local/lib/python3.12/site-packages/dtcli/__init__.py", line 17, in <module>
    from dtcli import scripts
  File "/home/runner/.local/lib/python3.12/site-packages/dtcli/scripts/__init__.py", line 15, in <module>
    from dtcli.scripts import dt
  File "/home/runner/.local/lib/python3.12/site-packages/dtcli/scripts/dt.py", line 32, in <module>
    from dtcli import building, delete_extension, api, utils, validate_schema as _validate_schema
  File "/home/runner/.local/lib/python3.12/site-packages/dtcli/validate_schema.py", line 8, in <module>
    from referencing import Registry, Resource
ModuleNotFoundError: No module named 'referencing'
Error: Process completed with exit code 1.
@DaveyHuze DaveyHuze added the bug Something isn't working label Feb 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant