Add Packages to the Package Management Environment¶
-
POST/api/v1.2/package/<env ID>/add_packages¶
Use this API to add Python and R packages to a Package Management environment. A newly created environment supports the conda-forge channel which supports more packages. Viewing the List of Pre-installed Python and R Packages provides the list of pre-installed packages. Questions about Package Management provides answers to questions related to adding packages.
Note
In addition to the default Conda package repo, you can also add only R packages from the CRAN package repo. For more information, see Using the Default Package Management UI.
Required Role¶
The following users can make this API call:
- Users who belong to the system-admin or system-user group.
- Users who belong to a group associated with a role that allows updating an environment. See Managing Groups and Managing Roles for more information.
Parameters¶
Note
Parameters marked in bold are mandatory. Others are optional and have default values.
| Parameter | Description |
|---|---|
| source_type | Only Python and R packages can be added. Specify python_package or r_package and it is
mandatory while adding packages through an environment. |
| package_names | Specify the name of the package. If you just specify the name, the latest version of the
package gets installed. To install a specific version of the package, specify it in this
format: <packagename>==<version-number>. For example, biopython==0.1. You can add any
number of packages as a comma-separated list. |
| repo_url | You must set this parameter to https://cran.r-project.org\ only when you want to add the R
package from the CRAN package repo. |
Request API Syntax¶
curl -X POST -H "X-AUTH-TOKEN: <API-TOKEN>" -H "Content-Type: application/json" -H "Accept: application/json" \
-d ' {"source_type": "<package type>", "package_names": "<packagename1>,<packagename2>,....,<packagenameN>"}' \
"https://gcp.qubole.com/api/v1.2/package/<envID>/add_packages"
Sample API Requests¶
Note
If you upgrade or downgrade a Python package, the changed version is reflected only after you restart the Spark interpreter. Interpreter Operations lists the restart and other Spark interpreter operations.
Here is a sample API call for adding Python packages to an environment that has 100 as its ID.
curl -X POST -H "X-AUTH-TOKEN: <API-TOKEN>" -H "Content-Type: application/json" -H "Accept: application/json" \
-d '{"source_type": "python_package", "package_names": "numpy,bipython==0.1,tensorflow"}' \
"https://gcp.qubole.com/api/v1.2/package/100/add_packages"
Here is a sample API call for adding R packages to an environment that has 100 as its ID.
curl -X POST -H "X-AUTH-TOKEN: <API-TOKEN>" -H "Content-Type: application/json" -H "Accept: application/json" \
-d '{"source_type": "r_package", "package_names": "r-rserve,r-brew==1.0"}' \
"https://gcp.qubole.com/api/v1.2/package/100/add_packages"
Here is a sample API call for adding a R package from the CRAN package repo to an environment that has 100 as its ID.
curl -X POST -H "X-AUTH-TOKEN: <API-TOKEN>" -H "Content-Type: application/json" -H "Accept: application/json" \
-d '{"source_type": "r_package", "repo_packages": "[ {\"name\": \"RMySQL\", \"repo_url\": \"https://cran.r-project.org\"}]" }' \
"https://gcp.qubole.com/api/v1.2/package/100/add_packages"