[PR #199] [MERGED] feat: support NO_PROXY for initialization process #365

Closed
opened 2026-02-16 01:15:45 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-plugin-daemon/pull/199
Author: @kurokobo
Created: 4/12/2025
Status: Merged
Merged: 4/14/2025
Merged by: @Yeuoly

Base: mainHead: no_proxy


📝 Commits (1)

  • 2f4c51a feat: support NO_PROXY for initialization process

📊 Changes

6 files changed (+13 additions, -0 deletions)

View changed files

📝 internal/core/plugin_manager/launcher.go (+1 -0)
📝 internal/core/plugin_manager/local_runtime/environment_python.go (+3 -0)
📝 internal/core/plugin_manager/local_runtime/run.go (+3 -0)
📝 internal/core/plugin_manager/local_runtime/type.go (+3 -0)
📝 internal/core/plugin_manager/manager.go (+2 -0)
📝 internal/types/app/config.go (+1 -0)

📄 Description

Description

This PR adds support for NO_PROXY environment variable for initialization process.

Closes #168

Test

Pass the following environment variables and try to install any plugin.

    environment:
      HTTP_PROXY: http://proxy.example.com:8080/
      HTTPS_PROXY: http://proxy.example.com:8080/
      NO_PROXY: pypi.org,pythonhosted.org

Note that http://proxy.example.com:8080/ is a non-existing proxy, so all traffic which is routed through the proxy, it will always fail.
However, if NO_PROXY works, the installation should succeed.

Before

Even though pypi.org is in NO_PROXY, it is routed through a proxy, which causes installation to fail.

2025-04-12 23:42:40 2025/04/12 14:42:40 runtime_lifetime.go:80: [INFO]init environment for plugin langgenius/openai:0.0.16
2025-04-12 23:42:45 2025/04/12 14:42:45 runtime_lifetime.go:86: [ERROR]init environment failed: failed to install dependencies: exit status 2, output: error: Failed to fetch: `https://pypi.org/simple/dify-plugin/`
2025-04-12 23:42:45   Caused by: Could not connect, are you offline?
2025-04-12 23:42:45   Caused by: Request failed after 3 retries
2025-04-12 23:42:45   Caused by: error sending request for url (https://pypi.org/simple/dify-plugin/)
2025-04-12 23:42:45   Caused by: client error (Connect)
2025-04-12 23:42:45   Caused by: dns error: failed to lookup address information: Name or service not known
2025-04-12 23:42:45   Caused by: failed to lookup address information: Name or service not known
2025-04-12 23:42:45 , retry in 30s

After

Installation success without any errors.

2025-04-12 23:45:48 2025/04/12 14:45:48 runtime_lifetime.go:80: [INFO]init environment for plugin langgenius/openai:0.0.16
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing '.'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dify_plugin/config/config.py'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dify_plugin/interfaces/model/speech2text_model.py'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dpkt/stp.py'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/resolver/thread.py'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/tests/test__greenlet.py'......
2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/win32util.py'......
2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/httpx/_multipart.py'......
2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/_utils/_pep440.py'......
2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/core/tests/test_dlpack.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing './.venv/lib/python3.12/site-packages/numpy/f2py/tests/src/return_complex'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/lib/ufunclike.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/testing/setup.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/cli/_api/__init__.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/resources/uploads/uploads.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/beta/realtime/input_audio_buffer_committed_event.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/beta/threads/run.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/chat/chat_completion_user_message_param.py'......
2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing './.venv/lib/python3.12/site-packages/pkg_resources/tests/data/my-test-package_unpacked-egg/my_test_package-1.0-py3.7.egg'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/pydantic/v1/class_validators.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_distutils/command/build_scripts.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_distutils/versionpredicate.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_vendor/packaging/utils.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/command/build_ext.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/tests/test_distutils_adoption.py'......
2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/urllib3/_request_methods.py'......
2025-04-12 23:45:55 2025/04/12 14:45:55 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/yaml/emitter.py'......
2025-04-12 23:45:55 2025/04/12 14:45:55 environment_python.go:327: [INFO]pre-loaded the plugin langgenius/openai:0.0.16
2025-04-12 23:45:55 2025/04/12 14:45:55 run.go:144: [INFO]plugin langgenius/openai:0.0.16 started
2025-04-12 23:45:56 2025/04/12 14:45:56 stdio.go:160: [INFO]plugin langgenius/openai:0.0.16: Installed model: openai

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-plugin-daemon/pull/199 **Author:** [@kurokobo](https://github.com/kurokobo) **Created:** 4/12/2025 **Status:** ✅ Merged **Merged:** 4/14/2025 **Merged by:** [@Yeuoly](https://github.com/Yeuoly) **Base:** `main` ← **Head:** `no_proxy` --- ### 📝 Commits (1) - [`2f4c51a`](https://github.com/langgenius/dify-plugin-daemon/commit/2f4c51ad4aa04f13bddeb7cde26027f207f9dd18) feat: support NO_PROXY for initialization process ### 📊 Changes **6 files changed** (+13 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `internal/core/plugin_manager/launcher.go` (+1 -0) 📝 `internal/core/plugin_manager/local_runtime/environment_python.go` (+3 -0) 📝 `internal/core/plugin_manager/local_runtime/run.go` (+3 -0) 📝 `internal/core/plugin_manager/local_runtime/type.go` (+3 -0) 📝 `internal/core/plugin_manager/manager.go` (+2 -0) 📝 `internal/types/app/config.go` (+1 -0) </details> ### 📄 Description ## Description This PR adds support for `NO_PROXY` environment variable for initialization process. Closes #168 ## Test Pass the following environment variables and try to install any plugin. ```yaml environment: HTTP_PROXY: http://proxy.example.com:8080/ HTTPS_PROXY: http://proxy.example.com:8080/ NO_PROXY: pypi.org,pythonhosted.org ``` Note that `http://proxy.example.com:8080/` is a non-existing proxy, so all traffic which is routed through the proxy, it will always fail. However, if `NO_PROXY` works, the installation should succeed. ### Before Even though `pypi.org` is in `NO_PROXY`, it is routed through a proxy, which causes installation to fail. ```bash 2025-04-12 23:42:40 2025/04/12 14:42:40 runtime_lifetime.go:80: [INFO]init environment for plugin langgenius/openai:0.0.16 2025-04-12 23:42:45 2025/04/12 14:42:45 runtime_lifetime.go:86: [ERROR]init environment failed: failed to install dependencies: exit status 2, output: error: Failed to fetch: `https://pypi.org/simple/dify-plugin/` 2025-04-12 23:42:45 Caused by: Could not connect, are you offline? 2025-04-12 23:42:45 Caused by: Request failed after 3 retries 2025-04-12 23:42:45 Caused by: error sending request for url (https://pypi.org/simple/dify-plugin/) 2025-04-12 23:42:45 Caused by: client error (Connect) 2025-04-12 23:42:45 Caused by: dns error: failed to lookup address information: Name or service not known 2025-04-12 23:42:45 Caused by: failed to lookup address information: Name or service not known 2025-04-12 23:42:45 , retry in 30s ``` ### After Installation success without any errors. ```bash 2025-04-12 23:45:48 2025/04/12 14:45:48 runtime_lifetime.go:80: [INFO]init environment for plugin langgenius/openai:0.0.16 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing '.'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dify_plugin/config/config.py'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dify_plugin/interfaces/model/speech2text_model.py'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/dpkt/stp.py'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/resolver/thread.py'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/tests/test__greenlet.py'...... 2025-04-12 23:45:51 2025/04/12 14:45:51 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/gevent/win32util.py'...... 2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/httpx/_multipart.py'...... 2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/_utils/_pep440.py'...... 2025-04-12 23:45:52 2025/04/12 14:45:52 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/core/tests/test_dlpack.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing './.venv/lib/python3.12/site-packages/numpy/f2py/tests/src/return_complex'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/lib/ufunclike.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/numpy/testing/setup.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/cli/_api/__init__.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/resources/uploads/uploads.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/beta/realtime/input_audio_buffer_committed_event.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/beta/threads/run.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/openai/types/chat/chat_completion_user_message_param.py'...... 2025-04-12 23:45:53 2025/04/12 14:45:53 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Listing './.venv/lib/python3.12/site-packages/pkg_resources/tests/data/my-test-package_unpacked-egg/my_test_package-1.0-py3.7.egg'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/pydantic/v1/class_validators.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_distutils/command/build_scripts.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_distutils/versionpredicate.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/_vendor/packaging/utils.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/command/build_ext.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/setuptools/tests/test_distutils_adoption.py'...... 2025-04-12 23:45:54 2025/04/12 14:45:54 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/urllib3/_request_methods.py'...... 2025-04-12 23:45:55 2025/04/12 14:45:55 environment_python.go:294: [INFO]pre-compiling langgenius/openai:0.0.16 - Compiling './.venv/lib/python3.12/site-packages/yaml/emitter.py'...... 2025-04-12 23:45:55 2025/04/12 14:45:55 environment_python.go:327: [INFO]pre-loaded the plugin langgenius/openai:0.0.16 2025-04-12 23:45:55 2025/04/12 14:45:55 run.go:144: [INFO]plugin langgenius/openai:0.0.16 started 2025-04-12 23:45:56 2025/04/12 14:45:56 stdio.go:160: [INFO]plugin langgenius/openai:0.0.16: Installed model: openai ``` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 01:15:45 -05:00
yindo closed this issue 2026-02-16 01:15:45 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-plugin-daemon#365