fluent-package-builder (sebelumnya dikenal sebagai td-agent-builder, diubah namanya pada Agustus 2021) adalah sistem build baru untuk td-agent yang bertujuan untuk menggantikan sistem build tradisional omnibus-td-agent karena memiliki beberapa masalah karena keterbatasan Omnibus.
CATATAN: Dibahas mengapa diperlukan re-branding Rebranding td-agent-builder
td-agent diubah namanya menjadi fluent-packagefluent-package diubah untuk diinstal di bawah /opt/fluent/usr/sbin/td-agent dan /usr/sbin/td-agent-gem diubah menjadi /usr/sbin/fluentd dan /usr/sbin/fluent-gem/opt/fluent/share/fluentd.conffluentd-apt-source diubah namanya menjadi paket deb fluent-apt-source untuk memelihara apt-line dan keyringembedded dengan omnibus/opt/td-agent/bin/fluent-cat alih-alih /opt/td-agent/embedded/bin/fluent-catapt install , lalu Anda dapat menginstal td-agent melalui apt install td-agent .Lihat juga masalah ini untuk masalah omnibus.
Setelah menginstal perangkat lunak di atas, Anda perlu mengaktifkan fitur tambahan dari PowerShell (sebagai admin).
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
dism.exe /online /enable-feature /featurename:Containers /all /norestart
Kemudian mulai ulang Windows.
% rake yum:buildSecara default, repositori yum untuk platform berikut akan dibangun di bawah direktori fluent-package/yum/repositories/:
Anda dapat memilih platform target berdasarkan variabel lingkungan YUM_TARGETS seperti ini:
% rake yum:build YUM_TARGETS= " rockylinux-8,almalinux-9 "Anda dapat menemukan platform lain yang didukung di direktori fluent-package/yum.
Anda juga dapat membuat paket untuk platform AArch64 seperti ini:
% rake yum:build YUM_TARGETS= " amazonlinux-2023-aarch64 "Namun jika Anda menggunakan platform GNU/Linux yang lebih lama (misalnya Ubuntu 18.04 atau sebelumnya) sebagai OS host, Anda perlu menyalin qemu-aarch64-static ke direktori dasar target:
% 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 "Anda juga dapat membuat paket untuk platform ppc64le seperti ini:
% rake yum:build YUM_TARGETS= " centos-8-ppc64le "Namun jika Anda menggunakan platform GNU/Linux yang lebih lama (misalnya Ubuntu 18.04 atau sebelumnya) sebagai OS host, Anda perlu menyalin qemu-ppc64le-static ke direktori dasar target:
% 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:buildSecara default, repositori apt untuk platform berikut akan dibangun di bawah direktori fluent-package/apt/repositories/:
Anda dapat memilih platform target berdasarkan variabel lingkungan APT_TARGETS seperti ini:
% rake apt:build APT_TARGETS= " debian-bookworm,ubuntu-jammy "Anda dapat menemukan platform lain yang didukung di direktori fluent-package/apt.
Anda juga dapat membuat paket untuk platform AArch64 seperti ini:
% rake apt:build APT_TARGETS= " ubuntu-jammy-arm64 "Namun jika Anda menggunakan platform GNU/Linux yang lebih lama (misalnya Ubuntu 18.04 atau sebelumnya) sebagai OS host, Anda perlu menyalin qemu-aarch64-static ke direktori dasar target:
% 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:buildPaket fluent-package-${version}-x64.msi akan dibuat di direktori fluent-package/msi.
Anda dapat menggunakan MSYS2 untuk pembuatan permata ekstensi C.
MSI yang menyertakan Ruby dapat mendeteksi lingkungan MSYS2. Jadi, Anda dapat menginstal permata yang menyertakan ekstensi C dengan MSYS2.
misalnya)
Siapkan lingkungan bangunan permata ekstensi C:
cmd> ridk install 2
...
cmd> ridk install 3 Instal permata melalui ridk exec fluent-gem install :
cmd> ridk exec fluent-gem install winevt_c % sudo mkdir /opt/fluent
% sudo chown $( whoami ) /opt/fluent
% rake dmg:selfbuildPaket fluent-package-${version}.dmg akan dibuat di direktori fluent-package/dmg.
Paket bawaan GitHub Actions siap dijalankan di macOS 10.15 (Catalina).
Pastikan untuk mengizinkan untuk diotorisasi untuk akses bantu. Di System Preferences > Security & Privacy > Privacy > Accessibility, Anda harus mengizinkan Terminal.app di sana.
CATATAN: Karena otorisasi berada pada tingkat aplikasi di Terminal.app, ini memungkinkan skrip apa pun yang dijalankan dari Terminal.app untuk melakukan pembuatan skrip GUI.
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
Diasumsikan bahwa Gemfile berfungsi dengan fitur multiplatform Bundler, jadi bundler harus versi 2.2.0 atau lebih baru.