DigitalOcean Functions, जिसे "DO Functions" भी कहा जाता है, एक सर्वरलेस कंप्यूटिंग प्लेटफॉर्म है जो आपको अंदर्निहित इंफ्रास्ट्रक्चर की चिंता किए बिना कोड चलाने की अनुमति देता है। DO Functions के साथ, आप "फ़ंक्शन" के रूप में अपना कोड लिख सकते हैं और डिप्लॉय कर सकते हैं जो API, HTTP अनुरोधों (यदि सक्षम है) या क्रॉन के माध्यम से ट्रिगर किए जा सकते हैं। ये फ़ंक्शन पूरी तरह से प्रबंधित वातावरण में निष्पादित होते हैं, इसलिए आपको स्केलिंग, सुरक्षा, या रखरखाव की चिंता करने की आवश्यकता नहीं है।
DO में, एक फ़ंक्शन बनाने के लिए पहले आपको नेमस्पेस बनाना होगा जो फ़ंक्शनों को समूहित करेगा।
नेमस्पेस के अंदर आप फिर एक फ़ंक्शन बना सकते हैं।
ट्रिगर
फ़ंक्शन को REST API के माध्यम से ट्रिगर करने का तरीका (हमेशा सक्षम है, यह वह विधि है जिसका cli उपयोग करता है) एक प्रमाणीकरण टोकन के साथ एक अनुरोध ट्रिगर करके है:
देखने के लिए कि doctl cli टूल इस टोकन को कैसे प्राप्त कर रहा है (ताकि आप इसे पुनर्निर्माण कर सकें), निम्नलिखित कमांड पूरी नेटवर्क ट्रेस दिखाता है:
doctlserverlessconnect--trace
जब HTTP ट्रिगर सक्रिय होता है, एक वेब फंक्शन को इन HTTP methods GET, POST, PUT, PATCH, DELETE, HEAD और OPTIONS के माध्यम से आह्वानित किया जा सकता है।
DO functions में, पर्यावरण चर को एन्क्रिप्ट नहीं किया जा सकता (इस लेखन के समय में)।
मैंने CLI से उन्हें पढ़ने का कोई तरीका नहीं ढूंढा, लेकिन कंसोल से यह सीधा है।
फंक्शन URLs इस तरह दिखते हैं: https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>
गणना
# Namespacedoctlserverlessnamespaceslist# Functions (need to connect to a namespace)doctlserverlessconnectdoctlserverlessfunctionslistdoctlserverlessfunctionsinvoke<func-name>doctlserverlessfunctionsget<func-name># Logs of executionsdoctlserverlessactivationslistdoctlserverlessactivationsget<activation-id># Get all the info about executiondoctlserverlessactivationslogs<activation-id># get only the logs of executiondoctlserverlessactivationsresult<activation-id># get only the response result of execution# I couldn't find any way to get the env variables form the CLI