Get a list of code environments that use a specific python package and the version specified?

info-rchitect
info-rchitect Registered Posts: 198 ✭✭✭✭✭✭

Hi,

We have an internal python package that gets used by dozens of code environments and we need to know which code environments those are and what version is present. Is there a way to do this with DSS?

thx in advance


Operating system used: Windows 10

Tagged:

Best Answer

Answers

  • SAURABH
    SAURABH Partner, Dataiku DSS Core Designer, Dataiku DSS ML Practitioner, Dataiku DSS Core Concepts, Dataiku DSS Adv Designer, Registered Posts: 30 Partner

    @info-rchitect were you able to do this if yes possible to share the code

  • Turribeach
    Turribeach Dataiku DSS Core Designer, Neuron, Dataiku DSS Adv Designer, Registered, Neuron 2023, Circle Member Posts: 2,598 Neuron

    Something like this should do:

    import dataiku
    
    # Connect to the Dataiku instance
    client = dataiku.api_client()
    
    # List all code environments
    code_envs = client.list_code_envs()
    
    for env in code_envs:
        env_lang = env.get("envLang", "unknown")
        env_name = env.get("envName")
        python_interpreter = env.get("pythonInterpreter") 
        print(f"\n=== Code Environment: {env_lang}/{env_name}/{python_interpreter} ===")
    
        # Get details for this environment
        code_env_handle = client.get_code_env(env_lang, env_name)
        try:
            packages = code_env_handle.get_definition()['actualPackageList']
            if packages:
                print(f"Installed packages: {packages}")
            else:
                print("No packages installed or not retrievable")
        except Exception as e:
            print(f"  Could not retrieve packages: {e}")
    
Setup Info
    Tags
      Help me…