This module contains high-level subroutines for creating app and applet objects.
If you are developing apps, we strongly recommend that you use the command-line application builder tool dx build to compile and deploy applets and apps onto the platform. (Those command-line tools are implemented using the methods in this module.)
Warning
This module is mostly intended for DNAnexus internal use. You probably only need to use the methods here directly if you are implementing a specialized development or publishing workflow that is not supported by the stock command-line builders.
Contains utility methods useful for compiling and deploying applets and apps onto the platform.
You can specify the destination project in the following ways (with the earlier ones taking precedence):
You can use the function get_destination_project() to determine the effective destination project.
Bases: exceptions.Exception
This exception is raised by the methods in this module when app or applet building fails.
Runs any build scripts that are found in the specified directory.
In particular, runs ./configure if it exists, followed by make -jN if it exists (building with as many parallel tasks as there are CPUs on the system).
Creates a new app object from the specified applet.
Deprecated since version 0.204.0: Use create_app_multi_region() instead.
Creates a new app object from the specified applet(s).
Parameters: | regional_options (dict) – Region-specific options for the app. See https://documentation.dnanexus.com/developer/api/running-analyses/apps#api-method-app-new for details; this should contain keys for each region the app is to be enabled in, and for the values, a dict containing (at minimum) a key “applet” whose value is an applet ID for that region. |
---|
Returns: | Project ID where applet specified by src_dir would be written |
---|---|
Return type: | str |
Returns the project ID where the applet specified in src_dir (or its associated resource bundles) would be written. This returns the same project that would be used by upload_resources() and upload_applet(), given the same src_dir and project parameters.
Returns a list of the regions in which the app should be enabled.
Also validates that app_spec[‘regionalOptions’], if supplied, is well-formed.
Parameters: |
|
---|
Parameters: | link_target (string) – The target of a symbolic link, as given by os.readlink() |
---|---|
Returns: | A boolean indicating the link is local to the current directory. This is defined to mean that os.path.isabs(link_target) == False and the link NEVER references the parent directory, so ”./foo/../../curdir/foo” would return False. |
Return type: | boolean |
Creates a new applet object.
Parameters: |
|
---|
Parameters: |
|
---|---|
Returns: | A list (possibly empty) of references to the generated archive(s) |
Return type: | list |
If resources_dir exists, archives and uploads the contents of the resources_dir (usually resources/) subdirectory of src_dir to a new remote file object, and returns a list describing a single bundled dependency in the form expected by the bundledDepends field of a run specification. Returns an empty list, if no archive was created.