قواعد¶
هر فایل تابع هنگام شروع ربات و اجرای
validate بررسی میشود. اگر یک فایل نادرست باشد،
هیچچیز اجرا نمیشود؛ بنابراین اشتباهها پیش از فعال شدن منو پیدا میشوند.
کدام فایلها خوانده میشوند¶
- فقط فایلهای با پسوند
.yamlیا.ymlخوانده میشوند. بقیه نادیده گرفته میشوند. - زیردایرکتوریهای
function_directoryنیز خوانده میشوند. - هر فایل باید دقیقاً یک تابع را توصیف کند.
نامگذاری¶
nameالزامی است و باید با^[A-Za-z0-9._-]+$مطابقت داشته باشد: حروف، ارقام،.،-و_. فاصله مجاز نیست.- نامها بدون توجه به بزرگی حروف یکتا هستند.
Deployوdeployحتی اگر در فایلهای متفاوت باشند با هم تداخل دارند. - نامهای رزروشده ممنوعاند. نمیتوانید تابعی را
commandیاscriptبنامید؛ این نامها متعلق به توابع توکار هستند.
فرمان¶
runالزامی است. فرمان را همراه جایگزینها در محل مقادیر بنویسید.- نحو جایگزین هنگام اعتبارسنجی پیکربندی بررسی میشود؛ بنابراین
{{ناقص زود گزارش میشود.
پارامترها¶
- هر پارامتر به
nameنیاز دارد که از همان قاعدهٔ نویسههای نام تابع پیروی کند. typeبایدstring،intیاboolباشد. حذف آن یعنیstring. مقادیر و پیشفرضهای تعریفشده باintیاboolبررسی میشوند.- نام پارامتر نمیتواند یکی از تنظیمات دکمه باشد:
name،type،icon،id،function،confirm،timeout،workdir،env،columnsیاitems. نامهایcommand،pathوargsمجاز هستند. - هر مقدار نوشتهشده روی دکمه باید با پارامتری که تابع آن دکمه تعریف کرده مطابقت داشته باشد.
فیلد run تابع فقط میتواند از جایگزینهای پارامترهای تعریفشده استفاده کند.
جایگزین تعریفنشده خطاست.
غلطهای تایپی خطا هستند¶
کلیدهای ناشناخته رد میشوند. غلطی مانند requird: بهجای required:
بهجای نادیده گرفته شدن، اعتبارسنجی را متوقف میکند.
این فایل بارگذاری نمیشود
مقادیر الزامی و پیشفرض¶
- پارامتر الزامی بدون مقدار اعتبارسنجی را با پیامی مانند
required parameter "args" for function "greet" is missingناموفق میکند. - مقدار موجود اما خالی، ارائهنشده بهشمار میآید.
- پارامتر اختیاری از
defaultخود استفاده میکند. اگرdefaultنداشته باشد، خالی میشود و بخشهای اختیاری فرمان به این روش حذف میشوند.
الزامی و اختیاری در یک فایل
functions/tail-log.yaml
name: tail-log
run: "tail -n {{.args}} {{.path}}"
params:
- name: path
required: true
description: مسیر فایل گزارش
- name: args
default: "200"
description: تعداد خطها
دکمهای که فقط path را تنظیم کند، فرمان
tail -n 200 /var/log/app.log را اجرا میکند.
مرتبط¶
- ساختار فایل — شرح همهٔ فیلدها
- جایگزینها — نوشتن فرمان
run - CLI ← validate — اجرای دستی بررسیها