fluent-package-builder (anteriormente conocido como td-agent-builder, pasó a llamarse en agosto de 2021) es un nuevo sistema de compilación para td-agent que tiene como objetivo reemplazar el sistema de compilación tradicional omnibus-td-agent ya que tiene varios problemas. debido a las limitaciones de Omnibus.
NOTA: Se analizó por qué es necesario cambiar la marca. Cambio de marca td-agent-builder
td-agent
pasó a llamarse fluent-package
fluent-package
se cambió para instalarlo en /opt/fluent
/usr/sbin/td-agent
y /usr/sbin/td-agent-gem
se cambiaron a /usr/sbin/fluentd
y /usr/sbin/fluent-gem
/opt/fluent/share/fluentd.conf
fluentd-apt-source
a paquete deb fluent-apt-source
para mantener apt-line y keyringembedded
por ómnibus/opt/td-agent/bin/fluent-cat
en lugar de /opt/td-agent/embedded/bin/fluent-cat
apt install
, luego puede instalar td-agent mediante apt install td-agent
.Consulte también este número para problemas generales.
Después de instalar el software anterior, debe habilitar funciones adicionales desde PowerShell (como administrador).
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
dism.exe /online /enable-feature /featurename:Containers /all /norestart
Luego reinicie Windows.
% rake yum:build
De forma predeterminada, los repositorios de yum para las siguientes plataformas se crearán en el directorio fluent-package/yum/repositories/:
Puede elegir plataformas de destino mediante la variable de entorno YUM_TARGETS
como esta:
% rake yum:build YUM_TARGETS= " rockylinux-8,almalinux-9 "
Puede encontrar otras plataformas compatibles en el directorio fluent-package/yum.
También puede crear paquetes para plataformas AArch64 como este:
% rake yum:build YUM_TARGETS= " amazonlinux-2023-aarch64 "
Pero si utiliza plataformas GNU/Linux más antiguas (por ejemplo, Ubuntu 18.04 o anterior) como sistema operativo host, debe copiar qemu-aarch64-static en el directorio base del destino:
% 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 "
También puedes crear paquetes para la plataforma ppc64le como este:
% rake yum:build YUM_TARGETS= " centos-8-ppc64le "
Pero si utiliza plataformas GNU/Linux más antiguas (por ejemplo, Ubuntu 18.04 o anterior) como sistema operativo host, debe copiar qemu-ppc64le-static en el directorio base del destino:
% 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
De forma predeterminada, los repositorios aptos para las siguientes plataformas se crearán en el directorio fluent-package/apt/repositories/:
Puede elegir plataformas de destino mediante la variable de entorno APT_TARGETS
como esta:
% rake apt:build APT_TARGETS= " debian-bookworm,ubuntu-jammy "
Puede encontrar otras plataformas compatibles en el directorio fluent-package/apt.
También puede crear paquetes para plataformas AArch64 como este:
% rake apt:build APT_TARGETS= " ubuntu-jammy-arm64 "
Pero si utiliza plataformas GNU/Linux más antiguas (por ejemplo, Ubuntu 18.04 o anterior) como sistema operativo host, debe copiar qemu-aarch64-static en el directorio base del destino:
% 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
Se creará un paquete fluent-package-${version}-x64.msi en el directorio fluent-package/msi.
Puede usarlo con MSYS2 para la construcción de gemas de extensión C.
MSI incluido Ruby puede detectar el entorno MSYS2. Por lo tanto, puede instalar la gema incluida en la extensión C con MSYS2.
p.ej)
Prepare el entorno de construcción de gemas de extensión C:
cmd> ridk install 2
...
cmd> ridk install 3
Instale la gema mediante 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
Se creará un paquete fluent-package-${version}.dmg en el directorio fluent-package/dmg.
El paquete integrado de GitHub Actions está listo para ejecutarse en macOS 10.15 (Catalina).
Asegúrese de permitir la autorización para el acceso de asistencia. En Preferencias del Sistema > Seguridad y Privacidad > Privacidad > Accesibilidad, debes permitir Terminal.app allí.
NOTA: Dado que la autorización se encuentra en el nivel de la aplicación en Terminal.app, permite que cualquier secuencia de comandos que se ejecute desde Terminal.app realice secuencias de comandos 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
Se supone que Gemfile funciona con la función multiplataforma de Bundler, por lo que el paquete debe ser 2.2.0 o posterior.