Plugins & Extending Dataiku

Sort by:
211 - 220 of 744
  • I'm Trying to install a plugin through running this python code on dataiku server and i'm getting error of DataikuException: java.lang.Exception: Could not install the plugin this is the code import d…
    Question
    Started by Ouss
    Most recent by GuillaumeDubois
    0
    1
    GuillaumeDubois
    Last answer by GuillaumeDubois

    Hello,

    Contrary to what appears in the doc:

    with open("myplugin.zip", "r") as f:
        client.install_plugin_from_archive(f)

    You should use rb (read bytes) to read the archive correctly and have it installed in the instance:

    with open("dss-plugin-pi-system-1.0.1.zip", "rb") as plugin:
        client.install_plugin_from_archive(plugin)

    I tested it, works fine in version 11.2.

    Cheers.

    GuillaumeDubois
    Last answer by GuillaumeDubois

    Hello,

    Contrary to what appears in the doc:

    with open("myplugin.zip", "r") as f:
        client.install_plugin_from_archive(f)

    You should use rb (read bytes) to read the archive correctly and have it installed in the instance:

    with open("dss-plugin-pi-system-1.0.1.zip", "rb") as plugin:
        client.install_plugin_from_archive(plugin)

    I tested it, works fine in version 11.2.

    Cheers.

  • Operating system used: Apple Operating system used: AppleHi there First post, relative newbie to Dataiku and trying to get my head around Python. [Before you ask!I know that I can do this as a recipe,…
    Answered ✓
    Started by Martin
    Most recent by Martin
    0
    7
    Solution by
    Martin
    Solution by Martin

    Had to change it to:

    # -*- coding: utf-8 -*-
    import dataiku
    import pandas as pd, numpy as np
    from dataiku import pandasutils as pdu
    
    # Read recipe inputs
    TEMP1 = dataiku.Dataset("TEMP1")
    TEMP1_df = TEMP1.get_dataframe()
    
    # Compute recipe outputs from inputs
    #TEMP1_df['d'] = TEMP1_df.apply(lambda row: json.dumps(dict(row)), axis=1)
    TEMP1_df['json_abc'] = TEMP1_df.apply(lambda row: json.dumps({'COLUMN1': row['COLUMN1'], 'COLUMN2': row['COLUMN2'], 'COLUMN4': row['COLUMN4']}), axis=1)
    
    # Write recipe outputs
    TEMP2 = dataiku.Dataset("TEMP2")
    TEMP2.write_with_schema(TEMP1_df)

    but works like a dream.

    Thank you - you've opened up a whole new world to me

  • Hi, I am trying to implement a dynamic MULTISELECT (i.e. getChoicesFromPython:true) in a macro, using parameter set in order to provide credentials to contact an external service. I understand presets…
    Answered ✓
    Started by Aymeric
    Most recent by Aymeric
    0
    4
    Solution by
    Aymeric
    Solution by Aymeric

    Thanks again for your time @ZachM
    !

    I've given it another try, starting from scratch, but got the same results... Before I found occurrences when it suddenly worked. After some toying with the plugin, I found the solution : don't insert trigger params exept If you are absolutely certain that they will be activated. Indeed, the following sections of my macro were:

            {
                "name": "selection_mode",
                "label": "Selection",
                "type": "SELECT",
                "selectChoices":[{"value":"all", "label":"all"},
                                 {"value":"by hand", "label":"by hand"},
                                 {"value":"regex", "label":"regex"}],
                "defaultValue":"by hand",
                "mandatory": true
            },
            {
                "name": "regex",
                "label": "REGEX",
                "type": "STRING",
                "defaultValue":".*",
                "mandatory": true,
                "visibilityCondition":"model.selection_mode=='regex'"
            },
            {
                "name": "plugins",
                "label": "Plugins",
                "type": "MULTISELECT",
                "getChoicesFromPython":true,
                "mandatory": true,
                "triggerParams":["gitlab_access", "dss_role"],
                "visibilityCondition":"model.selection_mode=='by hand'"
            }

    Therefore, having dss_role with a predefined value, and gitlab_access retrieving the first preset available made the whole mechanism inoperant.

    I ended up removing the trigger parameters, and it's all fine now !

    Thanks again ZachM !

  • I want to fetch the weather-related information for a location for which i am using the OpenWeatherMap plugin. I have followed all the instructions given in the plugin documentation. When i try to use…
    Answered ✓
    Started by BhaskarDevGoel
    Most recent by BhaskarDevGoel
    0
    5
    Solution by
    Alexandru
    Solution by Alexandru

    There is a free API trier you can subscribe to https://openweathermap.org/api Did you sign-up?

    Make sure you have no leading/trailing spaces in your API key and if that still doesn't work let us know.

  • Hello, I want to add a dynamic table with filters on the plugin configuration page. For that we can use the MatTableModule. But I am not sure how do we import MatTableModule or any module in recipe pl…
    Question
    Started by neerajisalso
    0
  • Hello, I am wondering if there is a way to access the root node of any specific/selected node in the project flow? (Root, not the direct predecessor/s) Operating system used: Windows
    Question
    Started by weaam7
    Most recent by Sarina
    0
    1
    Last answer by
    Sarina
    Last answer by Sarina

    Hi @weaam7
    ,

    Do you mean the initial upstream dataset for a specific node in the flow? i.e. in this example if you selected the dataset "Orders_by_Country_Category" for example, you would want the "Orders" and "Customers" folders returned?

    Screen Shot 2023-03-06 at 4.28.41 PM.pngYou can recurse through the flow using the flow API, to get all source items for any given "search node". Here is an example:

    import dataiku 
    
    def get_predessor(node, roots):
        if len(node['predecessors']) < 1:
            roots.append(node['ref'])
            return 
        else:
            for node_key in node['predecessors']:
                child_node = graph.nodes[node_key]
                get_predessor(child_node, roots)
    
    roots = []
    
    client = dataiku.api_client()
    # gets our current project graph 
    project = client.get_default_project()
    flow = project.get_flow()
    graph = flow.get_graph()
    
    # replace with your search dataset/recipe ID
    search_item = 'Orders_by_Country_Category'
    search_node = graph.nodes[search_item]
    
    # call our function to recurse through the graph and return all roots of the given search node 
    n = get_predessor(search_node, roots)
    roots


    For the example flow above this returns the folder IDs for the two source folders in my flow:

    Screen Shot 2023-03-06 at 5.07.40 PM.png

    Let me know if you have any questions about this!

    Thanks,
    Sarina 

  • I am trying to create a custom chart on Dataiku using dash. Whenever the chart is loaded Dataiku tries to run the webapp but it always doesn't find dash and asks for a code env that includes dash. The…
    Question
    Started by MMikhail
    0
  • What is the format for writing URL and Site ID in Preset for connecting with Tableau Server Operating system used: Windows
    Question
    Started by Ashutosh1
    Most recent by Sarina
    0
    1
    Last answer by
    Sarina
    Last answer by Sarina

    Hi @Ashutosh1
    ,

    The Tableau parameter format are described in the most detail here: https://github.com/dataiku/dss-plugin-tableau-hyper/#parameter-preset

    So for URL and Site ID:

    SERVER_URL is the URL of your Tableau server without subpaths.For local Tableau servers, an example would be: <strong>https://www.MY_SERVER.com</strong>. <br />For Tableau Online, an example would be: <strong>https://10ax.online.tableau.com/</strong>.SITENAME is the subpath of your full site URL (also called contentURL in the REST API). <br /><strong>MYSITE</strong> would be the site name of https://10ax.online.tableau.com/<strong>MYSITE</strong>.

    Let us know if you have any questions!

    Thanks,
    Sarina

  • I'm creating a custom R recipe in a plugin and I want to include a library folder. Is there a way to do this like how we have a python-lib folder with all .py files and use from-import to have the met…
    Answered ✓
    Started by jvijayakumar2
    Most recent by Alexandru
    0
    1
    Solution by
    Alexandru
    Solution by Alexandru

    Hi @jvijayakumar2
    ,


    The solution for the R code recipe plugin is to create a resources folder and use dkuCustomRecipeResource
    https://doc.dataiku.com/dss/api/11/R/dataiku/reference/dkuCustomRecipeResource.html

    e.g source(file.path(dkuCustomRecipeResource(), "clean.R"))

    You can find an example plugin doing this here for reference:

    https://github.com/dataiku/dss-plugin-timeseries-forecast-legacy

    Thanks

  • Hello Dataiku Community, I have created a new Plugin recipe with Python37 and added some dependencies. The creation of the environment was successful. But when I Build the added plugin to the Flow aft…
    Answered ✓
    Started by nbhatewara
    Most recent by neerajisalso
    0
    1
    Solution by
    neerajisalso
    Solution by neerajisalso

    The error says that no container image was created.
    I think in this case as the container image is not created check if when creating the environment, a specific container was selected or not. If no container was selected definitely no container image will be created and hence the issue.

211 - 220 of 74422