Fluent-package-builder (المعروف سابقًا باسم td-agent-builder، تمت إعادة تسميته في أغسطس 2021) هو نظام بناء جديد لـ td-agent والذي يهدف إلى استبدال نظام البناء التقليدي omnibus-td-agent نظرًا لأنه يعاني من العديد من المشكلات بسبب قيود Omnibus.
ملحوظة: ناقشنا سبب ضرورة إعادة العلامة التجارية إعادة تسمية العلامة التجارية td-agent-builder
td-agent
إلى fluent-package
fluent-package
ليتم تثبيتها ضمن /opt/fluent
/usr/sbin/td-agent
و /usr/sbin/td-agent-gem
إلى /usr/sbin/fluentd
و /usr/sbin/fluent-gem
/opt/fluent/share/fluentd.conf
fluentd-apt-source
إلى حزمة deb fluent-apt-source
للحفاظ على apt-line وحلقة المفاتيحembedded
بواسطة Omnibus/opt/td-agent/bin/fluent-cat
بدلاً من /opt/td-agent/embedded/bin/fluent-cat
apt install
، ثم يمكنك تثبيت td-agent عبر apt install td-agent
.راجع أيضًا هذه المشكلة للتعرف على المشكلات الشاملة.
بعد تثبيت البرنامج أعلاه، تحتاج إلى تمكين ميزات إضافية من بوويرشيل (كمسؤول).
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
dism.exe /online /enable-feature /featurename:Containers /all /norestart
ثم أعد تشغيل الويندوز.
% rake yum:build
افتراضيًا، سيتم إنشاء مستودعات yum للمنصات التالية ضمن دليل Fluent-package/yum/repositories/:
يمكنك اختيار الأنظمة الأساسية المستهدفة حسب متغير البيئة YUM_TARGETS
مثل هذا:
% rake yum:build YUM_TARGETS= " rockylinux-8,almalinux-9 "
يمكنك العثور على منصات أخرى مدعومة ضمن دليل Fluent-package/yum.
يمكنك أيضًا إنشاء حزم لمنصات AArch64 مثل هذا:
% rake yum:build YUM_TARGETS= " amazonlinux-2023-aarch64 "
لكن إذا كنت تستخدم منصات GNU/Linux الأقدم (مثل Ubuntu 18.04 أو قبله) كنظام التشغيل المضيف لديك، فستحتاج إلى نسخ qemu-aarch64-static إلى الدليل الأساسي للهدف:
% export TARGET_BASE= " centos-8 "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-aarch64-static fluent-package/yum/ ${TARGET_BASE}
% rake yum:build YUM_TARGETS= " ${TARGET_BASE} -aarch64 "
يمكنك أيضًا إنشاء حزم لمنصة ppc64le مثل هذا:
% rake yum:build YUM_TARGETS= " centos-8-ppc64le "
لكن إذا كنت تستخدم منصات GNU/Linux الأقدم (مثل Ubuntu 18.04 أو قبله) كنظام التشغيل المضيف لديك، فستحتاج إلى نسخ qemu-ppc64le-static إلى الدليل الأساسي للهدف:
% export TARGET_BASE= " centos-8 "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-ppc64le-static fluent-package/yum/ ${TARGET_BASE}
% rake yum:build YUM_TARGETS= " ${TARGET_BASE} -ppc64le "
% rake apt:build
افتراضيًا، سيتم إنشاء مستودعات apt للمنصات التالية ضمن دليل Fluent-package/apt/repositories/:
يمكنك اختيار الأنظمة الأساسية المستهدفة عن طريق متغير البيئة APT_TARGETS
مثل هذا:
% rake apt:build APT_TARGETS= " debian-bookworm,ubuntu-jammy "
يمكنك العثور على منصات أخرى مدعومة ضمن دليل Fluent-package/apt.
يمكنك أيضًا إنشاء حزم لمنصات AArch64 مثل هذا:
% rake apt:build APT_TARGETS= " ubuntu-jammy-arm64 "
لكن إذا كنت تستخدم منصات GNU/Linux الأقدم (مثل Ubuntu 18.04 أو قبله) كنظام التشغيل المضيف لديك، فستحتاج إلى نسخ qemu-aarch64-static إلى الدليل الأساسي للهدف:
% export TARGET_BASE= " ubuntu-bionic "
% sudo apt install qemu-user-static
% cd /path/to/fluent-package-builder
% cp /usr/bin/qemu-aarch64-static fluent-package/apt/ ${TARGET_BASE}
% rake apt:build APT_TARGETS= " ${TARGET_BASE} -arm64 "
% rake msi:build
سيتم إنشاء حزمة Fluent-package-${version}-x64.msi ضمن دليل Fluent-package/msi.
يمكنك استخدامه مع MSYS2 لبناء الأحجار الكريمة ذات ملحق C.
يمكن لـ MSI المتضمن Ruby اكتشاف بيئة MSYS2. لذلك، يمكنك تثبيت جوهرة C المضمنة مع MSYS2.
على سبيل المثال)
إعداد بيئة بناء جوهرة ملحق C:
cmd> ridk install 2
...
cmd> ridk install 3
قم بتثبيت الجوهرة عبر ridk exec fluent-gem install
:
cmd> ridk exec fluent-gem install winevt_c
% sudo mkdir /opt/fluent
% sudo chown $( whoami ) /opt/fluent
% rake dmg:selfbuild
سيتم إنشاء حزمة Fluent-package-${version}.dmg ضمن دليل Fluent-package/dmg.
الحزمة المضمنة لـ GitHub Actions جاهزة للتشغيل على نظام التشغيل macOS 10.15 (Catalina).
تأكد من السماح لك بالوصول المساعد. في تفضيلات النظام > الأمان والخصوصية > الخصوصية > إمكانية الوصول، يجب عليك السماح بـ Terminal.app هناك.
ملاحظة: بما أن الترخيص موجود على مستوى التطبيق على Terminal.app، فإنه يسمح لأي برنامج نصي يتم تشغيله من Terminal.app بتنفيذ البرمجة النصية لواجهة المستخدم الرسومية.
cd fluent-package && rake lockfile:update
% cd fluent-package
% rake version:update
% git diff # Check the change log
% git commit -a
% rake apt:build
% rake yum:build
% rake msi:build
يفترض أن Gemfile يعمل مع ميزة الأنظمة الأساسية المتعددة لـ Bundler، لذلك يجب أن يكون إصدار المجمع 2.2.0 أو أحدث.