How Do I Create Function Dependencies?¶
You are advised to create function dependencies in EulerOS. If other OSs are used, an error may occur due to underlying dependent libraries. For example, the dynamic link library cannot be found.
Note
If the modules to be installed need dependencies such as .dll, .so, and .a, archive them to a .zip package.
Creating a Dependency for a Python Function¶
Ensure that the Python version of the packaging environment is the same as that of the function. For Python 2.7, Python 2.7.12 or later is recommended. For Python 3.6, Python 3.6.3 or later is recommended.
To install the PyMySQL dependency for a Python 2.7 function in the local /tmp/pymysql directory, run the following command:
pip install PyMySQL --root /tmp/pymysql
After the command is successfully executed, go to the /tmp/pymysql directory:
cd /tmp/pymysql/
Go to the site-packages directory (generally, usr/lib64/python2.7/site-packages/) and then run the following command:
zip -rq pymysql.zip *
The required dependency is generated.
Note
To install the local wheel installation package, run the following command:
pip install piexif-1.1.0b0-py2.py3-none-any.whl --root /tmp/piexif
//Replace piexif-1.1.0b0-py2.py3-none-any.whl with the actual installation package name.
Creating a Dependency for a Node.js Function¶
Ensure that the corresponding Node.js version has been installed in the environment.
To install the MySQL dependency for a Node.js 8.10 function, run the following command:
npm install mysql --save
The node_modules folder is generated under the current directory.
Linux OS
Run the following command to generate a ZIP package.
zip -rq mysql-node8.10.zip node_modules
The required dependency is generated.
Windows OS
Compress node_modules into a ZIP file.
To install multiple dependencies, create a package.json file first. For example, enter the following content into the package.json file and then run the following command:
{
"name": "test",
"version": "1.0.0",
"dependencies": {
"redis": "~2.8.0",
"mysql": "~2.17.1"
}
}
npm install --save
Note
Do not run the CNPM command to generate Node.js dependencies.
Compress node_modules into a ZIP package. This generates a dependency that contains both MySQL and Redis.
For other Node.js versions, you can create dependencies in the way stated above.
Creating a Dependency for a Java Function¶
When you compile a function using Java, dependencies need to be compiled locally.