diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 2c4e54f1..c887e898 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -1,8 +1,8 @@ # GitHub Actions CI/CD Documentation -This directory contains the GitHub Actions workflows and reusable actions for the FluentDo Agent project. The CI/CD pipeline automates building, testing, packaging, and releasing the agent across multiple platforms. +This directory contains the GitHub Actions workflows and reusable actions for the Agent project. The CI/CD pipeline automates building, testing, packaging, and releasing the agent across multiple platforms. -[![Coverage Status](https://coveralls.io/repos/github/FluentDo/agent/badge.svg)](https://coveralls.io/github/FluentDo/agent) +[![Coverage Status](https://coveralls.io/repos/github/telemetryforge/agent/badge.svg)](https://coveralls.io/github/telemetryforge/agent) ## Table of Contents @@ -72,7 +72,7 @@ The CI/CD pipeline is designed to: - Push of version tags (`v*`) - Manual workflow dispatch -**Purpose:** Main CI/CD workflow that orchestrates building, testing, and releasing the FluentDo Agent. +**Purpose:** Main CI/CD workflow that orchestrates building, testing, and releasing the Agent. **Jobs:** @@ -100,7 +100,7 @@ The CI/CD pipeline is designed to: **Outputs:** -- Container images pushed to `ghcr.io/fluentdo/agent` +- Container images pushed to `ghcr.io/telemetryforge/agent` - Linux packages (DEB, RPM) - Windows packages (EXE, MSI, ZIP) - macOS packages (PKG) @@ -196,7 +196,7 @@ The CI/CD pipeline is designed to: **Inputs:** -- `image` - Full image name (default: `ghcr.io/fluentdo/agent`) +- `image` - Full image name (default: `ghcr.io/telemetryforge/agent`) - `image-tag` - Image tag to test (required) - `ref` - Repository reference to use (default: `main`) @@ -548,8 +548,8 @@ The CI/CD pipeline is designed to: **Key Features:** -- UBI image promotion to `ghcr.io/fluentdo/agent:version` -- Debian image promotion to `ghcr.io/fluentdo/agent:version-slim` +- UBI image promotion to `ghcr.io/telemetryforge/agent:version` +- Debian image promotion to `ghcr.io/telemetryforge/agent:version-slim` - Red Hat certification submission - Skopeo for multi-arch image copying - Preflight validation before submission @@ -873,9 +873,9 @@ Example structure: Common environment variables used across workflows: -- `FLUENTDO_AGENT_VERSION` - Version being built -- `FLUENTDO_AGENT_IMAGE` - Container image name -- `FLUENTDO_AGENT_TAG` - Container image tag +- `TELEMETRY_FORGE_AGENT_VERSION` - Version being built +- `TELEMETRY_FORGE_AGENT_IMAGE` - Container image name +- `TELEMETRY_FORGE_AGENT_TAG` - Container image tag - `FLUENT_BIT_BINARY` - Path to Fluent Bit binary for testing - `FLB_NIGHTLY_BUILD` - Nightly build information - `VCPKG_BUILD_TYPE` - vcpkg build type (Windows) @@ -970,6 +970,6 @@ When adding new workflows: For issues or questions: -- GitHub Issues: +- GitHub Issues: - Documentation: - Email: diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index ff363bb4..b13d0e17 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -62,7 +62,7 @@ jobs: # Look for the default line in the Dockerfile id: set-version run: | - VERSION=$(grep "ARG FLUENTDO_AGENT_VERSION=" Dockerfile.ubi | cut -d '=' -s -f 2 -) + VERSION=$(grep "ARG TELEMETRY_FORGE_AGENT_VERSION=" Dockerfile.ubi | cut -d '=' -s -f 2 -) # For releases we use the tag if [[ '${{ steps.set-build-type.outputs.build-type }}' == 'release' ]]; then TAG_NAME=${GITHUB_REF#refs/tags/} @@ -106,8 +106,8 @@ jobs: fail-fast: false matrix: image-base: - - "ghcr.io/fluentdo/agent/ubi" - - "ghcr.io/fluentdo/agent/debian" + - "ghcr.io/telemetryforge/agent/ubi" + - "ghcr.io/telemetryforge/agent/debian" permissions: contents: read packages: write @@ -174,8 +174,8 @@ jobs: ref: ${{ github.ref }} nightly-build-info: ${{ needs.get-meta.outputs.date }} - # We want to copy the UBI image to ghcr.io/fluentdo/agent:version and - # the distroless image to ghcr.io/fluentdo/agent:version-slim + # We want to copy the UBI image to ghcr.io/telemetryforge/agent:version and + # the distroless image to ghcr.io/telemetryforge/agent:version-slim copy-common-images: # Only run for releases to reduce unnecessary load on the registry if: ${{ startsWith(github.ref, 'refs/tags/v') }} @@ -211,8 +211,8 @@ jobs: fail-fast: false matrix: image-base: - - "ghcr.io/fluentdo/agent/ubi" - - "ghcr.io/fluentdo/agent/debian" + - "ghcr.io/telemetryforge/agent/ubi" + - "ghcr.io/telemetryforge/agent/debian" test-packages: name: Test packages @@ -248,7 +248,7 @@ jobs: - build-image - test-containers # TODO: remove once failures are resolved to ensure auto-release job still goes ahead with latest commit - # https://github.com/FluentDo/agent/issues/73 + # https://github.com/telemetryforge/agent/issues/73 # - test-packages # Add additional jobs here as required that must complete runs-on: ubuntu-latest @@ -284,8 +284,8 @@ jobs: contents: write id-token: write env: - UBI_IMAGE_NAME: ghcr.io/fluentdo/agent/ubi - DISTROLESS_IMAGE_NAME: ghcr.io/fluentdo/agent/debian + UBI_IMAGE_NAME: ghcr.io/telemetryforge/agent/ubi + DISTROLESS_IMAGE_NAME: ghcr.io/telemetryforge/agent/debian TAG: ${{ needs.build-image.outputs.version }} steps: - uses: actions/checkout@v6 @@ -378,15 +378,15 @@ jobs: --remove-signatures \ --src-creds "${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}" \ "docker://${{ env.UBI_IMAGE_NAME }}:${{ env.TAG }}" \ - "oci-archive:output/fluentdo-agent-container.tar" + "oci-archive:output/telemetryforge-agent-container.tar" skopeo copy \ --all \ --remove-signatures \ --src-creds "${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}" \ "docker://${{ env.DISTROLESS_IMAGE_NAME }}:${{ env.TAG }}" \ - "oci-archive:output/fluentdo-agent-container-slim.tar" - tar -czvf output/fluentdo-agent-container.tar.gz output/fluentdo-agent-container.tar output/fluentdo-agent-container-slim.tar - rm -f output/fluentdo-agent-container.tar output/fluentdo-agent-container-slim.tar + "oci-archive:output/telemetryforge-agent-container-slim.tar" + tar -czvf output/telemetryforge-agent-container.tar.gz output/telemetryforge-agent-container.tar output/telemetryforge-agent-container-slim.tar + rm -f output/telemetryforge-agent-container.tar output/telemetryforge-agent-container-slim.tar shell: bash - name: Construct release info @@ -426,7 +426,7 @@ jobs: with: append_body: true body: | - Fluent Do Agent release for ${{ github.ref_name }} version + Telemetry Forge Agent release for ${{ github.ref_name }} version Version: ${{ needs.get-meta.outputs.version }} OSS Version: ${{ needs.get-meta.outputs.oss-version }} @@ -443,7 +443,7 @@ jobs: *.spdx output/*.json deliverables.tar.gz - output/fluentdo-agent-container.tar.gz + output/telemetryforge-agent-container.tar.gz output/package-macos-* output/package-windows-* fail_on_unmatched_files: false @@ -462,7 +462,7 @@ jobs: uses: google-github-actions/upload-cloud-storage@v3 with: path: output/ - destination: fluentdo-agent-${{ needs.get-meta.outputs.build-type }}/${{ needs.get-meta.outputs.version }}/ + destination: telemetryforge-agent-${{ needs.get-meta.outputs.build-type }}/${{ needs.get-meta.outputs.version }}/ update-docs: needs: @@ -470,20 +470,7 @@ jobs: - release if: ${{ startsWith(github.ref, 'refs/tags/v') }} name: Update documentation on release - uses: fluentdo/documentation/.github/workflows/call-add-mapping-version.yaml@main + uses: telemetryforge/documentation/.github/workflows/call-add-mapping-version.yaml@main with: agent-version: ${{ needs.get-meta.outputs.version }} oss-version: ${{ needs.get-meta.outputs.oss-version }} - - update-homebrew: - name: Update homebrew on release - if: ${{ startsWith(github.ref, 'refs/tags/v') }} - needs: - - get-meta - - release - - build-macos - uses: fluentdo/homebrew-fluentdo-agent/.github/workflows/call-update-homebrew.yaml@main - with: - version: ${{ github.ref_name }} - secrets: - github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/call-build-containers.yaml b/.github/workflows/call-build-containers.yaml index 16aee42a..fd54a8d0 100644 --- a/.github/workflows/call-build-containers.yaml +++ b/.github/workflows/call-build-containers.yaml @@ -16,7 +16,7 @@ on: description: The base name to use for images. required: false type: string - default: "ghcr.io/fluentdo/agent" + default: "ghcr.io/telemetryforge/agent" definition: description: The Dockerfile definition to use. required: false @@ -26,7 +26,7 @@ on: description: The Dockerhub username to use for authenticated pulls. required: false type: string - default: "fluentdo" + default: "telemetryforge" amd-runner-label: description: The label to use for the runner (if not specified then the default ubuntu-latest or equivalent is used). required: false @@ -76,7 +76,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref }} fetch-depth: 0 @@ -84,7 +84,7 @@ jobs: run: ./scripts/setup-code.sh shell: bash env: - FLUENTDO_AGENT_VERSION: ${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION: ${{ inputs.version }} - name: Deltas run: git diff @@ -120,15 +120,15 @@ jobs: labels: | build-date={{date 'YYYYMMDD-HHmmss'}} version=${{ inputs.version }} - io.k8s.description=FluentDo Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months. - io.k8s.display-name=FluentDo Agent - io.openshift.tags=observability,logging,log-aggregation,fluentdo,fluent-bit - url=https://fluent.do - vendor=FluentDo at https://fluent.do - maintainer=FluentDo via info@fluent.do - name=FluentDo Agent - description=FluentDo Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months. - summary=FluentDo Agent is an Enterprise hardened version of Fluent Bit + io.k8s.description=Telemetry Forge Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months. + io.k8s.display-name=Telemetry Forge Agent + io.openshift.tags=observability,logging,log-aggregation,telemetryforge,fluent-bit + url=https://telemetryforge.io + vendor=Telemetry Forge at https://telemetryforge.io + maintainer=Telemetry Forge via info@fluent.do + name=Telemetry Forge Agent + description=Telemetry Forge Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months. + summary=Telemetry Forge Agent is an Enterprise hardened version of Fluent Bit - name: Build and push by digest the standard ${{ matrix.target }} image id: production @@ -143,7 +143,7 @@ jobs: # Make sure we push our custom labels to the image labels: ${{ steps.meta.outputs.labels }} build-args: | - FLUENTDO_AGENT_VERSION=${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION=${{ inputs.version }} provenance: false - name: Export ${{ matrix.target }} digest @@ -199,7 +199,7 @@ jobs: platforms: linux/amd64 target: test build-args: | - FLUENTDO_AGENT_VERSION=${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION=${{ inputs.version }} provenance: false push: true tags: ${{ steps.meta-test.outputs.tags }} diff --git a/.github/workflows/call-build-linux-packages.yaml b/.github/workflows/call-build-linux-packages.yaml index 95886fb7..49f5046d 100644 --- a/.github/workflows/call-build-linux-packages.yaml +++ b/.github/workflows/call-build-linux-packages.yaml @@ -68,13 +68,13 @@ jobs: uses: actions/checkout@v6 with: ref: ${{ inputs.ref }} - repository: FluentDo/agent + repository: telemetryforge/agent - name: Ensure we apply specific version from tag run: ./scripts/setup-code.sh shell: bash env: - FLUENTDO_AGENT_VERSION: ${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION: ${{ inputs.version }} - name: Deltas run: git diff diff --git a/.github/workflows/call-build-macos-packages.yaml b/.github/workflows/call-build-macos-packages.yaml index 827c370e..126fbfa5 100644 --- a/.github/workflows/call-build-macos-packages.yaml +++ b/.github/workflows/call-build-macos-packages.yaml @@ -38,7 +38,7 @@ jobs: uses: actions/checkout@v6 with: ref: ${{ inputs.ref }} - repository: FluentDo/agent + repository: telemetryforge/agent - name: Install dependencies run: | @@ -65,7 +65,7 @@ jobs: run: ./scripts/setup-code.sh shell: bash env: - FLUENTDO_AGENT_VERSION: ${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION: ${{ inputs.version }} - name: Ensure we have a build directory run: mkdir -p source/build @@ -93,7 +93,7 @@ jobs: - name: Check linkage continue-on-error: true run: | - DYLD_PRINT_LIBRARIES=1 DYLD_PRINT_LIBRARIES_POST_LAUNCH=1 DYLD_PRINT_RPATHS=1 bin/fluentdo-agent --dry-run + DYLD_PRINT_LIBRARIES=1 DYLD_PRINT_LIBRARIES_POST_LAUNCH=1 DYLD_PRINT_RPATHS=1 bin/telemetryforge-agent --dry-run working-directory: source/build - name: Upload build packages @@ -101,5 +101,5 @@ jobs: with: name: package-macos-${{ matrix.config.package }} path: | - source/build/fluentdo-agent-*.pkg + source/build/telemetryforge-agent-*.pkg if-no-files-found: error diff --git a/.github/workflows/call-build-windows-packages.yaml b/.github/workflows/call-build-windows-packages.yaml index a9a0c1d1..ee8dffe4 100644 --- a/.github/workflows/call-build-windows-packages.yaml +++ b/.github/workflows/call-build-windows-packages.yaml @@ -42,13 +42,13 @@ jobs: uses: actions/checkout@v6 with: ref: ${{ inputs.ref }} - repository: FluentDo/agent + repository: telemetryforge/agent - name: Ensure we apply specific version from tag run: ./scripts/setup-code.sh shell: bash env: - FLUENTDO_AGENT_VERSION: ${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION: ${{ inputs.version }} - name: Deltas run: git diff @@ -144,8 +144,8 @@ jobs: -DFLB_LIBYAML_DIR='C:\vcpkg\installed\${{ matrix.config.vcpkg_triplet }}' ` -DLIBGIT2_INCLUDE_DIR='C:\vcpkg\installed\${{ matrix.config.vcpkg_triplet }}\include' ` -DLIBGIT2_LIBRARY='C:\vcpkg\installed\${{ matrix.config.vcpkg_triplet }}\lib\git2.lib' ` - -DFLUENTDO_AGENT_DISTRO=${{ matrix.config.distro }} ` - -DFLUENTDO_AGENT_PACKAGE_TYPE=PACKAGE ` + -DTELEMETRY_FORGE_AGENT_DISTRO=${{ matrix.config.distro }} ` + -DTELEMETRY_FORGE_AGENT_PACKAGE_TYPE=PACKAGE ` -DFLB_IN_CALYPTIA_FLEET=Off ` -DFLB_IN_DOCKER=Off ` -DFLB_IN_DOCKER_EVENTS=Off ` @@ -185,7 +185,7 @@ jobs: with: name: package-windows-${{ matrix.config.arch }} path: | - source/build/fluentdo-agent-*.exe - source/build/fluentdo-agent-*.msi - source/build/fluentdo-agent-*.zip + source/build/telemetryforge-agent-*.exe + source/build/telemetryforge-agent-*.msi + source/build/telemetryforge-agent-*.zip if-no-files-found: error diff --git a/.github/workflows/call-publish-release-images.yaml b/.github/workflows/call-publish-release-images.yaml index 2f46aed8..f3373e07 100644 --- a/.github/workflows/call-publish-release-images.yaml +++ b/.github/workflows/call-publish-release-images.yaml @@ -10,8 +10,8 @@ on: github-token: required: true env: - UBI_IMAGE_NAME: ghcr.io/fluentdo/agent/ubi - DISTROLESS_IMAGE_NAME: ghcr.io/fluentdo/agent/debian + UBI_IMAGE_NAME: ghcr.io/telemetryforge/agent/ubi + DISTROLESS_IMAGE_NAME: ghcr.io/telemetryforge/agent/debian jobs: promote-ghcr-images: name: Promote container images to top-level ghcr.io registries @@ -20,7 +20,7 @@ jobs: contents: read packages: write env: - OUTPUT_IMAGE_NAME: ghcr.io/fluentdo/agent + OUTPUT_IMAGE_NAME: ghcr.io/telemetryforge/agent TAG: ${{ inputs.version }} steps: - name: Log in to the Container registry @@ -72,7 +72,7 @@ jobs: id-token: write env: # We must match up the official image we have used for publishing upstream - RHEL_SOURCE_IMAGE: ghcr.io/fluentdo/agent + RHEL_SOURCE_IMAGE: ghcr.io/telemetryforge/agent needs: # We must use the top-level image here - see above - promote-ghcr-images diff --git a/.github/workflows/call-test-containers-k8s.yaml b/.github/workflows/call-test-containers-k8s.yaml index f7f2d5e3..5e5e5b30 100644 --- a/.github/workflows/call-test-containers-k8s.yaml +++ b/.github/workflows/call-test-containers-k8s.yaml @@ -10,7 +10,7 @@ on: image: description: The full image name to test. required: false - default: "ghcr.io/fluentdo/agent" + default: "ghcr.io/telemetryforge/agent" type: string image-tag: description: The image tag to test. @@ -29,14 +29,14 @@ jobs: name: Test K8S version ${{ inputs.kind-version }} with ${{ inputs.image }}:${{ inputs.image-tag }} runs-on: ubuntu-latest env: - FLUENTDO_AGENT_IMAGE: ${{ inputs.image }} - FLUENTDO_AGENT_TAG: ${{ inputs.image-tag }} + TELEMETRY_FORGE_AGENT_IMAGE: ${{ inputs.image }} + TELEMETRY_FORGE_AGENT_TAG: ${{ inputs.image-tag }} KIND_VERSION: ${{ inputs.kind-version }} steps: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref || github.ref }} token: ${{ secrets.github-token }} diff --git a/.github/workflows/call-test-containers.yaml b/.github/workflows/call-test-containers.yaml index 9fefba69..04a8ba8f 100644 --- a/.github/workflows/call-test-containers.yaml +++ b/.github/workflows/call-test-containers.yaml @@ -10,7 +10,7 @@ on: image: description: The full image name to test. required: false - default: "ghcr.io/fluentdo/agent" + default: "ghcr.io/telemetryforge/agent" type: string image-tag: description: The image tag to test. @@ -32,7 +32,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref || github.ref }} - name: Extract the configuration from the JSON file @@ -49,14 +49,14 @@ jobs: name: Run BATS tests for ${{ inputs.image }}/test:${{ inputs.image-tag }} runs-on: ubuntu-latest env: - FLUENTDO_AGENT_TAG: ${{ inputs.image-tag }} + TELEMETRY_FORGE_AGENT_TAG: ${{ inputs.image-tag }} permissions: packages: read steps: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref || github.ref }} token: ${{ secrets.github-token }} @@ -68,11 +68,11 @@ jobs: password: ${{ secrets.github-token }} - name: Run all functional BATS tests - run: docker run --rm -t "${FLUENTDO_AGENT_IMAGE}:${FLUENTDO_AGENT_TAG}" + run: docker run --rm -t "${TELEMETRY_FORGE_AGENT_IMAGE}:${TELEMETRY_FORGE_AGENT_TAG}" shell: bash env: # Use the BATS functional test image here - FLUENTDO_AGENT_IMAGE: ${{ inputs.image }}/test + TELEMETRY_FORGE_AGENT_IMAGE: ${{ inputs.image }}/test - name: Install BATS uses: bats-core/bats-action@3.0.1 @@ -91,7 +91,7 @@ jobs: shell: bash env: # We use the actual image here for testing against - FLUENTDO_AGENT_IMAGE: ${{ inputs.image }} + TELEMETRY_FORGE_AGENT_IMAGE: ${{ inputs.image }} # allow for some parallelity without GNU parallel, since it is not installed by default BATS_NO_PARALLELIZE_ACROSS_FILES: 1 BATS_NUMBER_OF_PARALLEL_JOBS: 4 @@ -106,7 +106,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref || github.ref }} token: ${{ secrets.github-token }} diff --git a/.github/workflows/call-test-packages.yaml b/.github/workflows/call-test-packages.yaml index 64b93952..88865aad 100644 --- a/.github/workflows/call-test-packages.yaml +++ b/.github/workflows/call-test-packages.yaml @@ -19,7 +19,7 @@ on: description: The Dockerhub username to use for authenticated pulls. required: false type: string - default: "fluentdo" + default: "telemetryforge" amd-runner-label: description: The label to use for the runner. required: false @@ -33,7 +33,7 @@ on: description: The Dockerhub token to use for authenticated pulls (not pushes). required: true env: - FLUENTDO_AGENT_VERSION: ${{ inputs.version }} + TELEMETRY_FORGE_AGENT_VERSION: ${{ inputs.version }} jobs: # This job converts the JSON build-matrix coming in to a matrix of test jobs. # We convert using the following rules: @@ -114,7 +114,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref }} - name: Log in to Dockerhub @@ -175,7 +175,7 @@ jobs: package-type: deb package: package-ubuntu-24.04 name: ubuntu - binary: /opt/fluentdo-agent/bin/fluent-bit + binary: /opt/telemetryforge-agent/bin/fluent-bit # - runner: windows-latest # package-type: msi # package: package-windows @@ -187,7 +187,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ inputs.ref }} # Must be removed on Namespace runners diff --git a/.github/workflows/lint-packages.yaml b/.github/workflows/lint-packages.yaml index f7ce52a2..f150f592 100644 --- a/.github/workflows/lint-packages.yaml +++ b/.github/workflows/lint-packages.yaml @@ -42,13 +42,13 @@ jobs: - name: List contents continue-on-error: true - run: find "downloads/" -name 'fluentdo-agent_*_amd64.deb' -exec dpkg -c {} \; + run: find "downloads/" -name 'telemetryforge-agent_*_amd64.deb' -exec dpkg -c {} \; shell: bash - name: List control files continue-on-error: true run: | - find "downloads/" -name 'fluentdo-agent_*_amd64.deb' -exec dpkg -e {} \; + find "downloads/" -name 'telemetryforge-agent_*_amd64.deb' -exec dpkg -e {} \; ls -lRh DEBIAN/ shell: bash @@ -59,5 +59,5 @@ jobs: shell: bash - name: Run Lintian - run: find "downloads/" -name 'fluentdo-agent_*_amd64.deb' -exec lintian --fail-on=error --cfg $PWD/.lintian -c {} \; + run: find "downloads/" -name 'telemetryforge-agent_*_amd64.deb' -exec lintian --fail-on=error --cfg $PWD/.lintian -c {} \; shell: bash diff --git a/.github/workflows/pr-comment-build.yaml b/.github/workflows/pr-comment-build.yaml index 80a7018d..f33fde15 100644 --- a/.github/workflows/pr-comment-build.yaml +++ b/.github/workflows/pr-comment-build.yaml @@ -115,7 +115,7 @@ jobs: id: set-version run: | set -euo pipefail - VERSION=$(grep "ARG FLUENTDO_AGENT_VERSION=" Dockerfile.ubi | cut -d '=' -s -f 2 -) + VERSION=$(grep "ARG TELEMETRY_FORGE_AGENT_VERSION=" Dockerfile.ubi | cut -d '=' -s -f 2 -) echo "Using version: $VERSION" echo "version=$VERSION" >> $GITHUB_OUTPUT shell: bash diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 259c13db..e780eb0a 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -5,7 +5,7 @@ on: image: description: The full image name to test. required: false - default: "ghcr.io/fluentdo/agent" + default: "ghcr.io/telemetryforge/agent" type: string image-tag: description: The image tag to test. @@ -28,7 +28,7 @@ jobs: - name: Checkout code uses: actions/checkout@v6 with: - repository: FluentDo/agent + repository: telemetryforge/agent ref: ${{ github.event.inputs.ref || github.ref }} - name: Extract the configuration from the JSON file id: set-meta diff --git a/.github/workflows/unit-tests.yaml b/.github/workflows/unit-tests.yaml index 721b9561..e1e5d211 100644 --- a/.github/workflows/unit-tests.yaml +++ b/.github/workflows/unit-tests.yaml @@ -100,7 +100,7 @@ jobs: CMAKE_BUILD_TYPE=Debug CMAKE_EXPORT_COMPILE_COMMANDS=On - FLUENTDO_AGENT_TESTS=On + TELEMETRY_FORGE_AGENT_TESTS=On FLB_TESTS_INTERNAL=On FLB_TESTS_RUNTIME=On @@ -138,7 +138,7 @@ jobs: gcovr --object-directory . --root .. --gcov-ignore-parse-errors --gcov-ignore-errors \ --sort uncovered-percent \ --xml=cobertura.xml \ - --html=coverage.html --html-title='FluentDo Agent Test Coverage Report' \ + --html=coverage.html --html-title='Agent Test Coverage Report' \ --json=coverage.json \ --txt=coverage.txt \ --print-summary diff --git a/.github/workflows/update-version.yaml b/.github/workflows/update-version.yaml index 7d712f7a..e2dd1e89 100644 --- a/.github/workflows/update-version.yaml +++ b/.github/workflows/update-version.yaml @@ -134,7 +134,7 @@ jobs: run: ./scripts/update-version.sh shell: bash env: - NEW_FLUENTDO_AGENT_VERSION: ${{ steps.get-version.outputs.next_tag }} + NEW_TELEMETRY_FORGE_AGENT_VERSION: ${{ steps.get-version.outputs.next_tag }} - name: Debug run: | diff --git a/CODEOWNERS b/CODEOWNERS index cca97048..769c63b2 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1 +1 @@ -* @FluentDo/fluentdo-agent-contributors +* @telemetryforge/agent-contributors diff --git a/Dockerfile.debian b/Dockerfile.debian index ab519df1..9df9cedb 100644 --- a/Dockerfile.debian +++ b/Dockerfile.debian @@ -43,15 +43,15 @@ ENV FLUENTBIT_VERSION=$FLUENT_BIT_VERSION ARG FLB_NIGHTLY_BUILD ENV FLB_NIGHTLY_BUILD=$FLB_NIGHTLY_BUILD -ARG FLUENTDO_AGENT_VERSION=26.1.3 -ENV FLUENTDO_AGENT_VERSION=${FLUENTDO_AGENT_VERSION} +ARG TELEMETRY_FORGE_AGENT_VERSION=26.1.3 +ENV TELEMETRY_FORGE_AGENT_VERSION=${TELEMETRY_FORGE_AGENT_VERSION} # Build metadata -ARG FLUENTDO_AGENT_DISTRO=debian/trixie -ENV FLUENTDO_AGENT_DISTRO=$FLUENTDO_AGENT_DISTRO +ARG TELEMETRY_FORGE_AGENT_DISTRO=debian/trixie +ENV TELEMETRY_FORGE_AGENT_DISTRO=$TELEMETRY_FORGE_AGENT_DISTRO -ARG FLUENTDO_AGENT_PACKAGE_TYPE=CONTAINER -ENV FLUENTDO_AGENT_PACKAGE_TYPE=$FLUENTDO_AGENT_PACKAGE_TYPE +ARG TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=CONTAINER +ENV TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE # Copy any local source files as needed WORKDIR /source/ @@ -59,17 +59,17 @@ COPY source/ /source/ # Some components assume a git repository is present, so we create one otherwise it fails RUN git init -q /source/ && \ - git config user.name "Fluent Do Agent Builder" && \ + git config user.name "Telemetry Forge Agent Builder" && \ git config user.email "info@fluent.do" && \ git add -A && \ - git commit -q -a -m "Initial commit for Fluent Do Agent" + git commit -q -a -m "Initial commit for Telemetry Forge Agent" # Install and create all necessary directories -RUN mkdir -p /fluent-bit/bin /fluent-bit/etc /fluent-bit/log /opt/fluentdo-agent/etc/ +RUN mkdir -p /fluent-bit/bin /fluent-bit/etc /fluent-bit/log /opt/telemetryforge-agent/etc/ COPY source/conf/ /fluent-bit/etc/ -COPY source/conf/ /opt/fluentdo-agent/etc/ +COPY source/conf/ /opt/telemetryforge-agent/etc/ COPY config/ /fluent-bit/etc/ -COPY config/ /opt/fluentdo-agent/etc/ +COPY config/ /opt/telemetryforge-agent/etc/ # Separate layers now for configure and build to allow local caching FROM source-builder AS builder @@ -89,9 +89,9 @@ RUN cmake -DCMAKE_BUILD_TYPE=Release \ -DFLB_TESTS_INTERNAL=Off \ -DFLB_TESTS_RUNTIME=Off \ -DFLB_NIGHTLY_BUILD="$FLB_NIGHTLY_BUILD" \ - -DFLUENTDO_AGENT_VERSION="$FLUENTDO_AGENT_VERSION" \ - -DFLUENTDO_AGENT_DISTRO="$FLUENTDO_AGENT_DISTRO" \ - -DFLUENTDO_AGENT_PACKAGE_TYPE="$FLUENTDO_AGENT_PACKAGE_TYPE" \ + -DTELEMETRY_FORGE_AGENT_VERSION="$TELEMETRY_FORGE_AGENT_VERSION" \ + -DTELEMETRY_FORGE_AGENT_DISTRO="$TELEMETRY_FORGE_AGENT_DISTRO" \ + -DTELEMETRY_FORGE_AGENT_PACKAGE_TYPE="$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE" \ -DFLB_LOG_NO_CONTROL_CHARS=On \ -DFLB_CORO_STACK_SIZE=131072 \ -DFLB_IN_EXEC=Off \ @@ -109,7 +109,7 @@ RUN [ -n "$MAKE_EXTRA_ARGS" ] && make ${MAKE_EXTRA_ARGS} || make -j "$(getconf _ # Generate schema and include as part of the container image RUN /fluent-bit/bin/fluent-bit -J > /fluent-bit/etc/schema.json && \ - cp -f /fluent-bit/etc/schema.json /opt/fluentdo-agent/etc/schema.json + cp -f /fluent-bit/etc/schema.json /opt/telemetryforge-agent/etc/schema.json # Simple example of how to properly extract packages for reuse in distroless # Taken from: https://github.com/GoogleContainerTools/distroless/issues/863 @@ -185,10 +185,10 @@ RUN find /dpkg/ -type d -empty -delete && \ FROM gcr.io/distroless/cc-debian13 AS production ARG FLUENT_BIT_VERSION -ARG FLUENTDO_AGENT_VERSION +ARG TELEMETRY_FORGE_AGENT_VERSION ENV FLUENTBIT_VERSION=$FLUENT_BIT_VERSION -ENV FLUENTDO_AGENT_VERSION=$FLUENTDO_AGENT_VERSION +ENV TELEMETRY_FORGE_AGENT_VERSION=$TELEMETRY_FORGE_AGENT_VERSION EXPOSE 2020 @@ -207,21 +207,21 @@ COPY --from=builder /etc/ssl/certs /etc/ssl/certs # Finally the binaries as most likely to change COPY --from=builder /fluent-bit /fluent-bit -COPY --from=builder /opt/fluentdo-agent /opt/fluentdo-agent +COPY --from=builder /opt/telemetryforge-agent /opt/telemetryforge-agent # Set up a common base image for debug and test to avoid duplication FROM builder AS debug-test-base COPY --from=qemu-arm32 /usr/bin/qemu-arm-static /usr/bin/ COPY --from=qemu-arm64 /usr/bin/qemu-aarch64-static /usr/bin/ -COPY --from=production /opt/fluentdo-agent /opt/fluentdo-agent +COPY --from=production /opt/telemetryforge-agent /opt/telemetryforge-agent COPY --from=production /fluent-bit /fluent-bit ARG FLUENT_BIT_VERSION -ARG FLUENTDO_AGENT_VERSION +ARG TELEMETRY_FORGE_AGENT_VERSION ENV FLUENTBIT_VERSION=$FLUENT_BIT_VERSION -ENV FLUENTDO_AGENT_VERSION=$FLUENTDO_AGENT_VERSION +ENV TELEMETRY_FORGE_AGENT_VERSION=$TELEMETRY_FORGE_AGENT_VERSION # Support running integration tests using BATS FROM bats/bats:1.13.0 AS bats diff --git a/Dockerfile.ubi b/Dockerfile.ubi index 7a4bdbe2..e8988e4d 100644 --- a/Dockerfile.ubi +++ b/Dockerfile.ubi @@ -53,15 +53,15 @@ ENV FLUENTBIT_VERSION=$FLUENT_BIT_VERSION ARG FLB_NIGHTLY_BUILD ENV FLB_NIGHTLY_BUILD=$FLB_NIGHTLY_BUILD -ARG FLUENTDO_AGENT_VERSION=26.1.3 -ENV FLUENTDO_AGENT_VERSION=${FLUENTDO_AGENT_VERSION} +ARG TELEMETRY_FORGE_AGENT_VERSION=26.1.3 +ENV TELEMETRY_FORGE_AGENT_VERSION=${TELEMETRY_FORGE_AGENT_VERSION} # Build metadata -ARG FLUENTDO_AGENT_DISTRO=ubi/9.5 -ENV FLUENTDO_AGENT_DISTRO=$FLUENTDO_AGENT_DISTRO +ARG TELEMETRY_FORGE_AGENT_DISTRO=ubi/9.5 +ENV TELEMETRY_FORGE_AGENT_DISTRO=$TELEMETRY_FORGE_AGENT_DISTRO -ARG FLUENTDO_AGENT_PACKAGE_TYPE=CONTAINER -ENV FLUENTDO_AGENT_PACKAGE_TYPE=$FLUENTDO_AGENT_PACKAGE_TYPE +ARG TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=CONTAINER +ENV TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE # Copy any local source files as needed WORKDIR /source/ @@ -69,10 +69,10 @@ COPY source/ /source/ # Some components assume a git repository is present, so we create one otherwise it fails RUN git init -q /source/ && \ - git config user.name "Fluent Do Agent Builder" && \ + git config user.name "Telemetry Forge Agent Builder" && \ git config user.email "info@fluent.do" && \ git add -A && \ - git commit -q -a -m "Initial commit for Fluent Do Agent" + git commit -q -a -m "Initial commit for Telemetry Forge Agent" # Install and create all necessary directories RUN mkdir -p /fluent-bit/bin /fluent-bit/etc /fluent-bit/log @@ -92,7 +92,7 @@ RUN cmake -DCMAKE_BUILD_TYPE=Release \ -DFLB_TESTS_INTERNAL=Off \ -DFLB_TESTS_RUNTIME=Off \ -DFLB_NIGHTLY_BUILD="$FLB_NIGHTLY_BUILD" \ - -DFLUENTDO_AGENT_VERSION="$FLUENTDO_AGENT_VERSION" \ + -DTELEMETRY_FORGE_AGENT_VERSION="$TELEMETRY_FORGE_AGENT_VERSION" \ -DFLB_LOG_NO_CONTROL_CHARS=On \ -DFLB_CORO_STACK_SIZE=131072 \ ${CMAKE_EXTRA_ARGS} \ @@ -132,33 +132,33 @@ RUN echo "/usr/local/lib64" > /etc/ld.so.conf.d/local-libs.conf && \ echo "/usr/local/lib" >> /etc/ld.so.conf.d/local-libs.conf && \ ldconfig -RUN mkdir -p /opt/fluentdo-agent/etc -COPY config/ /opt/fluentdo-agent/etc/ +RUN mkdir -p /opt/telemetryforge-agent/etc +COPY config/ /opt/telemetryforge-agent/etc/ COPY config/ /fluent-bit/etc/ # Generate schema and include as part of the container image RUN /fluent-bit/bin/fluent-bit -J > /fluent-bit/etc/schema.json && \ - /fluent-bit/bin/fluent-bit -J > /opt/fluentdo-agent/etc/schema.json + /fluent-bit/bin/fluent-bit -J > /opt/telemetryforge-agent/etc/schema.json ARG FLUENT_BIT_VERSION -ARG FLUENTDO_AGENT_VERSION +ARG TELEMETRY_FORGE_AGENT_VERSION ENV FLUENTBIT_VERSION=$FLUENT_BIT_VERSION -ENV FLUENTDO_AGENT_VERSION=$FLUENTDO_AGENT_VERSION +ENV TELEMETRY_FORGE_AGENT_VERSION=$TELEMETRY_FORGE_AGENT_VERSION # We need to override any base image labels -LABEL vendor='FluentDo at https://fluent.do' -LABEL maintainer='FluentDo via info@fluent.do' -LABEL name='FluentDo Agent' -LABEL io.k8s.display-name='FluentDo Agent' -LABEL summary='FluentDo Agent is an Enterprise hardened version of Fluent Bit' -LABEL url='https://fluent.do' -LABEL io.openshift.tags='observability,logging,log-aggregation,fluentdo,fluent-bit' -LABEL version=${FLUENTDO_AGENT_VERSION} -LABEL io.k8s.description='FluentDo Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months.' +LABEL vendor='Telemetry Forge at https://telemetryforge.io' +LABEL maintainer='Telemetry Forge via info@fluent.do' +LABEL name='Telemetry Forge Agent' +LABEL io.k8s.display-name='Telemetry Forge Agent' +LABEL summary='Telemetry Forge Agent is an Enterprise hardened version of Fluent Bit' +LABEL url='https://telemetryforge.io' +LABEL io.openshift.tags='observability,logging,log-aggregation,telemetryforge,fluent-bit' +LABEL version=${TELEMETRY_FORGE_AGENT_VERSION} +LABEL io.k8s.description='Telemetry Forge Agent is a stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit with predictable releases and long-term supported versions for 24 months.' # Run as non-root user - pick a random one -RUN useradd -u 9876 -m -s /bin/false fluentdo-agent +RUN useradd -u 9876 -m -s /bin/false telemetryforge-agent USER 9876 @@ -189,7 +189,7 @@ FROM builder AS debug # hadolint ignore=DL3041 RUN dnf install -y gdb go-toolset procps && dnf clean all -COPY --from=production /opt/fluentdo-agent /opt/fluentdo-agent +COPY --from=production /opt/telemetryforge-agent /opt/telemetryforge-agent COPY --from=production /fluent-bit /fluent-bit ENTRYPOINT [ "bash" ] diff --git a/README.md b/README.md index 208f7a0b..75b3cb99 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,18 @@

- FluentDo Agent + Telemetry Forge Agent

Documentation License - Release - LTS + Release + LTS Slack

-## What is [FluentDo](https://fluent.do) Agent? +## What is the [Telemetry Forge](https://telemetryforge.io) Agent? -[FluentDo](https://fluent.do) Agent is a **hardened, stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit** with predictable releases and long-term supported versions for 24 months. +The [Telemetry Forge](https://telemetryforge.io) Agent is a **hardened, stable, secure by default, OSS (Apache-licensed) downstream distribution of Fluent Bit** with predictable releases and long-term supported versions for 24 months. It also has built-in functionality for: @@ -26,11 +26,11 @@ It also has built-in functionality for: ### Version Support Matrix | Version | Release Date | Type | End of Support | Status | Branch | -|---------|--------------|------|----------------|--------|--------| -| **[26.10](https://github.com/orgs/FluentDo/projects/4)** | Oct 2026 | LTS | Oct 2028 | 🟡 Planned || -| **[26.04](https://github.com/orgs/FluentDo/projects/4)** | Apr 2026 | LTS | Apr 2028 | 🟢 Active | `main` | -| **[25.10](https://github.com/orgs/FluentDo/projects/3)** | Oct 2025 | LTS | Oct 2027 | 🟢 Active | `release/25.10-lts` | -| 25.07 | Jul 2025 | Regular | Jan 2026 | 🟢 Active || +| ------- | ------------ | ---- | -------------- | ------ | ------ | +| **[26.10](https://github.com/orgs/telemetryforge/projects/4)** | Oct 2026 | LTS | Oct 2028 | 🟡 Planned | | +| **[26.04](https://github.com/orgs/telemetryforge/projects/4)** | Apr 2026 | LTS | Apr 2028 | 🟢 Active | `main` | +| **[25.10](https://github.com/orgs/telemetryforge/projects/3)** | Oct 2025 | LTS | Oct 2027 | 🟢 Active | `release/25.10-lts` | +| 25.07 | Jul 2025 | Regular | Jan 2026 | 🟢 Active | | Main releases follow a date-based format with `Year.Month.Week` forming the version. Once it transitions to an LTS release then we maintain the major and minor versions from then on, only incrementing the patch version. @@ -38,7 +38,7 @@ Once it transitions to an LTS release then we maintain the major and minor versi ### Release Schedule | Release Type | Frequency | Description | -|-------------|-----------|-------------| +| ------------ | --------- | ----------- | | **LTS Release** | Twice yearly (April, October) | Long-term support for 24 months | | **Regular Release** | Quarterly | 6-month support cycle | | **Security Updates** | Weekly | CVE patches and critical fixes | @@ -47,7 +47,7 @@ Once it transitions to an LTS release then we maintain the major and minor versi --- -### Why [FluentDo](https://fluent.do) Agent? +### Why use our agent? - ✅ **Smaller footprint** - Optimized for production deployments - Only production-essential plugins included @@ -86,8 +86,8 @@ Once it transitions to an LTS release then we maintain the major and minor versi ### Docker ```bash -docker run --rm -it -v /var/log/containers:/var/log/containers:ro ghcr.io/fluentdo/agent/ubi:main -c /fluent-bit/etc/fluent-bit.yaml -docker run --rm -it -v /var/log/containers:/var/log/containers:ro ghcr.io/fluentdo/agent/debian:main -c /fluent-bit/etc/fluent-bit.yaml +docker run --rm -it -v /var/log/containers:/var/log/containers:ro ghcr.io/telemetryforge/agent/ubi:main -c /fluent-bit/etc/fluent-bit.yaml +docker run --rm -it -v /var/log/containers:/var/log/containers:ro ghcr.io/telemetryforge/agent/debian:main -c /fluent-bit/etc/fluent-bit.yaml ``` Ensure any files mounted are readable via the container user ([`cat Dockerfile.ubi|grep USER`](./Dockerfile.ubi)). @@ -98,16 +98,10 @@ To specify a different configuration just mount it in as well and pass it on the All packages are available for download at . -Linux packages are available for download and installation or using a simple install script: +Linux and macOS packages are available for download and installation or using a simple install script: ```bash -curl -sSfL https://raw.githubusercontent.com/FluentDo/agent/refs/heads/main/install.sh | bash -``` - -For macOS a brew tap recipe is provided: - -```bash -brew install fluentdo/tap/agent +curl -sSfL https://raw.githubusercontent.com/telemetryforge/agent/refs/heads/main/install.sh | bash ``` Windows packages are also available for download in various formats (ZIP, EXE or MSI). @@ -117,7 +111,7 @@ Windows packages are also available for download in various formats (ZIP, EXE or To compile for a specific target, run the container-based build using the upstream [`source/packaging/build.sh`](./source/packaging/build.sh) script with the specified distribution you want to build for: ```bash -git clone https://github.com/FluentDo/agent.git +git clone https://github.com/telemetryforge/agent.git cd agent ./source/packaging/build.sh -d rockylinux/9 ``` @@ -125,7 +119,7 @@ cd agent To build the UBI or distroless containers: ```bash -git clone https://github.com/FluentDo/agent.git +git clone https://github.com/telemetryforge/agent.git cd agent docker build -f Dockerfile.ubi . docker build -f Dockerfile.debian . @@ -134,7 +128,7 @@ docker build -f Dockerfile.debian . To compile natively (requires relevant dependencies installed): ```bash -git clone https://github.com/FluentDo/agent.git +git clone https://github.com/telemetryforge/agent.git cd agent cd source/build cmake .. @@ -153,7 +147,7 @@ make - **[Documentation](https://docs.fluent.do)** - Complete documentation and guides - **[Downloads](https://fluent.do/downloads)** - Pre-built packages and containers -- **[Release Notes](https://github.com/FluentDo/agent/releases)** - Version history and changelogs +- **[Release Notes](https://github.com/telemetryforge/agent/releases)** - Version history and changelogs - **[OSS Fluent Bit Docs](https://docs.fluentbit.io)** - Core documentation reference --- @@ -161,7 +155,7 @@ make ## Community & Support - **[Slack](https://join.slack.com/share/enQtOTU4MDk0MTQ0OTYzNi03MTY5MTc2Y2I0Y2JhY2QxNzc5MDNkNDdhNTRhNTgzNjkwMDc4Mzk1YTRhZWUzNTE4ZjM3OTljOTA4MzAxYjBl)** - Join our community chat -- **[GitHub Issues](https://github.com/FluentDo/agent/issues)** - Bug reports and feature requests +- **[GitHub Issues](https://github.com/telemetryforge/agent/issues)** - Bug reports and feature requests - **[Contributing Guide](CONTRIBUTING.md)** - How to contribute to the project - **[Commercial Support](https://fluent.do)** - Enterprise support with SLA @@ -198,17 +192,18 @@ This project is licensed under the [Apache License 2.0](LICENSE). ## Copyright -Copyright © [FluentDo](https://fluent.do) Contributors. See [NOTICE](NOTICE) for details. +Copyright © [Telemetry Forge](https://telemetryforge.io) Contributors. See [NOTICE](NOTICE) for details. ## Acknowledgments -[FluentDo](https://fluent.do) Agent is built on top of [Fluent Bit](https://fluentbit.io). We are grateful to the Fluent Bit community and all contributors who make this possible ❤️ +Our agent is built on top of [Fluent Bit](https://fluentbit.io). +We are grateful to the Fluent Bit community and all contributors who make this possible ❤️ ---

- Website • + WebsiteDocs • - Twitter • - Support + Twitter • + Support

diff --git a/extras/agent-logo.jpeg b/extras/agent-logo.jpeg new file mode 100644 index 00000000..1bac68af Binary files /dev/null and b/extras/agent-logo.jpeg differ diff --git a/extras/fluentdo-agent-logo.jpeg b/extras/fluentdo-agent-logo.jpeg deleted file mode 100644 index f2d166bf..00000000 Binary files a/extras/fluentdo-agent-logo.jpeg and /dev/null differ diff --git a/install.sh b/install.sh index 57d98667..d48a2bf6 100755 --- a/install.sh +++ b/install.sh @@ -1,24 +1,24 @@ #!/bin/bash -# FluentDo Agent Installer +# Telemetry Forge Agent Installer # -# Downloads and installs the FluentDo Agent from packages.fluent.do +# Downloads and installs the Telemetry Forge Agent from packages.fluent.do # You can also download direct from https://packages.fluent.do/index.html # # All packages follow the following URL format: -# https://packages.fluent.do//output// +# https://packages.fluent.do//output// # e.g. -# https://packages.fluent.do/25.10.1/output/package-debian-bookworm.arm64v8/fluentdo-agent_25.10.1_arm64.deb -# https://packages.fluent.do/25.10.1/output/package-almalinux-8/fluentdo-agent-25.10.1-1.x86_64.rpm +# https://packages.fluent.do/26.1.3/output/package-debian-bookworm.arm64v8/telemetryforge-agent_26.1.3_arm64.deb +# https://packages.fluent.do/26.1.3/output/package-almalinux-8/telemetryforge-agent-26.1.3-1.x86_64.rpm set -e # The URL to get packages from -FLUENTDO_AGENT_URL="${FLUENTDO_AGENT_URL:-https://packages.fluent.do}" +TELEMETRY_FORGE_AGENT_URL="${TELEMETRY_FORGE_AGENT_URL:-https://packages.fluent.do}" # Any logs from this script -LOG_FILE="${LOG_FILE:-$PWD/fluentdo-agent-install.log}" +LOG_FILE="${LOG_FILE:-$PWD/telemetryforge-agent-install.log}" # The output binary to test -FLUENTDO_AGENT_BINARY=${FLUENTDO_AGENT_BINARY:-/opt/fluentdo-agent/bin/fluent-bit} +TELEMETRY_FORGE_AGENT_BINARY=${TELEMETRY_FORGE_AGENT_BINARY:-/opt/telemetryforge-agent/bin/fluent-bit} # Where to download files DOWNLOAD_DIR=${DOWNLOAD_DIR:-$(mktemp -d)} @@ -346,14 +346,14 @@ detect_distro() { # Fetch available versions from packages.fluent.do fetch_available_versions() { - log "Fetching available versions from $FLUENTDO_AGENT_URL..." + log "Fetching available versions from $TELEMETRY_FORGE_AGENT_URL..." local versions_response # Fetch the response - versions_response=$(curl -s -L "$FLUENTDO_AGENT_URL/" 2>/dev/null || echo "") + versions_response=$(curl -s -L "$TELEMETRY_FORGE_AGENT_URL/" 2>/dev/null || echo "") if [ -z "$versions_response" ]; then - log_error "Failed to fetch versions from $FLUENTDO_AGENT_URL" + log_error "Failed to fetch versions from $TELEMETRY_FORGE_AGENT_URL" log_debug "curl returned empty response" return 1 fi @@ -382,7 +382,7 @@ fetch_available_versions() { fi if [ -z "$AVAILABLE_VERSIONS" ]; then - log_error "No versions found at $FLUENTDO_AGENT_URL" + log_error "No versions found at $TELEMETRY_FORGE_AGENT_URL" log_debug "Response preview (first 500 chars):" log_debug "$(echo "$versions_response" | head -c 500)" return 1 @@ -410,7 +410,7 @@ get_latest_version() { # List available versions list_versions() { echo "" - echo -e "${BLUE}Available FluentDo Agent Versions:${NC}" + echo -e "${BLUE}Available Agent Versions:${NC}" echo "" local count=0 while IFS= read -r version; do @@ -585,29 +585,29 @@ find_package() { case "$pkg_format" in deb) - # Debian package naming: fluentdo-agent__.deb + # Debian package naming: telemetryforge-agent__.deb package_filenames=( - "fluentdo-agent_${version}_${arch_type}.deb" - "fluentdo-agent_${version}_${deb_arch_type}.deb" - "fluentdo-agent-${version}_${arch_type}.deb" - "fluentdo-agent-${version}_${deb_arch_type}.deb" + "telemetryforge-agent_${version}_${arch_type}.deb" + "telemetryforge-agent_${version}_${deb_arch_type}.deb" + "telemetryforge-agent-${version}_${arch_type}.deb" + "telemetryforge-agent-${version}_${deb_arch_type}.deb" ) log_debug "Looking for .deb files with patterns: ${package_filenames[*]}" ;; rpm) - # RPM package naming: fluentdo-agent--1..rpm + # RPM package naming: telemetryforge-agent--1..rpm package_filenames=( - "fluentdo-agent-${version}-1.${arch_type}.rpm" - "fluentdo-agent-${version}-1.${rpm_arch_type}.rpm" - "fluentdo-agent-${version}-1.noarch.rpm" + "telemetryforge-agent-${version}-1.${arch_type}.rpm" + "telemetryforge-agent-${version}-1.${rpm_arch_type}.rpm" + "telemetryforge-agent-${version}-1.noarch.rpm" ) log_debug "Looking for .rpm files with patterns: ${package_filenames[*]}" ;; apk) - # Alpine package naming: fluentdo-agent--r0_.apk + # Alpine package naming: telemetryforge-agent--r0_.apk package_filenames=( - "fluentdo-agent-${version}-r0.${arch_type}.apk" - "fluentdo-agent-${version}.${arch_type}.apk" + "telemetryforge-agent-${version}-r0.${arch_type}.apk" + "telemetryforge-agent-${version}.${arch_type}.apk" ) log_debug "Looking for .apk files with patterns: ${package_filenames[*]}" ;; @@ -619,7 +619,7 @@ find_package() { log_debug "Trying directory: $package_dir" for filename in "${package_filenames[@]}"; do - local package_url="${FLUENTDO_AGENT_URL}/${version}/output/${package_dir}/${filename}" + local package_url="${TELEMETRY_FORGE_AGENT_URL}/${version}/output/${package_dir}/${filename}" log_debug "Attempting to access: $package_url" # Use HEAD request to check if file exists without downloading @@ -641,7 +641,7 @@ find_package() { log_error "No package file found for version=$version, os=$target_os, arch=$arch_type, format=$pkg_format" log_error "Attempted paths:" for filename in "${package_filenames[@]}"; do - log_error " ${FLUENTDO_AGENT_URL}/${version}/output/${package_dir}/${filename}" + log_error " ${TELEMETRY_FORGE_AGENT_URL}/${version}/output/${package_dir}/${filename}" done return 1 fi @@ -662,7 +662,7 @@ download_package() { log "Downloading package: $package_path" log_debug "Output file: $output_file" - local url="${FLUENTDO_AGENT_URL}/${package_path}" + local url="${TELEMETRY_FORGE_AGENT_URL}/${package_path}" log_debug "Download URL: $url" if ! curl -L -f -o "$output_file" "$url"; then @@ -734,15 +734,15 @@ install_package() { # Verify installation verify_installation() { log "Verifying installation..." - log_debug "Verifying with binary: ${FLUENTDO_AGENT_BINARY}" + log_debug "Verifying with binary: ${TELEMETRY_FORGE_AGENT_BINARY}" - if "${FLUENTDO_AGENT_BINARY}" --help &> /dev/null; then + if "${TELEMETRY_FORGE_AGENT_BINARY}" --help &> /dev/null; then local version - version=$("${FLUENTDO_AGENT_BINARY}" --version 2>/dev/null || echo "unknown") - log_success "FluentDo Agent is installed (version: $version)" + version=$("${TELEMETRY_FORGE_AGENT_BINARY}" --version 2>/dev/null || echo "unknown") + log_success "Telemetry Forge Agent is installed (version: $version)" return 0 else - log_warning "FluentDo Agent command not found at: ${FLUENTDO_AGENT_BINARY}" + log_warning "Telemetry Forge Agent command not found at: ${TELEMETRY_FORGE_AGENT_BINARY}" return 1 fi } @@ -753,8 +753,8 @@ verify_installation() { # Main installation flow main() { - log "Starting FluentDo Agent installation..." - log "Packages URL: $FLUENTDO_AGENT_URL" + log "Starting Telemetry Forge Agent installation..." + log "Packages URL: $TELEMETRY_FORGE_AGENT_URL" log_debug "Debug mode: $DEBUG" log_debug "Log file: $LOG_FILE" log_debug "Download directory: $DOWNLOAD_DIR" @@ -793,9 +793,9 @@ main() { # Determine version to install local install_version - if [ -n "${FLUENTDO_AGENT_VERSION:-}" ]; then - log "Using specified version: $FLUENTDO_AGENT_VERSION" - install_version="$FLUENTDO_AGENT_VERSION" + if [ -n "${TELEMETRY_FORGE_AGENT_VERSION:-}" ]; then + log "Using specified version: $TELEMETRY_FORGE_AGENT_VERSION" + install_version="$TELEMETRY_FORGE_AGENT_VERSION" elif [ "$INTERACTIVE" = "true" ]; then log_debug "Interactive mode enabled" if ! select_version; then @@ -830,7 +830,7 @@ main() { log "Found package: $package_path" - local package_file="$DOWNLOAD_DIR/fluentdo-agent.${PKG_FORMAT}" + local package_file="$DOWNLOAD_DIR/telemetryforge-agent.${PKG_FORMAT}" log_debug "Package file destination: $package_file" if ! download_package "$package_path" "$package_file"; then @@ -852,7 +852,7 @@ main() { fi echo "" - log_success "FluentDo Agent installation completed successfully!" + log_success "Telemetry Forge Agent installation completed successfully!" echo "" log "Next steps:" echo " 1. Configure the agent: /etc/fluent-bit/fluent-bit.conf" @@ -862,7 +862,8 @@ main() { log_success "Package downloaded successfully: $package_file" fi echo "" - log "Documentation: https://fluent.do/docs/agent" + # Ensure we update once domain is ready: https://github.com/telemetryforge/agent/issues/184 + log "Documentation: https://docs.fluent.do" echo "" } @@ -873,14 +874,14 @@ main() { # Show usage usage() { cat << EOF -FluentDo Agent Installer +Telemetry Forge Agent Installer Usage: $0 [OPTIONS] Options: -v, --version VERSION Install specific version (default: latest) -i, --interactive Interactively select version - -u, --url URL Use custom packages URL (default: $FLUENTDO_AGENT_URL) + -u, --url URL Use custom packages URL (default: $TELEMETRY_FORGE_AGENT_URL) -l, --log-file FILE Log file path (default: $LOG_FILE) -f, --force Force installation on unsupported distributions -d, --download Download the package only @@ -907,7 +908,7 @@ Examples: $0 -d Environment Variables: - FLUENTDO_AGENT_URL Override packages URL (default: $FLUENTDO_AGENT_URL) + TELEMETRY_FORGE_AGENT_URL Override packages URL (default: $TELEMETRY_FORGE_AGENT_URL) LOG_FILE Override log file location (default: $LOG_FILE) DOWNLOAD_DIR Override download directory (default: $DOWNLOAD_DIR) SUDO Override sudo command (default: sudo, set to empty to disable) @@ -940,8 +941,8 @@ while [[ $# -gt 0 ]]; do shift ;; -v|--version) - FLUENTDO_AGENT_VERSION="$2" - log_debug "Version specified: $FLUENTDO_AGENT_VERSION" + TELEMETRY_FORGE_AGENT_VERSION="$2" + log_debug "Version specified: $TELEMETRY_FORGE_AGENT_VERSION" shift 2 ;; -i|--interactive) @@ -950,8 +951,8 @@ while [[ $# -gt 0 ]]; do shift ;; -u|--url) - FLUENTDO_AGENT_URL="$2" - log_debug "Custom URL specified: $FLUENTDO_AGENT_URL" + TELEMETRY_FORGE_AGENT_URL="$2" + log_debug "Custom URL specified: $TELEMETRY_FORGE_AGENT_URL" shift 2 ;; -l|--log-file) diff --git a/scripts/add-ignored-files.sh b/scripts/add-ignored-files.sh index 3036fa35..79a3cccd 100755 --- a/scripts/add-ignored-files.sh +++ b/scripts/add-ignored-files.sh @@ -24,7 +24,7 @@ do [[ ! -f "$ignoredFile" ]] && continue actualFile=${ignoredFile##"$SOURCE_DIR"/} - url="https://raw.githubusercontent.com/FluentDo/fluent-bit/refs/tags/$FLUENT_BIT_VERSION/$actualFile" + url="https://raw.githubusercontent.com/fluent/fluent-bit/refs/tags/$FLUENT_BIT_VERSION/$actualFile" if curl -sfILo/dev/null "$url"; then echo "Adding $actualFile" diff --git a/scripts/centos6-init-check.sh b/scripts/centos6-init-check.sh index 598398a4..ab38bcf1 100755 --- a/scripts/centos6-init-check.sh +++ b/scripts/centos6-init-check.sh @@ -31,8 +31,8 @@ done if [[ -f "${WORKDIR}/etc/init.d/fluent-bit" ]]; then echo "INFO: Found fluent-bit init.d script" -elif [[ -f "${WORKDIR}/etc/init.d/fluentdo-agent" ]]; then - echo "INFO: Found fluentdo-agent init.d script" +elif [[ -f "${WORKDIR}/etc/init.d/telemetryforge-agent" ]]; then + echo "INFO: Found telemetryforge-agent init.d script" else echo "ERROR: Unable to find init.d script" ls -lRh "$WORKDIR" diff --git a/scripts/common.sh b/scripts/common.sh index a6953dc9..240e78eb 100644 --- a/scripts/common.sh +++ b/scripts/common.sh @@ -21,6 +21,6 @@ function setup_git() { exit 1 elif ! git config user.name; then git config --global user.email "ci@fluent.do" - git config --global user.name "Fluent Do CI" + git config --global user.name "Telemetry Forge CI" fi } diff --git a/scripts/create-sync-pr.sh b/scripts/create-sync-pr.sh index b0acbb2b..77c0f731 100755 --- a/scripts/create-sync-pr.sh +++ b/scripts/create-sync-pr.sh @@ -2,7 +2,7 @@ set -euo pipefail # ============================================================================= -# FluentDo Agent - Create Sync PR Tool +# Telemetry Forge Agent - Create Sync PR Tool # ============================================================================= # This script creates a GitHub PR for upstream sync commits # ============================================================================= @@ -39,7 +39,7 @@ AUTO_MERGE=false usage() { cat << EOF -${CYAN}FluentDo Create Sync PR Tool${NC} +${CYAN}Telemetry Forge Create Sync PR Tool${NC} ${GREEN}Usage:${NC} $0 --from VERSION --to VERSION [options] @@ -231,13 +231,13 @@ collect_commits() { # Generate PR body generate_pr_body() { - local pr_body_file="/tmp/fluentdo-pr-body.md" + local pr_body_file="/tmp/telemetryforge-pr-body.md" cat > "$pr_body_file" << EOF ## Summary -Syncs FluentDo Agent with upstream Fluent Bit from ${FROM_VERSION} to ${TO_VERSION} +Syncs Telemetry Forge Agent with upstream Fluent Bit from ${FROM_VERSION} to ${TO_VERSION} -This PR applies upstream patches to keep FluentDo Agent in sync with Fluent Bit while preserving our customizations. +This PR applies upstream patches to keep Telemetry Forge Agent in sync with Fluent Bit while preserving our customizations. ## Changes Applied @@ -259,11 +259,11 @@ fi) ## Testing Checklist - [ ] Build passes (\`cd source && cmake . && make\`) - [ ] Unit tests pass -- [ ] No regressions in FluentDo features +- [ ] No regressions in Telemetry Forge features - [ ] Security hardening preserved - [ ] Custom plugins functional -## FluentDo Customizations Verified +## Telemetry Forge Customizations Verified - [ ] Branding remains intact - [ ] Version scheme correct (YY.MM.PATCH) - [ ] Custom features working @@ -382,7 +382,7 @@ create_pr() { # Main execution main() { log "${CYAN}╔══════════════════════════════════════════════════════╗${NC}" - log "${CYAN}║ FluentDo Create Sync PR Tool ║${NC}" + log "${CYAN}║ Telemetry Forge Create Sync PR Tool ║${NC}" log "${CYAN}╚══════════════════════════════════════════════════════╝${NC}" echo diff --git a/scripts/setup-code.sh b/scripts/setup-code.sh index 83c167dc..c30c96f7 100755 --- a/scripts/setup-code.sh +++ b/scripts/setup-code.sh @@ -19,21 +19,21 @@ PATCH_LIST=${PATCH_LIST:-$PATCH_DIR/patches-agent.files} CUSTOM_DIR=${CUSTOM_DIR:-$REPO_ROOT/custom} # Change via ./scripts/update-version.sh only -export FLUENTDO_AGENT_VERSION=${FLUENTDO_AGENT_VERSION:-26.1.3} +export TELEMETRY_FORGE_AGENT_VERSION=${TELEMETRY_FORGE_AGENT_VERSION:-26.1.3} # Handle version string with or without a v prefix - we just want semver -if [[ "$FLUENTDO_AGENT_VERSION" =~ ^v?([0-9]+\.[0-9]+\.[0-9]+)$ ]] ; then - FLUENTDO_AGENT_VERSION=${BASH_REMATCH[1]} - echo "Valid FluentDo agent version string: $FLUENTDO_AGENT_VERSION" +if [[ "$TELEMETRY_FORGE_AGENT_VERSION" =~ ^v?([0-9]+\.[0-9]+\.[0-9]+)$ ]] ; then + TELEMETRY_FORGE_AGENT_VERSION=${BASH_REMATCH[1]} + echo "Valid Telemetry Forge agent version string: $TELEMETRY_FORGE_AGENT_VERSION" else - echo "ERROR: Invalid FluentDo agent semver string: $FLUENTDO_AGENT_VERSION" + echo "ERROR: Invalid Telemetry Forge agent semver string: $TELEMETRY_FORGE_AGENT_VERSION" exit 1 fi # shellcheck disable=SC1091 source "$SCRIPT_DIR"/common.sh -echo "Setting up $FLUENTDO_AGENT_VERSION in directory: $SOURCE_DIR" +echo "Setting up $TELEMETRY_FORGE_AGENT_VERSION in directory: $SOURCE_DIR" # Source is maintained directly in the repository, no cloning needed if [[ ! -d "$SOURCE_DIR" ]]; then @@ -68,27 +68,27 @@ fi FLB_CMAKE="$SOURCE_DIR"/CMakeLists.txt # Compose new version: it must be in the format X.Y.Z, e.g. 22.4.1 or 22.4.1-rc1 -CFB_MAJOR=$(echo "$FLUENTDO_AGENT_VERSION" | cut -d. -f1) -CFB_MINOR=$(echo "$FLUENTDO_AGENT_VERSION" | cut -d. -f2) -CFB_PATCH=$(echo "$FLUENTDO_AGENT_VERSION" | cut -d. -f3) +CFB_MAJOR=$(echo "$TELEMETRY_FORGE_AGENT_VERSION" | cut -d. -f1) +CFB_MINOR=$(echo "$TELEMETRY_FORGE_AGENT_VERSION" | cut -d. -f2) +CFB_PATCH=$(echo "$TELEMETRY_FORGE_AGENT_VERSION" | cut -d. -f3) # Cope with custom versions CFB_PATCH_EXTRA='' if [[ "$CFB_PATCH" == *-* ]]; then - CFB_PATCH=$(echo "$FLUENTDO_AGENT_VERSION" | cut -d. -f3 | cut -d- -f1) - CFB_PATCH_EXTRA=$(echo "$FLUENTDO_AGENT_VERSION" | cut -d. -f3 | cut -d- -f2) + CFB_PATCH=$(echo "$TELEMETRY_FORGE_AGENT_VERSION" | cut -d. -f3 | cut -d- -f1) + CFB_PATCH_EXTRA=$(echo "$TELEMETRY_FORGE_AGENT_VERSION" | cut -d. -f3 | cut -d- -f2) fi if [[ -z "$CFB_MAJOR" ]]; then - echo "ERROR: CFB_MAJOR is empty, invalid version: $FLUENTDO_AGENT_VERSION" + echo "ERROR: CFB_MAJOR is empty, invalid version: $TELEMETRY_FORGE_AGENT_VERSION" exitCode=1 fi if [[ -z "$CFB_MINOR" ]]; then - echo "ERROR: CFB_MINOR is empty, invalid version: $FLUENTDO_AGENT_VERSION" + echo "ERROR: CFB_MINOR is empty, invalid version: $TELEMETRY_FORGE_AGENT_VERSION" exitCode=1 fi if [[ -z "$CFB_PATCH" ]]; then - echo "ERROR: CFB_PATCH is empty, invalid version: $FLUENTDO_AGENT_VERSION" + echo "ERROR: CFB_PATCH is empty, invalid version: $TELEMETRY_FORGE_AGENT_VERSION" exitCode=1 fi @@ -120,10 +120,10 @@ if [[ -n "$CPACK_PACKAGE_NAME_SUFFIX" ]] && [[ $CPACK_PACKAGE_NAME_SUFFIX != -* fi echo "CPACK_PACKAGE_NAME_SUFFIX: $CPACK_PACKAGE_NAME_SUFFIX" -sed_wrapper -i "s/CPACK_PACKAGE_NAME \"fluent-bit\"/CPACK_PACKAGE_NAME \"fluentdo-agent${CPACK_PACKAGE_NAME_SUFFIX}\"/g" "$FLB_CMAKE" +sed_wrapper -i "s/CPACK_PACKAGE_NAME \"fluent-bit\"/CPACK_PACKAGE_NAME \"telemetryforge-agent${CPACK_PACKAGE_NAME_SUFFIX}\"/g" "$FLB_CMAKE" -sed_wrapper -i "s/CPACK_PACKAGE_VENDOR \"Fluent Bit\"/CPACK_PACKAGE_VENDOR \"FluentDo\"/g" "$FLB_CMAKE" -sed_wrapper -i "s/Eduardo Silva /Fluent Do /g" "$FLB_CMAKE" -sed_wrapper -i "s/Chronosphere Inc./FluentDo /g" "$FLB_CMAKE" +sed_wrapper -i "s/CPACK_PACKAGE_VENDOR \"Fluent Bit\"/CPACK_PACKAGE_VENDOR \"Telemetry Forge\"/g" "$FLB_CMAKE" +sed_wrapper -i "s/Eduardo Silva /Telemetry Forge /g" "$FLB_CMAKE" +sed_wrapper -i "s/Chronosphere Inc./Telemetry Forge /g" "$FLB_CMAKE" # Source is maintained directly, no need to remove git directories diff --git a/scripts/sync-upstream-patches.sh b/scripts/sync-upstream-patches.sh index a4a45dbd..89e19260 100755 --- a/scripts/sync-upstream-patches.sh +++ b/scripts/sync-upstream-patches.sh @@ -2,12 +2,12 @@ set -euo pipefail # ============================================================================= -# FluentDo Agent - Upstream Patch Sync Tool +# Telemetry Forge Agent - Upstream Patch Sync Tool # ============================================================================= # This script helps sync specific commits from upstream Fluent Bit releases -# to your FluentDo Agent source tree using git patches. +# to your Telemetry Forge Agent source tree using git patches. # -# Since FluentDo source tree has no git relationship with upstream, +# Since Telemetry Forge source tree has no git relationship with upstream, # we use patch files to apply changes selectively. # ============================================================================= @@ -52,7 +52,7 @@ SKIP_CATEGORIES="" # Comma-separated list of categories to skip usage() { cat << EOF -${CYAN}FluentDo Upstream Patch Sync Tool${NC} +${CYAN}Telemetry Forge Upstream Patch Sync Tool${NC} ${GREEN}Usage:${NC} $0 --from VERSION --to VERSION [options] @@ -565,7 +565,7 @@ show_summary() { # Main execution main() { log "${CYAN}╔══════════════════════════════════════════════════════╗${NC}" - log "${CYAN}║ FluentDo Upstream Patch Sync Tool ║${NC}" + log "${CYAN}║ Telemetry Forge Upstream Patch Sync Tool ║${NC}" log "${CYAN}╚══════════════════════════════════════════════════════╝${NC}" echo diff --git a/scripts/update-version.sh b/scripts/update-version.sh index 184ebb28..efef4491 100755 --- a/scripts/update-version.sh +++ b/scripts/update-version.sh @@ -16,23 +16,23 @@ SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) source "$SCRIPT_DIR"/common.sh REPO_ROOT=${REPO_ROOT:-$SCRIPT_DIR/..} -NEW_FLUENTDO_AGENT_VERSION=${NEW_FLUENTDO_AGENT_VERSION:?} +NEW_TELEMETRY_FORGE_AGENT_VERSION=${NEW_TELEMETRY_FORGE_AGENT_VERSION:?} # Handle version string with or without a v prefix - we just want semver -if [[ "$NEW_FLUENTDO_AGENT_VERSION" =~ ^v?([0-9]+\.[0-9]+\.[0-9]+)$ ]] ; then - NEW_FLUENTDO_AGENT_VERSION=${BASH_REMATCH[1]} - echo "Valid FluentDo agent version string: $NEW_FLUENTDO_AGENT_VERSION" +if [[ "$NEW_TELEMETRY_FORGE_AGENT_VERSION" =~ ^v?([0-9]+\.[0-9]+\.[0-9]+)$ ]] ; then + NEW_TELEMETRY_FORGE_AGENT_VERSION=${BASH_REMATCH[1]} + echo "Valid Telemetry Forge agent version string: $NEW_TELEMETRY_FORGE_AGENT_VERSION" else - echo "ERROR: Invalid FluentDo agent semver string: $NEW_FLUENTDO_AGENT_VERSION" + echo "ERROR: Invalid Telemetry Forge agent semver string: $NEW_TELEMETRY_FORGE_AGENT_VERSION" exit 1 fi -sed_wrapper -i "s/export FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION\:\-.*$/export FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION\:\-$NEW_FLUENTDO_AGENT_VERSION}/g" "$REPO_ROOT"/scripts/setup-code.sh -sed_wrapper -i "s/ARG FLUENTDO_AGENT_VERSION=.*$/ARG FLUENTDO_AGENT_VERSION=$NEW_FLUENTDO_AGENT_VERSION/g" "$REPO_ROOT"/Dockerfile.ubi -sed_wrapper -i "s/ARG FLUENTDO_AGENT_VERSION=.*$/ARG FLUENTDO_AGENT_VERSION=$NEW_FLUENTDO_AGENT_VERSION/g" "$REPO_ROOT"/Dockerfile.debian -sed_wrapper -i "s/RELEASE_VERSION=\${FLUENTDO_AGENT_VERSION:-.*$/RELEASE_VERSION=\${FLUENTDO_AGENT_VERSION:-$NEW_FLUENTDO_AGENT_VERSION}/g" "$REPO_ROOT"/install.sh -sed_wrapper -i "s/FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION:-.*$/FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION:-$NEW_FLUENTDO_AGENT_VERSION}/g" "$REPO_ROOT"/testing/bats/run-bats.sh -sed_wrapper -i "s/FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION:-.*$/FLUENTDO_AGENT_VERSION=\${FLUENTDO_AGENT_VERSION:-$NEW_FLUENTDO_AGENT_VERSION}/g" "$REPO_ROOT"/testing/bats/run-package-functional-tests.sh +sed_wrapper -i "s/export TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION\:\-.*$/export TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION\:\-$NEW_TELEMETRY_FORGE_AGENT_VERSION}/g" "$REPO_ROOT"/scripts/setup-code.sh +sed_wrapper -i "s/ARG TELEMETRY_FORGE_AGENT_VERSION=.*$/ARG TELEMETRY_FORGE_AGENT_VERSION=$NEW_TELEMETRY_FORGE_AGENT_VERSION/g" "$REPO_ROOT"/Dockerfile.ubi +sed_wrapper -i "s/ARG TELEMETRY_FORGE_AGENT_VERSION=.*$/ARG TELEMETRY_FORGE_AGENT_VERSION=$NEW_TELEMETRY_FORGE_AGENT_VERSION/g" "$REPO_ROOT"/Dockerfile.debian +sed_wrapper -i "s/RELEASE_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-.*$/RELEASE_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-$NEW_TELEMETRY_FORGE_AGENT_VERSION}/g" "$REPO_ROOT"/install.sh +sed_wrapper -i "s/TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-.*$/TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-$NEW_TELEMETRY_FORGE_AGENT_VERSION}/g" "$REPO_ROOT"/testing/bats/run-bats.sh +sed_wrapper -i "s/TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-.*$/TELEMETRY_FORGE_AGENT_VERSION=\${TELEMETRY_FORGE_AGENT_VERSION:-$NEW_TELEMETRY_FORGE_AGENT_VERSION}/g" "$REPO_ROOT"/testing/bats/run-package-functional-tests.sh # Run setup-code.sh to update the agent version in the code "$REPO_ROOT"/scripts/setup-code.sh diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index a48df555..12855eb4 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -220,14 +220,14 @@ if(DEFINED FLB_NIGHTLY_BUILD AND NOT "${FLB_NIGHTLY_BUILD}" STREQUAL "") endif() # Build metadata: distribution and package type -if(DEFINED FLUENTDO_AGENT_DISTRO AND NOT "${FLUENTDO_AGENT_DISTRO}" STREQUAL "") - FLB_DEFINITION_VAL(FLUENTDO_AGENT_DISTRO ${FLUENTDO_AGENT_DISTRO}) - message(STATUS "Build distro: ${FLUENTDO_AGENT_DISTRO}") +if(DEFINED TELEMETRY_FORGE_AGENT_DISTRO AND NOT "${TELEMETRY_FORGE_AGENT_DISTRO}" STREQUAL "") + FLB_DEFINITION_VAL(TELEMETRY_FORGE_AGENT_DISTRO ${TELEMETRY_FORGE_AGENT_DISTRO}) + message(STATUS "Build distro: ${TELEMETRY_FORGE_AGENT_DISTRO}") endif() -if(DEFINED FLUENTDO_AGENT_PACKAGE_TYPE AND NOT "${FLUENTDO_AGENT_PACKAGE_TYPE}" STREQUAL "") - FLB_DEFINITION_VAL(FLUENTDO_AGENT_PACKAGE_TYPE ${FLUENTDO_AGENT_PACKAGE_TYPE}) - message(STATUS "Build package type: ${FLUENTDO_AGENT_PACKAGE_TYPE}") +if(DEFINED TELEMETRY_FORGE_AGENT_PACKAGE_TYPE AND NOT "${TELEMETRY_FORGE_AGENT_PACKAGE_TYPE}" STREQUAL "") + FLB_DEFINITION_VAL(TELEMETRY_FORGE_AGENT_PACKAGE_TYPE ${TELEMETRY_FORGE_AGENT_PACKAGE_TYPE}) + message(STATUS "Build package type: ${TELEMETRY_FORGE_AGENT_PACKAGE_TYPE}") endif() if(FLB_IN_STORAGE_BACKLOG) @@ -1417,11 +1417,11 @@ endif() # ============================ set(CPACK_PACKAGE_VERSION ${FLB_VERSION_STR}) -set(CPACK_PACKAGE_NAME "fluentdo-agent") +set(CPACK_PACKAGE_NAME "telemetryforge-agent") set(CPACK_PACKAGE_RELEASE 1) -set(CPACK_PACKAGE_CONTACT "Fluent Do ") -set(CPACK_PACKAGE_VENDOR "Fluent Do ") +set(CPACK_PACKAGE_CONTACT "Telemetry Forge ") +set(CPACK_PACKAGE_VENDOR "Telemetry Forge ") set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE") set(CPACK_PACKAGING_INSTALL_PREFIX "/") @@ -1515,7 +1515,7 @@ set(CPACK_RPM_RUNTIME_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}- # CPack: Windows System if(CPACK_GENERATOR MATCHES "NSIS") set(CPACK_MONOLITHIC_INSTALL 1) - set(CPACK_PACKAGE_INSTALL_DIRECTORY "fluentdo-agent") + set(CPACK_PACKAGE_INSTALL_DIRECTORY "telemetryforge-agent") endif() # CPack: Windows System w/ WiX @@ -1539,11 +1539,11 @@ if(FLB_SYSTEM_MACOS) OUTPUT_STRIP_TRAILING_WHITESPACE ) if (UNAME_M_RESULT EQUAL 0 AND UNAME_ARCH STREQUAL "arm64") - set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/fluentdo-agent-${FLB_VERSION_STR}-apple) + set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/telemetryforge-agent-${FLB_VERSION_STR}-apple) elseif(UNAME_M_RESULT EQUAL 0 AND UNAME_ARCH STREQUAL "x86_64") - set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/fluentdo-agent-${FLB_VERSION_STR}-intel) + set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/telemetryforge-agent-${FLB_VERSION_STR}-intel) else() - set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/fluentdo-agent-${FLB_VERSION_STR}-${UNAME_ARCH}) + set(FLUENT_BIT_PKG ${CMAKE_CURRENT_BINARY_DIR}/telemetryforge-agent-${FLB_VERSION_STR}-${UNAME_ARCH}) endif() if (CPACK_GENERATOR MATCHES "productbuild") diff --git a/source/cmake/plugins_options.cmake b/source/cmake/plugins_options.cmake index e68a12df..6804cb61 100644 --- a/source/cmake/plugins_options.cmake +++ b/source/cmake/plugins_options.cmake @@ -11,11 +11,11 @@ option(FLB_MINIMAL "Enable minimal build configuration" No) # Custom Plugins # =============== -DEFINE_OPTION(FLB_CUSTOM_FLUENTDO "Enable Fluentdo custom plugin" ON) +DEFINE_OPTION(FLB_CUSTOM_TELEMETRY_FORGE "Enable Telemetry Forge custom plugin" ON) # Inputs (sources, data collectors) # ================================= -DEFINE_OPTION(FLB_IN_FLUENTDO "Enable FluentDo input plugin" ON) +DEFINE_OPTION(FLB_IN_TELEMETRY_FORGE "Enable Telemetry Forge input plugin" ON) # ================================= DEFINE_OPTION(FLB_IN_BLOB "Enable Blob input plugin" ON) DEFINE_OPTION(FLB_IN_CALYPTIA_FLEET "Enable Calyptia Fleet input plugin" OFF) diff --git a/source/cmake/version.rc.in b/source/cmake/version.rc.in index dd96731d..83c06e9d 100644 --- a/source/cmake/version.rc.in +++ b/source/cmake/version.rc.in @@ -32,10 +32,10 @@ BEGIN VALUE "FileDescription", "Compiled with @CMAKE_C_COMPILER_ID@ @CMAKE_C_COMPILER_VERSION@\0" VALUE "ProductVersion", FLB_VER_PRODUCTVERSION_STR VALUE "FileVersion", FLB_VER_FILEVERSION_STR - VALUE "InternalName", "fluentdo-agent\0" - VALUE "ProductName", "FluentDo Agent is an enterprise-hardened distribution of Fluent Bit\0" - VALUE "CompanyName", "FluentDo.\0" - VALUE "LegalCopyright", "Copyright (C) 2015-2018 Treasure Data Inc.\nCopyright (C) 2019-2025 The Fluent Bit Authors.\nAll rights reserved.\0" + VALUE "InternalName", "telemetryforge-agent\0" + VALUE "ProductName", "Telemetry Forge Agent is an enterprise-hardened distribution of Fluent Bit\0" + VALUE "CompanyName", "Telemetry Forge.\0" + VALUE "LegalCopyright", "Copyright (C) 2015-2018 Treasure Data Inc.\nCopyright (C) 2019-2026 The Fluent Bit Authors.\nAll rights reserved.\0" VALUE "Licence", "Apache-2.0\0" VALUE "Info", "https://docs.fluent.do/0" END diff --git a/source/cpack/description b/source/cpack/description index 367e8125..384761ed 100644 --- a/source/cpack/description +++ b/source/cpack/description @@ -1,4 +1,4 @@ -FluentDo Agent is an enterprise-hardened distribution of Fluent Bit, +Telemetry Forge Agent is an enterprise-hardened distribution of Fluent Bit, maintained by core OSS maintainers. It delivers production-ready log processing with enhanced security, reduced footprint, and enterprise support. diff --git a/source/cpack/scripts/sysv-init-install.sh b/source/cpack/scripts/sysv-init-install.sh index 4088ac2f..aae4f0ef 100755 --- a/source/cpack/scripts/sysv-init-install.sh +++ b/source/cpack/scripts/sysv-init-install.sh @@ -1,6 +1,8 @@ #!/bin/sh NAME="" -if [ -f /etc/init.d/fluentdo-agent ]; then +if [ -f /etc/init.d/telemetryforge-agent ]; then + NAME=telemetryforge-agent +elif [ -f /etc/init.d/fluentdo-agent ]; then NAME=fluentdo-agent elif [ -f /etc/init.d/fluent-bit ]; then NAME=fluent-bit diff --git a/source/include/fluent-bit/flb_graphql_client.h b/source/include/fluent-bit/flb_graphql_client.h index b6249f42..623f8ad1 100644 --- a/source/include/fluent-bit/flb_graphql_client.h +++ b/source/include/fluent-bit/flb_graphql_client.h @@ -29,7 +29,8 @@ /* Agent kinds */ #define FLB_GRAPHQL_AGENT_KIND_FLUENTBIT "FLUENTBIT" -#define FLB_GRAPHQL_AGENT_KIND_FLUENTDO "FLUENTDO" +#define FLB_GRAPHQL_AGENT_KIND_FLUENTDO "FLUENTDO" +#define FLB_GRAPHQL_AGENT_KIND_TELEMETRY_FORGE "TELEMETRY_FORGE" /* Agent status */ #define FLB_GRAPHQL_AGENT_STATUS_RUNNING "RUNNING" @@ -100,7 +101,7 @@ struct flb_graphql_label_id { /* Query agents input parameters */ struct flb_graphql_query_agents_input { const char *org_id; /* Required */ - const char *kind; /* Optional: FLUENTBIT or FLUENTDO */ + const char *kind; /* Optional: FLUENTBIT, FLUENTDO or TELEMETRY_FORGE */ const char *name; /* Optional */ int name_exact; /* Optional: exact name match */ const char *version; /* Optional */ @@ -117,7 +118,7 @@ struct flb_graphql_query_agents_input { /* Create agent input parameters */ struct flb_graphql_create_agent_input { - const char *kind; /* Required: FLUENTBIT or FLUENTDO */ + const char *kind; /* Required: FLUENTBIT, FLUENTDO or TELEMETRY_FORGE */ const char *name; /* Required */ const char *version; /* Required */ const char *config; /* Required */ diff --git a/source/include/fluent-bit/flb_version.h.in b/source/include/fluent-bit/flb_version.h.in index 63e4ee42..925accbd 100644 --- a/source/include/fluent-bit/flb_version.h.in +++ b/source/include/fluent-bit/flb_version.h.in @@ -32,7 +32,7 @@ #define STR_HELPER(s) #s #define STR(s) STR_HELPER(s) -/* FluentDo Agent Version */ +/* Telemetry Forge Agent Version */ #define FLB_VERSION_MAJOR @FLB_VERSION_MAJOR@ #define FLB_VERSION_MINOR @FLB_VERSION_MINOR@ #define FLB_VERSION_PATCH @FLB_VERSION_PATCH@ @@ -45,10 +45,10 @@ static inline void flb_version() { #ifdef FLB_NIGHTLY_BUILD - printf("FluentDo Agent v%s | NIGHTLY_BUILD=%s - DO NOT USE IN PRODUCTION!\n", + printf("Telemetry Forge Agent v%s | NIGHTLY_BUILD=%s - DO NOT USE IN PRODUCTION!\n", FLB_VERSION_STR, STR(FLB_NIGHTLY_BUILD)); #else - printf("FluentDo Agent v%s\n", FLB_VERSION_STR); + printf("Telemetry Forge Agent v%s\n", FLB_VERSION_STR); #endif printf("Git commit: %s\n", FLB_GIT_HASH); @@ -57,8 +57,8 @@ static inline void flb_version() static inline void flb_version_banner() { - /* FluentDo Agent - Enterprise-ready downstream distribution */ - fprintf(stderr, "FluentDo Agent v%s\n", FLB_VERSION_STR); + /* Telemetry Forge Agent - Enterprise-ready downstream distribution */ + fprintf(stderr, "Telemetry Forge Agent v%s\n", FLB_VERSION_STR); fprintf(stderr, "* A stable, secure by default and enterprise ready\n"); fprintf(stderr, "* downstream distribution of Fluent Bit\n"); fprintf(stderr, "* https://docs.fluent.do\n\n"); diff --git a/source/init/az2-systemd.in b/source/init/az2-systemd.in index 5bf31753..3a0e5e25 100644 --- a/source/init/az2-systemd.in +++ b/source/init/az2-systemd.in @@ -1,5 +1,5 @@ [Unit] -Description=FluentDo Agent is an enterprise-hardened distribution of Fluent Bit +Description=Telemetry Forge Agent is an enterprise-hardened distribution of Fluent Bit Documentation=https://fluent.do/ Requires=network.target After=network.target diff --git a/source/init/systemd.in b/source/init/systemd.in index a1389436..f3b1a97b 100644 --- a/source/init/systemd.in +++ b/source/init/systemd.in @@ -1,5 +1,5 @@ [Unit] -Description=FluentDo Agent is an enterprise-hardened distribution of Fluent Bit +Description=Telemetry Forge Agent is an enterprise-hardened distribution of Fluent Bit Documentation=https://fluent.do/ Requires=network.target After=network.target diff --git a/source/init/sysvinit.in b/source/init/sysvinit.in index c573a8f4..399c595b 100755 --- a/source/init/sysvinit.in +++ b/source/init/sysvinit.in @@ -5,7 +5,7 @@ # Required-Stop: $local_fs $network $named $time $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 -# Description: Init script for FluentDo Agent. +# Description: Init script for Telemetry Forge Agent. ### END INIT INFO # Adapted from https://github.com/wyhasany/sysvinit-service-generator diff --git a/source/init/upstart.in b/source/init/upstart.in index 23ce6272..5c70e5ad 100644 --- a/source/init/upstart.in +++ b/source/init/upstart.in @@ -1,4 +1,4 @@ -# FluentDo Agent is an enterprise-hardened distribution of Fluent Bit +# Telemetry Forge Agent is an enterprise-hardened distribution of Fluent Bit description "@FLB_PROG_NAME@" diff --git a/source/packaging/build.sh b/source/packaging/build.sh index 80835f55..3b977bb0 100755 --- a/source/packaging/build.sh +++ b/source/packaging/build.sh @@ -79,15 +79,15 @@ fi # Use full distro target (e.g., "amazonlinux/2", "ubuntu/22.04", "debian/bookworm") # Remove architecture suffix if present (e.g., "ubuntu/20.04.arm64v8" -> "ubuntu/20.04") -FLUENTDO_AGENT_DISTRO_TEMP=${FLB_DISTRO%.arm64v8} -FLUENTDO_AGENT_DISTRO_TEMP=${FLUENTDO_AGENT_DISTRO_TEMP%.arm32v7} -FLUENTDO_AGENT_DISTRO=${FLUENTDO_AGENT_DISTRO:-${FLUENTDO_AGENT_DISTRO_TEMP}} -FLUENTDO_AGENT_PACKAGE_TYPE=${FLUENTDO_AGENT_PACKAGE_TYPE:-PACKAGE} +TELEMETRY_FORGE_AGENT_DISTRO_TEMP=${FLB_DISTRO%.arm64v8} +TELEMETRY_FORGE_AGENT_DISTRO_TEMP=${TELEMETRY_FORGE_AGENT_DISTRO_TEMP%.arm32v7} +TELEMETRY_FORGE_AGENT_DISTRO=${TELEMETRY_FORGE_AGENT_DISTRO:-${TELEMETRY_FORGE_AGENT_DISTRO_TEMP}} +TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=${TELEMETRY_FORGE_AGENT_PACKAGE_TYPE:-PACKAGE} echo "IMAGE_CONTEXT_DIR => $IMAGE_CONTEXT_DIR" echo "FLB_NIGHTLY_BUILD => $FLB_NIGHTLY_BUILD" -echo "FLUENTDO_AGENT_DISTRO => $FLUENTDO_AGENT_DISTRO" -echo "FLUENTDO_AGENT_PACKAGE_TYPE => $FLUENTDO_AGENT_PACKAGE_TYPE" +echo "TELEMETRY_FORGE_AGENT_DISTRO => $TELEMETRY_FORGE_AGENT_DISTRO" +echo "TELEMETRY_FORGE_AGENT_PACKAGE_TYPE => $TELEMETRY_FORGE_AGENT_PACKAGE_TYPE" if [ "${DOCKER}" = "docker" ]; then export DOCKER_BUILDKIT=1 @@ -100,8 +100,8 @@ fi if ! ${DOCKER} build \ --build-arg FLB_NIGHTLY_BUILD="$FLB_NIGHTLY_BUILD" \ --build-arg CACHE_ID="$CACHE_ID" \ - --build-arg FLUENTDO_AGENT_DISTRO="$FLUENTDO_AGENT_DISTRO" \ - --build-arg FLUENTDO_AGENT_PACKAGE_TYPE="$FLUENTDO_AGENT_PACKAGE_TYPE" \ + --build-arg TELEMETRY_FORGE_AGENT_DISTRO="$TELEMETRY_FORGE_AGENT_DISTRO" \ + --build-arg TELEMETRY_FORGE_AGENT_PACKAGE_TYPE="$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE" \ $FLB_ARG \ -t "$MAIN_IMAGE" \ -f "$IMAGE_CONTEXT_DIR/Dockerfile" \ diff --git a/source/packaging/distros/almalinux/Dockerfile b/source/packaging/distros/almalinux/Dockerfile index 0856607a..616e33a9 100644 --- a/source/packaging/distros/almalinux/Dockerfile +++ b/source/packaging/distros/almalinux/Dockerfile @@ -141,7 +141,7 @@ WORKDIR /source/fluent-bit/ COPY . ./ WORKDIR /source/fluent-bit/build/ -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/amazonlinux/Dockerfile b/source/packaging/distros/amazonlinux/Dockerfile index 3d64ad96..f1050155 100644 --- a/source/packaging/distros/amazonlinux/Dockerfile +++ b/source/packaging/distros/amazonlinux/Dockerfile @@ -137,7 +137,7 @@ COPY . ./ WORKDIR /tmp/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/azurelinux/Dockerfile b/source/packaging/distros/azurelinux/Dockerfile index 2ce1eb26..4772b901 100644 --- a/source/packaging/distros/azurelinux/Dockerfile +++ b/source/packaging/distros/azurelinux/Dockerfile @@ -53,7 +53,7 @@ COPY . ./ WORKDIR /source/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/centos/6/Dockerfile b/source/packaging/distros/centos/6/Dockerfile index fef00625..508521a7 100644 --- a/source/packaging/distros/centos/6/Dockerfile +++ b/source/packaging/distros/centos/6/Dockerfile @@ -122,7 +122,7 @@ COPY . ./ WORKDIR /source/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ # Ensure we enable sysvinit set up ARG FLB_CPACK_SYSVINIT=On diff --git a/source/packaging/distros/centos/7/Dockerfile b/source/packaging/distros/centos/7/Dockerfile index bb42af53..39939495 100644 --- a/source/packaging/distros/centos/7/Dockerfile +++ b/source/packaging/distros/centos/7/Dockerfile @@ -106,7 +106,7 @@ COPY . ./ WORKDIR /tmp/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH \ diff --git a/source/packaging/distros/centos/Dockerfile b/source/packaging/distros/centos/Dockerfile index de7e141f..97828b4f 100644 --- a/source/packaging/distros/centos/Dockerfile +++ b/source/packaging/distros/centos/Dockerfile @@ -226,7 +226,7 @@ COPY . ./ WORKDIR /tmp/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/debian/Dockerfile b/source/packaging/distros/debian/Dockerfile index b1eaa941..37102e31 100644 --- a/source/packaging/distros/debian/Dockerfile +++ b/source/packaging/distros/debian/Dockerfile @@ -269,11 +269,11 @@ FROM $BASE_BUILDER AS builder ARG FLB_NIGHTLY_BUILD ENV FLB_NIGHTLY_BUILD=$FLB_NIGHTLY_BUILD -ARG FLUENTDO_AGENT_DISTRO -ENV FLUENTDO_AGENT_DISTRO=$FLUENTDO_AGENT_DISTRO +ARG TELEMETRY_FORGE_AGENT_DISTRO +ENV TELEMETRY_FORGE_AGENT_DISTRO=$TELEMETRY_FORGE_AGENT_DISTRO -ARG FLUENTDO_AGENT_PACKAGE_TYPE -ENV FLUENTDO_AGENT_PACKAGE_TYPE=$FLUENTDO_AGENT_PACKAGE_TYPE +ARG TELEMETRY_FORGE_AGENT_PACKAGE_TYPE +ENV TELEMETRY_FORGE_AGENT_PACKAGE_TYPE=$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE # Docker context must be the base of the repo WORKDIR /tmp/fluent-bit/ @@ -282,15 +282,15 @@ COPY . ./ WORKDIR /tmp/fluent-bit/build/ # CMake configuration variables ARG CFLAGS="-std=gnu99" -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ ENV CFLAGS=$CFLAGS RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ -DCMAKE_INSTALL_SYSCONFDIR="$CMAKE_INSTALL_SYSCONFDIR" \ -DFLB_NIGHTLY_BUILD="$FLB_NIGHTLY_BUILD" \ - -DFLUENTDO_AGENT_DISTRO="$FLUENTDO_AGENT_DISTRO" \ - -DFLUENTDO_AGENT_PACKAGE_TYPE="$FLUENTDO_AGENT_PACKAGE_TYPE" \ + -DTELEMETRY_FORGE_AGENT_DISTRO="$TELEMETRY_FORGE_AGENT_DISTRO" \ + -DTELEMETRY_FORGE_AGENT_PACKAGE_TYPE="$TELEMETRY_FORGE_AGENT_PACKAGE_TYPE" \ -DFLB_JEMALLOC_OPTIONS="$FLB_JEMALLOC_OPTIONS" \ ../ diff --git a/source/packaging/distros/mariner/Dockerfile b/source/packaging/distros/mariner/Dockerfile index 2a86897a..c4e25f4e 100644 --- a/source/packaging/distros/mariner/Dockerfile +++ b/source/packaging/distros/mariner/Dockerfile @@ -55,7 +55,7 @@ COPY . ./ WORKDIR /source/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/rockylinux/Dockerfile b/source/packaging/distros/rockylinux/Dockerfile index 8c6fc044..7ca5a65e 100644 --- a/source/packaging/distros/rockylinux/Dockerfile +++ b/source/packaging/distros/rockylinux/Dockerfile @@ -138,7 +138,7 @@ COPY . ./ WORKDIR /source/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/suse/Dockerfile b/source/packaging/distros/suse/Dockerfile index a169bfa0..842071fd 100644 --- a/source/packaging/distros/suse/Dockerfile +++ b/source/packaging/distros/suse/Dockerfile @@ -86,7 +86,7 @@ COPY . ./ WORKDIR /source/fluent-bit/build/ # CMake configuration variables -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ RUN cmake -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_PREFIX" \ diff --git a/source/packaging/distros/ubuntu/Dockerfile b/source/packaging/distros/ubuntu/Dockerfile index 3da0b872..2b8fb6a5 100644 --- a/source/packaging/distros/ubuntu/Dockerfile +++ b/source/packaging/distros/ubuntu/Dockerfile @@ -312,7 +312,7 @@ COPY . ./ WORKDIR /tmp/fluent-bit/build/ # CMake configuration variables ARG CFLAGS="-std=gnu99" -ARG CMAKE_INSTALL_PREFIX=/opt/fluentdo-agent/ +ARG CMAKE_INSTALL_PREFIX=/opt/telemetryforge-agent/ ARG CMAKE_INSTALL_SYSCONFDIR=/etc/ ENV CFLAGS=$CFLAGS diff --git a/source/plugins/CMakeLists.txt b/source/plugins/CMakeLists.txt index 978c72c8..cb31c9d3 100644 --- a/source/plugins/CMakeLists.txt +++ b/source/plugins/CMakeLists.txt @@ -247,8 +247,8 @@ if(LIBGIT2_FOUND) REGISTER_CUSTOM_PLUGIN("custom_git_config") endif() -REGISTER_CUSTOM_PLUGIN("custom_fluentdo") -REGISTER_IN_PLUGIN("in_fluentdo") +REGISTER_CUSTOM_PLUGIN("custom_telemetryforge") +REGISTER_IN_PLUGIN("in_telemetryforge") REGISTER_IN_PLUGIN("in_blob") diff --git a/source/plugins/custom_fluentdo/CMakeLists.txt b/source/plugins/custom_fluentdo/CMakeLists.txt deleted file mode 100644 index 9afa76cd..00000000 --- a/source/plugins/custom_fluentdo/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -# FluentDo Manager custom plugin -set(src - fluentdo.c - ${CMAKE_SOURCE_DIR}/src/flb_graphql_client.c - ) - -FLB_PLUGIN(custom_fluentdo "${src}" "") \ No newline at end of file diff --git a/source/plugins/custom_telemetryforge/CMakeLists.txt b/source/plugins/custom_telemetryforge/CMakeLists.txt new file mode 100644 index 00000000..00d080d5 --- /dev/null +++ b/source/plugins/custom_telemetryforge/CMakeLists.txt @@ -0,0 +1,7 @@ +# Telemetry Forge Manager custom plugin +set(src + telemetryforge.c + ${CMAKE_SOURCE_DIR}/src/flb_graphql_client.c + ) + +FLB_PLUGIN(custom_telemetryforge "${src}" "") \ No newline at end of file diff --git a/source/plugins/custom_fluentdo/fluentdo.c b/source/plugins/custom_telemetryforge/telemetryforge.c similarity index 68% rename from source/plugins/custom_fluentdo/fluentdo.c rename to source/plugins/custom_telemetryforge/telemetryforge.c index beeaadad..bd5595ea 100644 --- a/source/plugins/custom_fluentdo/fluentdo.c +++ b/source/plugins/custom_telemetryforge/telemetryforge.c @@ -35,17 +35,18 @@ #include #endif -#define FLUENTDO_DEFAULT_URL "https://api.fluent.do/graphql" +/* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ +#define TELEMETRY_FORGE_DEFAULT_URL "https://api.fluent.do/graphql" /* Cross-platform default session store path */ #ifdef _WIN32 -#define FLUENTDO_DEFAULT_SESSION_STORE "C:\\ProgramData\\fluentbit\\fluentdo" +#define TELEMETRY_FORGE_DEFAULT_SESSION_STORE "C:\\ProgramData\\fluentbit\\telemetryforge" #else -#define FLUENTDO_DEFAULT_SESSION_STORE "/var/lib/fluentbit/fluentdo" +#define TELEMETRY_FORGE_DEFAULT_SESSION_STORE "/var/lib/fluentbit/telemetryforge" #endif /* Plugin context */ -struct flb_fluentdo { +struct flb_telemetryforge { struct flb_graphql_client *graphql_client; char *api_url; char *api_token; @@ -60,15 +61,15 @@ struct flb_fluentdo { }; /* Callback for plugin initialization */ -static int cb_fluentdo_init(struct flb_custom_instance *ins, +static int cb_telemetryforge_init(struct flb_custom_instance *ins, struct flb_config *config, void *data) { int ret; - struct flb_fluentdo *ctx; + struct flb_telemetryforge *ctx; char interval_str[32]; - ctx = flb_calloc(1, sizeof(struct flb_fluentdo)); + ctx = flb_calloc(1, sizeof(struct flb_telemetryforge)); if (!ctx) { flb_errno(); return -1; @@ -91,6 +92,7 @@ static int cb_fluentdo_init(struct flb_custom_instance *ins, /* Set default agent_kind to fluentdo if not provided */ if (!ctx->agent_kind) { + /* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ ctx->agent_kind = flb_strdup("fluentdo"); } @@ -100,9 +102,9 @@ static int cb_fluentdo_init(struct flb_custom_instance *ins, } /* Create input plugin instance */ - ctx->input_instance = flb_input_new(config, "fluentdo", NULL, FLB_FALSE); + ctx->input_instance = flb_input_new(config, "telemetryforge", NULL, FLB_FALSE); if (!ctx->input_instance) { - flb_plg_error(ins, "failed to create fluentdo input instance"); + flb_plg_error(ins, "failed to create telemetryforge input instance"); flb_free(ctx); return -1; } @@ -144,7 +146,7 @@ static int cb_fluentdo_init(struct flb_custom_instance *ins, snprintf(interval_str, sizeof(interval_str), "%d", ctx->metrics_interval); flb_input_set_property(ctx->input_instance, "interval_sec", interval_str); - flb_plg_info(ins, "fluentdo input plugin configured: agent_kind=%s, interval=%d", + flb_plg_info(ins, "telemetryforge input plugin configured: agent_kind=%s, interval=%d", ctx->agent_kind, ctx->metrics_interval); flb_custom_set_context(ins, ctx); @@ -152,9 +154,9 @@ static int cb_fluentdo_init(struct flb_custom_instance *ins, } /* Callback for plugin cleanup */ -static int cb_fluentdo_exit(void *data, struct flb_config *config) +static int cb_telemetryforge_exit(void *data, struct flb_config *config) { - struct flb_fluentdo *ctx = data; + struct flb_telemetryforge *ctx = data; if (!ctx) { return 0; @@ -167,53 +169,54 @@ static int cb_fluentdo_exit(void *data, struct flb_config *config) /* Plugin configuration map */ static struct flb_config_map config_map[] = { { - FLB_CONFIG_MAP_STR, "api_url", FLUENTDO_DEFAULT_URL, - 0, FLB_TRUE, offsetof(struct flb_fluentdo, api_url), - "FluentDo Manager GraphQL API endpoint URL" + FLB_CONFIG_MAP_STR, "api_url", TELEMETRY_FORGE_DEFAULT_URL, + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, api_url), + "Telemetry Forge Manager GraphQL API endpoint URL" }, { FLB_CONFIG_MAP_STR, "api_token", NULL, - 0, FLB_TRUE, offsetof(struct flb_fluentdo, api_token), - "FluentDo Manager API token for registration" + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, api_token), + "Telemetry Forge Manager API token for registration" }, { FLB_CONFIG_MAP_STR, "agent_name", NULL, - 0, FLB_TRUE, offsetof(struct flb_fluentdo, agent_name), + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, agent_name), "Agent name (defaults to hostname)" }, { FLB_CONFIG_MAP_STR, "agent_kind", "fluentdo", - 0, FLB_TRUE, offsetof(struct flb_fluentdo, agent_kind), - "Agent kind: 'fluentbit' or 'fluentdo' (default: 'fluentdo')" + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, agent_kind), + /* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ + "Agent kind: 'fluentbit', 'fluentdo' or 'telemetryforge' (default: 'fluentdo')" }, { FLB_CONFIG_MAP_INT, "metrics_interval", "60", - 0, FLB_TRUE, offsetof(struct flb_fluentdo, metrics_interval), + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, metrics_interval), "Interval in seconds for metrics reporting" }, { - FLB_CONFIG_MAP_STR, "session_store_path", FLUENTDO_DEFAULT_SESSION_STORE, - 0, FLB_TRUE, offsetof(struct flb_fluentdo, session_store_path), + FLB_CONFIG_MAP_STR, "session_store_path", TELEMETRY_FORGE_DEFAULT_SESSION_STORE, + 0, FLB_TRUE, offsetof(struct flb_telemetryforge, session_store_path), "Path to store session state (agent_id and token)" }, { FLB_CONFIG_MAP_STR, "proxy", NULL, - 0, FLB_FALSE, offsetof(struct flb_fluentdo, proxy), + 0, FLB_FALSE, offsetof(struct flb_telemetryforge, proxy), "Specify an HTTP Proxy in format http://host:port" }, { FLB_CONFIG_MAP_STR, "label", NULL, - FLB_CONFIG_MAP_MULT, FLB_TRUE, offsetof(struct flb_fluentdo, label_list), + FLB_CONFIG_MAP_MULT, FLB_TRUE, offsetof(struct flb_telemetryforge, label_list), "Agent labels in key=value format (can be specified multiple times)" }, {0} }; /* Plugin registration */ -struct flb_custom_plugin custom_fluentdo_plugin = { - .name = "fluentdo", - .description = "FluentDo Manager Agent Registration", - .cb_init = cb_fluentdo_init, - .cb_exit = cb_fluentdo_exit, +struct flb_custom_plugin custom_telemetryforge_plugin = { + .name = "telemetryforge", + .description = "Telemetry Forge Manager Agent Registration", + .cb_init = cb_telemetryforge_init, + .cb_exit = cb_telemetryforge_exit, .config_map = config_map }; diff --git a/source/plugins/custom_fluentdo/fluentdo.h b/source/plugins/custom_telemetryforge/telemetryforge.h similarity index 92% rename from source/plugins/custom_fluentdo/fluentdo.h rename to source/plugins/custom_telemetryforge/telemetryforge.h index 85ded544..08f5f7a4 100644 --- a/source/plugins/custom_fluentdo/fluentdo.h +++ b/source/plugins/custom_telemetryforge/telemetryforge.h @@ -17,8 +17,8 @@ * limitations under the License. */ -#ifndef FLB_CUSTOM_FLUENTDO_H -#define FLB_CUSTOM_FLUENTDO_H +#ifndef FLB_CUSTOM_TELEMETRY_FORGE_H +#define FLB_CUSTOM_TELEMETRY_FORGE_H #include #include diff --git a/source/plugins/in_fluentdo/CMakeLists.txt b/source/plugins/in_fluentdo/CMakeLists.txt deleted file mode 100644 index e646bf6f..00000000 --- a/source/plugins/in_fluentdo/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -set(src - fluentdo.c - ) - -FLB_PLUGIN(in_fluentdo "${src}" "") diff --git a/source/plugins/in_telemetryforge/CMakeLists.txt b/source/plugins/in_telemetryforge/CMakeLists.txt new file mode 100644 index 00000000..b20c1401 --- /dev/null +++ b/source/plugins/in_telemetryforge/CMakeLists.txt @@ -0,0 +1,5 @@ +set(src + telemetryforge.c + ) + +FLB_PLUGIN(in_telemetryforge "${src}" "") diff --git a/source/plugins/in_fluentdo/fluentdo.c b/source/plugins/in_telemetryforge/telemetryforge.c similarity index 86% rename from source/plugins/in_fluentdo/fluentdo.c rename to source/plugins/in_telemetryforge/telemetryforge.c index 418abd61..28df8d2d 100644 --- a/source/plugins/in_fluentdo/fluentdo.c +++ b/source/plugins/in_telemetryforge/telemetryforge.c @@ -42,16 +42,17 @@ #endif #include -#define FLUENTDO_DEFAULT_URL "https://api.fluent.do/graphql" -#define FLUENTDO_DEFAULT_INTERVAL 60 -#define FLUENTDO_SESSION_FILE "session" +/* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ +#define TELEMETRY_FORGE_DEFAULT_URL "https://api.fluent.do/graphql" +#define TELEMETRY_FORGE_DEFAULT_INTERVAL 60 +#define TELEMETRY_FORGE_SESSION_FILE "session" /* Macro for stringifying build metadata */ #define STRINGIFY(x) #x #define TOSTRING(x) STRINGIFY(x) /* Plugin context */ -struct flb_in_fluentdo { +struct flb_in_telemetryforge { struct flb_graphql_client *graphql_client; struct flb_input_instance *ins; @@ -176,7 +177,7 @@ static struct mk_list *parse_labels(struct flb_input_instance *ins, } /* Load session from file store */ -static int load_session(struct flb_in_fluentdo *ctx) +static int load_session(struct flb_in_telemetryforge *ctx) { int ret; int i; @@ -239,7 +240,7 @@ static int load_session(struct flb_in_fluentdo *ctx) } /* Save session to file store */ -static int save_session(struct flb_in_fluentdo *ctx) +static int save_session(struct flb_in_telemetryforge *ctx) { int ret; msgpack_sbuffer mp_sbuf; @@ -256,7 +257,7 @@ static int save_session(struct flb_in_fluentdo *ctx) /* Create new session file with size hint */ ctx->fs_file = flb_fstore_file_create(ctx->fs, ctx->fs_stream, - FLUENTDO_SESSION_FILE, 1024); + TELEMETRY_FORGE_SESSION_FILE, 1024); if (!ctx->fs_file) { flb_plg_error(ctx->ins, "could not create session file"); return -1; @@ -298,7 +299,7 @@ static int save_session(struct flb_in_fluentdo *ctx) } /* Initialize file store */ -static int store_init(struct flb_in_fluentdo *ctx) +static int store_init(struct flb_in_telemetryforge *ctx) { struct flb_fstore_file *fsf; @@ -314,7 +315,7 @@ static int store_init(struct flb_in_fluentdo *ctx) } /* Create stream */ - ctx->fs_stream = flb_fstore_stream_create(ctx->fs, "fluentdo"); + ctx->fs_stream = flb_fstore_stream_create(ctx->fs, "telemetryforge"); if (!ctx->fs_stream) { flb_plg_error(ctx->ins, "could not create storage stream"); return -1; @@ -322,8 +323,8 @@ static int store_init(struct flb_in_fluentdo *ctx) /* Look for existing session file */ fsf = flb_fstore_file_get(ctx->fs, ctx->fs_stream, - FLUENTDO_SESSION_FILE, - strlen(FLUENTDO_SESSION_FILE)); + TELEMETRY_FORGE_SESSION_FILE, + strlen(TELEMETRY_FORGE_SESSION_FILE)); if (fsf) { ctx->fs_file = fsf; load_session(ctx); @@ -374,8 +375,8 @@ static uint64_t collect_output_bytes(struct flb_config *config) return total; } -/* Send metrics to FluentDo API */ -static int send_metrics(struct flb_in_fluentdo *ctx, struct flb_config *config) +/* Send metrics to Telemetry Forge API */ +static int send_metrics(struct flb_in_telemetryforge *ctx, struct flb_config *config) { int ret; uint64_t input_bytes; @@ -433,10 +434,10 @@ static int send_metrics(struct flb_in_fluentdo *ctx, struct flb_config *config) } /* Collector callback - called periodically */ -static int cb_fluentdo_collect(struct flb_input_instance *ins, +static int cb_telemetryforge_collect(struct flb_input_instance *ins, struct flb_config *config, void *in_context) { - struct flb_in_fluentdo *ctx = in_context; + struct flb_in_telemetryforge *ctx = in_context; flb_plg_debug(ins, "metrics collector triggered"); @@ -449,12 +450,12 @@ static int cb_fluentdo_collect(struct flb_input_instance *ins, } /* Callback for plugin initialization */ -static int cb_fluentdo_init(struct flb_input_instance *ins, +static int cb_telemetryforge_init(struct flb_input_instance *ins, struct flb_config *config, void *data) { int ret; - struct flb_in_fluentdo *ctx; + struct flb_in_telemetryforge *ctx; struct flb_graphql_create_agent_input input; struct flb_graphql_create_agent_result result; struct flb_graphql_client *update_client; @@ -465,7 +466,7 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, const char *distro = NULL; const char *package_type = NULL; - ctx = flb_calloc(1, sizeof(struct flb_in_fluentdo)); + ctx = flb_calloc(1, sizeof(struct flb_in_telemetryforge)); if (!ctx) { flb_errno(); return -1; @@ -481,18 +482,20 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, /* Set default interval if not provided */ if (ctx->interval_sec <= 0) { - ctx->interval_sec = FLUENTDO_DEFAULT_INTERVAL; + ctx->interval_sec = TELEMETRY_FORGE_DEFAULT_INTERVAL; } /* Set default agent_kind to fluentdo if not provided */ if (!ctx->agent_kind) { + /* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ ctx->agent_kind = flb_strdup("fluentdo"); } /* Validate agent_kind */ if (strcasecmp(ctx->agent_kind, "fluentbit") != 0 && - strcasecmp(ctx->agent_kind, "fluentdo") != 0) { - flb_plg_error(ins, "invalid agent_kind: %s (must be 'fluentbit' or 'fluentdo')", + strcasecmp(ctx->agent_kind, "fluentdo") != 0 && + strcasecmp(ctx->agent_kind, "telemetryforge") != 0) { + flb_plg_error(ins, "invalid agent_kind: %s (must be 'fluentbit', 'fluentdo' or 'telemetryforge')", ctx->agent_kind); flb_free(ctx); return -1; @@ -528,14 +531,14 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, commit_hash = "unknown"; #endif -#ifdef FLUENTDO_AGENT_DISTRO - build_distro = TOSTRING(FLUENTDO_AGENT_DISTRO); +#ifdef TELEMETRY_FORGE_AGENT_DISTRO + build_distro = TOSTRING(TELEMETRY_FORGE_AGENT_DISTRO); #else build_distro = "unknown"; #endif -#ifdef FLUENTDO_AGENT_PACKAGE_TYPE - build_package_type = TOSTRING(FLUENTDO_AGENT_PACKAGE_TYPE); +#ifdef TELEMETRY_FORGE_AGENT_PACKAGE_TYPE + build_package_type = TOSTRING(TELEMETRY_FORGE_AGENT_PACKAGE_TYPE); #else build_package_type = "unknown"; #endif @@ -597,6 +600,8 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, /* Prepare registration input */ input.kind = (strcasecmp(ctx->agent_kind, "fluentbit") == 0) ? + /* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 + FLB_GRAPHQL_AGENT_KIND_FLUENTBIT : FLB_GRAPHQL_AGENT_KIND_TELEMETRY_FORGE;*/ FLB_GRAPHQL_AGENT_KIND_FLUENTBIT : FLB_GRAPHQL_AGENT_KIND_FLUENTDO; input.name = ctx->agent_name; input.version = version; @@ -606,14 +611,14 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, input.labels = ctx->labels; /* Set build metadata if available */ -#ifdef FLUENTDO_AGENT_DISTRO - input.distro = TOSTRING(FLUENTDO_AGENT_DISTRO); +#ifdef TELEMETRY_FORGE_AGENT_DISTRO + input.distro = TOSTRING(TELEMETRY_FORGE_AGENT_DISTRO); #else input.distro = NULL; #endif -#ifdef FLUENTDO_AGENT_PACKAGE_TYPE - input.package_type = TOSTRING(FLUENTDO_AGENT_PACKAGE_TYPE); +#ifdef TELEMETRY_FORGE_AGENT_PACKAGE_TYPE + input.package_type = TOSTRING(TELEMETRY_FORGE_AGENT_PACKAGE_TYPE); #else input.package_type = NULL; #endif @@ -683,12 +688,12 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, /* Update agent config and labels using agent token */ if (config_content || (ctx->labels && mk_list_size(ctx->labels) > 0)) { /* Set build metadata if available */ -#ifdef FLUENTDO_AGENT_DISTRO - distro = TOSTRING(FLUENTDO_AGENT_DISTRO); +#ifdef TELEMETRY_FORGE_AGENT_DISTRO + distro = TOSTRING(TELEMETRY_FORGE_AGENT_DISTRO); #endif -#ifdef FLUENTDO_AGENT_PACKAGE_TYPE - package_type = TOSTRING(FLUENTDO_AGENT_PACKAGE_TYPE); +#ifdef TELEMETRY_FORGE_AGENT_PACKAGE_TYPE + package_type = TOSTRING(TELEMETRY_FORGE_AGENT_PACKAGE_TYPE); #endif /* Create GraphQL client with agent token for update */ @@ -723,7 +728,7 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, /* Set up periodic collector */ flb_plg_debug(ins, "setting up collector with interval=%d seconds", ctx->interval_sec); ret = flb_input_set_collector_time(ins, - cb_fluentdo_collect, + cb_telemetryforge_collect, ctx->interval_sec, 0, config); if (ret == -1) { @@ -748,9 +753,9 @@ static int cb_fluentdo_init(struct flb_input_instance *ins, } /* Callback for plugin cleanup */ -static int cb_fluentdo_exit(void *data, struct flb_config *config) +static int cb_telemetryforge_exit(void *data, struct flb_config *config) { - struct flb_in_fluentdo *ctx = data; + struct flb_in_telemetryforge *ctx = data; struct mk_list *head, *tmp; struct flb_graphql_label *label; @@ -793,57 +798,58 @@ static int cb_fluentdo_exit(void *data, struct flb_config *config) /* Plugin configuration map */ static struct flb_config_map config_map[] = { { - FLB_CONFIG_MAP_STR, "api_url", FLUENTDO_DEFAULT_URL, - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, api_url), - "FluentDo Manager GraphQL API endpoint URL" + FLB_CONFIG_MAP_STR, "api_url", TELEMETRY_FORGE_DEFAULT_URL, + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, api_url), + "Telemetry Forge Manager GraphQL API endpoint URL" }, { FLB_CONFIG_MAP_STR, "api_token", NULL, - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, api_token), - "FluentDo Manager API token for registration" + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, api_token), + "Telemetry Forge Manager API token for registration" }, { FLB_CONFIG_MAP_STR, "agent_name", NULL, - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, agent_name), + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, agent_name), "Agent name (defaults to hostname)" }, { FLB_CONFIG_MAP_STR, "agent_kind", "fluentdo", - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, agent_kind), - "Agent kind: 'fluentbit' or 'fluentdo' (default: 'fluentdo')" + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, agent_kind), + /* Ensure we update the default once ready: https://github.com/telemetryforge/agent/issues/183 */ + "Agent kind: 'fluentbit', 'fluentdo' or 'telemetryforge' (default: 'fluentdo')" }, { FLB_CONFIG_MAP_INT, "interval_sec", "60", - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, interval_sec), + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, interval_sec), "Interval in seconds for metrics reporting" }, { FLB_CONFIG_MAP_STR, "store_path", NULL, - 0, FLB_TRUE, offsetof(struct flb_in_fluentdo, store_path), + 0, FLB_TRUE, offsetof(struct flb_in_telemetryforge, store_path), "Path to store session state (agent_id and token)" }, { FLB_CONFIG_MAP_STR, "proxy", NULL, - 0, FLB_FALSE, offsetof(struct flb_in_fluentdo, proxy), + 0, FLB_FALSE, offsetof(struct flb_in_telemetryforge, proxy), "Specify an HTTP Proxy in format http://host:port" }, { FLB_CONFIG_MAP_STR, "label", NULL, - FLB_CONFIG_MAP_MULT, FLB_TRUE, offsetof(struct flb_in_fluentdo, label_list), + FLB_CONFIG_MAP_MULT, FLB_TRUE, offsetof(struct flb_in_telemetryforge, label_list), "Agent labels in key=value format (can be specified multiple times)" }, {0} }; /* Plugin registration */ -struct flb_input_plugin in_fluentdo_plugin = { - .name = "fluentdo", - .description = "FluentDo Manager Agent Integration with Metrics", - .cb_init = cb_fluentdo_init, +struct flb_input_plugin in_telemetryforge_plugin = { + .name = "telemetryforge", + .description = "Telemetry Forge Manager Agent Integration with Metrics", + .cb_init = cb_telemetryforge_init, .cb_pre_run = NULL, - .cb_collect = cb_fluentdo_collect, + .cb_collect = cb_telemetryforge_collect, .cb_flush_buf = NULL, - .cb_exit = cb_fluentdo_exit, + .cb_exit = cb_telemetryforge_exit, .config_map = config_map, .flags = 0 }; diff --git a/source/plugins/in_fluentdo/fluentdo.h b/source/plugins/in_telemetryforge/telemetryforge.h similarity index 92% rename from source/plugins/in_fluentdo/fluentdo.h rename to source/plugins/in_telemetryforge/telemetryforge.h index 1fc89133..4651ab12 100644 --- a/source/plugins/in_fluentdo/fluentdo.h +++ b/source/plugins/in_telemetryforge/telemetryforge.h @@ -17,8 +17,8 @@ * limitations under the License. */ -#ifndef FLB_IN_FLUENTDO_H -#define FLB_IN_FLUENTDO_H +#ifndef FLB_IN_TELEMETRY_FORGE_H +#define FLB_IN_TELEMETRY_FORGE_H #include #include diff --git a/source/src/flb_engine.c b/source/src/flb_engine.c index 5b7df0fe..40a06b19 100644 --- a/source/src/flb_engine.c +++ b/source/src/flb_engine.c @@ -772,7 +772,7 @@ int flb_engine_start(struct flb_config *config) return -1; } - flb_info("[fluentdo agent] version=%s, commit=%.10s, pid=%i", + flb_info("[telemetryforge agent] version=%s, commit=%.10s, pid=%i", FLB_VERSION_STR, FLB_GIT_HASH, getpid()); #ifdef FLB_SYSTEM_WINDOWS diff --git a/testing/bats/helpers/test-helpers.bash b/testing/bats/helpers/test-helpers.bash index b68c31f9..1bfad692 100644 --- a/testing/bats/helpers/test-helpers.bash +++ b/testing/bats/helpers/test-helpers.bash @@ -26,7 +26,7 @@ function skipIfNotLinux() { } function skipIfPackageNotInstalled() { - if [[ "${FLUENTDO_AGENT_PACKAGE_INSTALLED:-}" != "true" ]]; then + if [[ "${TELEMETRY_FORGE_AGENT_PACKAGE_INSTALLED:-}" != "true" ]]; then skip 'Skipping test: package not installed' fi } @@ -65,11 +65,11 @@ function skipIfNotMacOS() { } function skipIfNotContainer() { - if [ -z "${FLUENTDO_AGENT_IMAGE}" ]; then - skip "Skipping test: FLUENTDO_AGENT_IMAGE not set" + if [ -z "${TELEMETRY_FORGE_AGENT_IMAGE}" ]; then + skip "Skipping test: TELEMETRY_FORGE_AGENT_IMAGE not set" fi - if [ -z "${FLUENTDO_AGENT_TAG}" ]; then - fail "FLUENTDO_AGENT_TAG not set" + if [ -z "${TELEMETRY_FORGE_AGENT_TAG}" ]; then + fail "TELEMETRY_FORGE_AGENT_TAG not set" fi CONTAINER_RUNTIME=${CONTAINER_RUNTIME:-docker} # All container tests assume Docker is available and can run containers diff --git a/testing/bats/run-bats.sh b/testing/bats/run-bats.sh index 4c796177..753240fd 100755 --- a/testing/bats/run-bats.sh +++ b/testing/bats/run-bats.sh @@ -14,16 +14,16 @@ done SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) export FLUENT_BIT_BINARY=${FLUENT_BIT_BINARY:-/fluent-bit/bin/fluent-bit} -export FLUENTDO_AGENT_VERSION=${FLUENTDO_AGENT_VERSION:-26.1.3} -export FLUENTDO_AGENT_URL="${FLUENTDO_AGENT_URL:-https://staging.fluent.do}" +export TELEMETRY_FORGE_AGENT_VERSION=${TELEMETRY_FORGE_AGENT_VERSION:-26.1.3} +export TELEMETRY_FORGE_AGENT_URL="${TELEMETRY_FORGE_AGENT_URL:-https://staging.fluent.do}" echo "INFO: Testing with binary '$FLUENT_BIT_BINARY'" -echo "INFO: Testing with version '$FLUENTDO_AGENT_VERSION'" -echo "INFO: Testing with URL '$FLUENTDO_AGENT_URL'" +echo "INFO: Testing with version '$TELEMETRY_FORGE_AGENT_VERSION'" +echo "INFO: Testing with URL '$TELEMETRY_FORGE_AGENT_URL'" # Optional variables for container/k8s tests -# FLUENTDO_AGENT_IMAGE=... -# FLUENTDO_AGENT_TAG=... +# TELEMETRY_FORGE_AGENT_IMAGE=... +# TELEMETRY_FORGE_AGENT_TAG=... # Attempt to auto-parallelise when available, only across files if [[ -z "${BATS_PARALLEL_BINARY_NAME:-}" ]]; then diff --git a/testing/bats/run-container-integration-tests.sh b/testing/bats/run-container-integration-tests.sh index 37c2f08b..2c779134 100755 --- a/testing/bats/run-container-integration-tests.sh +++ b/testing/bats/run-container-integration-tests.sh @@ -13,8 +13,8 @@ while [ -L "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli done SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) -export FLUENTDO_AGENT_IMAGE=${FLUENTDO_AGENT_IMAGE:?} -export FLUENTDO_AGENT_TAG=${FLUENTDO_AGENT_TAG:?} +export TELEMETRY_FORGE_AGENT_IMAGE=${TELEMETRY_FORGE_AGENT_IMAGE:?} +export TELEMETRY_FORGE_AGENT_TAG=${TELEMETRY_FORGE_AGENT_TAG:?} export CONTAINER_RUNTIME=${CONTAINER_RUNTIME:-docker} "$SCRIPT_DIR"/run-bats.sh --filter-tags 'integration,containers' --recursive "$SCRIPT_DIR/tests" diff --git a/testing/bats/run-k8s-integration-tests.sh b/testing/bats/run-k8s-integration-tests.sh index 511b3edd..44ea4a02 100755 --- a/testing/bats/run-k8s-integration-tests.sh +++ b/testing/bats/run-k8s-integration-tests.sh @@ -19,11 +19,11 @@ REPO_ROOT=${REPO_ROOT:-"$SCRIPT_DIR/../.."} # Allow overriding container runtime, default to docker export CONTAINER_RUNTIME=${CONTAINER_RUNTIME:-docker} -export FLUENTDO_AGENT_IMAGE=${FLUENTDO_AGENT_IMAGE:-ghcr.io/fluentdo/agent/ubi} +export TELEMETRY_FORGE_AGENT_IMAGE=${TELEMETRY_FORGE_AGENT_IMAGE:-ghcr.io/telemetryforge/agent/ubi} # Set this to `local` to build and use a local image -export FLUENTDO_AGENT_TAG=${FLUENTDO_AGENT_TAG:-main} +export TELEMETRY_FORGE_AGENT_TAG=${TELEMETRY_FORGE_AGENT_TAG:-main} -CONTAINER_IMAGE="${FLUENTDO_AGENT_IMAGE}:${FLUENTDO_AGENT_TAG}" +CONTAINER_IMAGE="${TELEMETRY_FORGE_AGENT_IMAGE}:${TELEMETRY_FORGE_AGENT_TAG}" KIND_CLUSTER_NAME=${KIND_CLUSTER_NAME:-kind} KIND_VERSION=${KIND_VERSION:-v1.34.0} KIND_NODE_IMAGE=${KIND_NODE_IMAGE:-kindest/node:$KIND_VERSION} @@ -33,9 +33,9 @@ echo "INFO: Using KIND cluster name: $KIND_CLUSTER_NAME" echo "INFO: Using KIND node image: $KIND_NODE_IMAGE" # Always attempt to pull the latest image unless we are using a local image -if [[ "$FLUENTDO_AGENT_TAG" == "local" ]]; then - # Build the local image if needed, assume if FLUENTDO_AGENT_IMAGE ends in "ubi" we build the Dockerfile.ubi - if [[ "$FLUENTDO_AGENT_IMAGE" == *"ubi" ]]; then +if [[ "$TELEMETRY_FORGE_AGENT_TAG" == "local" ]]; then + # Build the local image if needed, assume if TELEMETRY_FORGE_AGENT_IMAGE ends in "ubi" we build the Dockerfile.ubi + if [[ "$TELEMETRY_FORGE_AGENT_IMAGE" == *"ubi" ]]; then echo "INFO: Building local UBI image" "$CONTAINER_RUNTIME" build -t "$CONTAINER_IMAGE" -f "$REPO_ROOT"/Dockerfile.ubi "$REPO_ROOT" else diff --git a/testing/bats/run-package-functional-tests.sh b/testing/bats/run-package-functional-tests.sh index 6e931b70..a7dd06be 100755 --- a/testing/bats/run-package-functional-tests.sh +++ b/testing/bats/run-package-functional-tests.sh @@ -16,11 +16,11 @@ SCRIPT_DIR=$(cd -P "$(dirname "$SOURCE")" >/dev/null 2>&1 && pwd) export CONTAINER_RUNTIME=${CONTAINER_RUNTIME:-docker} export BASE_IMAGE=${BASE_IMAGE:-dokken/centos-6} export DISTRO=${DISTRO:-centos/6} -export FLUENT_BIT_BINARY=${FLUENT_BIT_BINARY:-/opt/fluentdo-agent/bin/fluent-bit} +export FLUENT_BIT_BINARY=${FLUENT_BIT_BINARY:-/opt/telemetryforge-agent/bin/fluent-bit} # Only used if no packages downloaded and running manually (not in CI) -export FLUENTDO_AGENT_URL=${FLUENTDO_AGENT_URL:-https://staging.fluent.do} -export FLUENTDO_AGENT_VERSION=${FLUENTDO_AGENT_VERSION:-26.1.3} +export TELEMETRY_FORGE_AGENT_URL=${TELEMETRY_FORGE_AGENT_URL:-https://staging.fluent.do} +export TELEMETRY_FORGE_AGENT_VERSION=${TELEMETRY_FORGE_AGENT_VERSION:-26.1.3} # Location of packages to test export DOWNLOAD_DIR=${DOWNLOAD_DIR:-$PWD/downloads} @@ -50,7 +50,7 @@ if [[ $FOUND_FILES == false ]]; then exit 1 else echo "INFO: Package to use is not present in $DOWNLOAD_DIR so will download now" - echo "INFO: e.g. cd $DOWNLOAD_DIR && curl -sSfLO https://${FLUENTDO_AGENT_URL}/${FLUENTDO_AGENT_VERSION}/output/package-almalinux-8/fluentdo-agent-${FLUENTDO_AGENT_VERSION}.x86_64.rpm" + echo "INFO: e.g. cd $DOWNLOAD_DIR && curl -sSfLO ${TELEMETRY_FORGE_AGENT_URL}/${TELEMETRY_FORGE_AGENT_VERSION}/output/package-almalinux-8/telemetryforge-agent-${TELEMETRY_FORGE_AGENT_VERSION}.x86_64.rpm" # Set up overrides for install script # almalinux/8 becomes DISTRO_ID=almalinux, DISTRO_VERSION=8 @@ -77,7 +77,7 @@ echo "INFO: running test container 'bats/test/$DISTRO'" "${CONTAINER_RUNTIME}" run --rm -t \ -v "$DOWNLOAD_DIR:/downloads:ro" \ -e FLUENT_BIT_BINARY="$FLUENT_BIT_BINARY" \ - -e FLUENTDO_AGENT_PACKAGE_INSTALLED=true \ + -e TELEMETRY_FORGE_AGENT_PACKAGE_INSTALLED=true \ "bats/test/$DISTRO" echo "INFO: All tests complete" diff --git a/testing/bats/run-package-integration-tests.sh b/testing/bats/run-package-integration-tests.sh index 142a843c..96a4454f 100755 --- a/testing/bats/run-package-integration-tests.sh +++ b/testing/bats/run-package-integration-tests.sh @@ -13,7 +13,7 @@ while [ -L "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli done SCRIPT_DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd ) -export FLUENT_BIT_BINARY=${FLUENT_BIT_BINARY:-/opt/fluentdo-agent/bin/fluent-bit} +export FLUENT_BIT_BINARY=${FLUENT_BIT_BINARY:-/opt/telemetryforge-agent/bin/fluent-bit} "$SCRIPT_DIR"/run-bats.sh --filter-tags 'integration,!container,!k8s' --recursive "$SCRIPT_DIR/tests" echo "INFO: All tests complete" diff --git a/testing/bats/tests/functional/common/simple.bats b/testing/bats/tests/functional/common/simple.bats index d65d2124..3a748d0c 100644 --- a/testing/bats/tests/functional/common/simple.bats +++ b/testing/bats/tests/functional/common/simple.bats @@ -19,15 +19,15 @@ function teardown() { [ -x "$FLUENT_BIT_BINARY" ] } -@test "verify FLUENTDO_AGENT_VERSION is set and valid" { - [ -n "${FLUENTDO_AGENT_VERSION:-}" ] - [[ "$FLUENTDO_AGENT_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] +@test "verify TELEMETRY_FORGE_AGENT_VERSION is set and valid" { + [ -n "${TELEMETRY_FORGE_AGENT_VERSION:-}" ] + [[ "$TELEMETRY_FORGE_AGENT_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] } @test "verify version" { run "$FLUENT_BIT_BINARY" --version [ "$status" -eq 0 ] - [[ "$output" =~ FluentDo\ Agent\ v$FLUENTDO_AGENT_VERSION ]] + [[ "$output" =~ Telemetry\ Forge\ Agent\ v$TELEMETRY_FORGE_AGENT_VERSION ]] } @test "verify help" { diff --git a/testing/bats/tests/functional/linux/verify-deb.bats b/testing/bats/tests/functional/linux/verify-deb.bats index 987df111..d4d534f2 100644 --- a/testing/bats/tests/functional/linux/verify-deb.bats +++ b/testing/bats/tests/functional/linux/verify-deb.bats @@ -16,7 +16,7 @@ setup() { skip "Skipping test: no dpkg command" fi - export PACKAGE_NAME="fluentdo-agent" + export PACKAGE_NAME="telemetryforge-agent" } teardown() { @@ -37,11 +37,11 @@ teardown() { @test "DEB package version is correct" { run dpkg -s "$PACKAGE_NAME" assert_success - assert_output --partial "Version: $FLUENTDO_AGENT_VERSION" + assert_output --partial "Version: $TELEMETRY_FORGE_AGENT_VERSION" assert_output --partial 'Status: install ok installed' } -@test "DEB package provides fluentdo-agent" { +@test "DEB package provides telemetryforge-agent" { run apt-cache policy "$PACKAGE_NAME" assert_success } diff --git a/testing/bats/tests/functional/linux/verify-files.bats b/testing/bats/tests/functional/linux/verify-files.bats index 9ae6608b..cdaae8ea 100644 --- a/testing/bats/tests/functional/linux/verify-files.bats +++ b/testing/bats/tests/functional/linux/verify-files.bats @@ -11,8 +11,8 @@ load "$BATS_FILE_ROOT/load.bash" setup() { skipIfNotLinux - export INSTALL_PREFIX="/opt/fluentdo-agent" - export PACKAGE_NAME="fluentdo-agent" + export INSTALL_PREFIX="/opt/telemetryforge-agent" + export PACKAGE_NAME="telemetryforge-agent" # Ensure we skip tests in the container skipIfPackageNotInstalled @@ -34,19 +34,19 @@ teardown() { # /etc/fluent-bit/fluent-bit.conf # /etc/fluent-bit/parsers.conf # /etc/fluent-bit/plugins.conf -# /opt/fluentdo-agent/bin/fluent-bit +# /opt/telemetryforge-agent/bin/fluent-bit # [/usr]/lib/systemd/system/fluent-bit.service # ============================================================================ # Installation Directory Tests # ============================================================================ -@test "Installation directory /opt/fluentdo-agent exists" { - [ -d "/opt/fluentdo-agent" ] +@test "Installation directory /opt/telemetryforge-agent exists" { + [ -d "/opt/telemetryforge-agent" ] } -@test "bin directory exists at /opt/fluentdo-agent/bin" { - [ -d "/opt/fluentdo-agent/bin" ] +@test "bin directory exists at /opt/telemetryforge-agent/bin" { + [ -d "/opt/telemetryforge-agent/bin" ] } # Negative test for hyphenated directory which should not be present @@ -58,7 +58,7 @@ teardown() { # Binary Tests # ============================================================================ -@test "Main binary exists at /opt/fluentdo-agent/bin/fluent-bit" { +@test "Main binary exists at /opt/telemetryforge-agent/bin/fluent-bit" { assert_file_exists "$INSTALL_PREFIX/bin/fluent-bit" } @@ -128,17 +128,17 @@ teardown() { @test "Systemd service file contains correct description" { skipIfCentos6 - grep -q "Description=FluentDo Agent" \ + grep -q "Description=Telemetry Forge Agent" \ /lib/systemd/system/fluent-bit.service 2>/dev/null || \ - grep -q "Description=FluentDo Agent" \ + grep -q "Description=Telemetry Forge Agent" \ /usr/lib/systemd/system/fluent-bit.service 2>/dev/null } @test "Systemd service file points to correct executable" { skipIfCentos6 - grep -q "ExecStart=/opt/fluentdo-agent/bin/fluent-bit" \ + grep -q "ExecStart=/opt/telemetryforge-agent/bin/fluent-bit" \ /lib/systemd/system/fluent-bit.service 2>/dev/null || \ - grep -q "ExecStart=/opt/fluentdo-agent/bin/fluent-bit" \ + grep -q "ExecStart=/opt/telemetryforge-agent/bin/fluent-bit" \ /usr/lib/systemd/system/fluent-bit.service 2>/dev/null } diff --git a/testing/bats/tests/functional/linux/verify-rpm.bats b/testing/bats/tests/functional/linux/verify-rpm.bats index 567882a4..f257c443 100644 --- a/testing/bats/tests/functional/linux/verify-rpm.bats +++ b/testing/bats/tests/functional/linux/verify-rpm.bats @@ -16,7 +16,7 @@ setup() { skip "Skipping test: no RPM command" fi - export PACKAGE_NAME="fluentdo-agent" + export PACKAGE_NAME="telemetryforge-agent" } teardown() { @@ -28,7 +28,7 @@ teardown() { fi } -@test "RPM package provides fluentdo-agent" { +@test "RPM package provides telemetryforge-agent" { run rpm -qa assert_success assert_output --partial "$PACKAGE_NAME" @@ -43,7 +43,7 @@ teardown() { @test "RPM package files are correctly installed" { run rpm -ql "$PACKAGE_NAME" assert_success - assert_output --partial '/opt/fluentdo-agent/bin/fluent-bit' + assert_output --partial '/opt/telemetryforge-agent/bin/fluent-bit' } @test "RPM systemd service is installed" { diff --git a/testing/bats/tests/integration/containers/integration-simple-containers.bats b/testing/bats/tests/integration/containers/integration-simple-containers.bats index c22f19fe..3798b823 100644 --- a/testing/bats/tests/integration/containers/integration-simple-containers.bats +++ b/testing/bats/tests/integration/containers/integration-simple-containers.bats @@ -1,7 +1,7 @@ #!/usr/bin/env bats load "$HELPERS_ROOT/test-helpers.bash" -ensure_variables_set BATS_SUPPORT_ROOT BATS_ASSERT_ROOT BATS_FILE_ROOT FLUENTDO_AGENT_VERSION +ensure_variables_set BATS_SUPPORT_ROOT BATS_ASSERT_ROOT BATS_FILE_ROOT TELEMETRY_FORGE_AGENT_VERSION load "$BATS_SUPPORT_ROOT/load.bash" load "$BATS_ASSERT_ROOT/load.bash" @@ -15,27 +15,27 @@ setup() { skipIfNotContainer } -# All container tests use the environment variable FLUENTDO_AGENT_IMAGE to determine which image to test -@test "integration: verify FLUENTDO_AGENT_IMAGE is set" { - [ -n "${FLUENTDO_AGENT_IMAGE}" ] - [ -n "${FLUENTDO_AGENT_TAG}" ] +# All container tests use the environment variable TELEMETRY_FORGE_AGENT_IMAGE to determine which image to test +@test "integration: verify TELEMETRY_FORGE_AGENT_IMAGE is set" { + [ -n "${TELEMETRY_FORGE_AGENT_IMAGE}" ] + [ -n "${TELEMETRY_FORGE_AGENT_TAG}" ] } -# Verify we can pull and run the FLUENTDO_AGENT_IMAGE -@test "integration: verify pulling and running FLUENTDO_AGENT_IMAGE" { - run "$CONTAINER_RUNTIME" pull "${FLUENTDO_AGENT_IMAGE}:${FLUENTDO_AGENT_TAG}" +# Verify we can pull and run the TELEMETRY_FORGE_AGENT_IMAGE +@test "integration: verify pulling and running TELEMETRY_FORGE_AGENT_IMAGE" { + run "$CONTAINER_RUNTIME" pull "${TELEMETRY_FORGE_AGENT_IMAGE}:${TELEMETRY_FORGE_AGENT_TAG}" assert_success - run "$CONTAINER_RUNTIME" run --rm -t "${FLUENTDO_AGENT_IMAGE}:${FLUENTDO_AGENT_TAG}" --version + run "$CONTAINER_RUNTIME" run --rm -t "${TELEMETRY_FORGE_AGENT_IMAGE}:${TELEMETRY_FORGE_AGENT_TAG}" --version assert_success - assert_output --partial "FluentDo Agent v$FLUENTDO_AGENT_VERSION" + assert_output --partial "Telemetry Forge Agent v$TELEMETRY_FORGE_AGENT_VERSION" } @test "integration: verify default configuration is valid" { assert_file_exist "$BATS_TEST_DIRNAME/resources/fluent-bit.yaml" run "$CONTAINER_RUNTIME" run --rm -t \ -v "$BATS_TEST_DIRNAME/resources/fluent-bit.yaml:/fluent-bit/etc/fluent-bit.yaml:ro" \ - "${FLUENTDO_AGENT_IMAGE}:${FLUENTDO_AGENT_TAG}" \ + "${TELEMETRY_FORGE_AGENT_IMAGE}:${TELEMETRY_FORGE_AGENT_TAG}" \ -c /fluent-bit/etc/fluent-bit.yaml --dry-run assert_success assert_output --partial "configuration test is successful" diff --git a/testing/bats/tests/integration/k8s/chunk-rollover/basic.bats b/testing/bats/tests/integration/k8s/chunk-rollover/basic.bats index 060490f8..79154dbd 100644 --- a/testing/bats/tests/integration/k8s/chunk-rollover/basic.bats +++ b/testing/bats/tests/integration/k8s/chunk-rollover/basic.bats @@ -31,8 +31,8 @@ function teardown() { # replace the namespace for svc FQDN helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values ${BATS_TEST_DIRNAME}/resources/helm/fluentbit-basic.yaml \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --set env[0].name=NAMESPACE,env[0].value="${NAMESPACE}" \ --timeout "${HELM_TIMEOUT:-5m0s}" \ diff --git a/testing/bats/tests/integration/k8s/elasticsearch/basic.bats b/testing/bats/tests/integration/k8s/elasticsearch/basic.bats index 45748121..e5782170 100644 --- a/testing/bats/tests/integration/k8s/elasticsearch/basic.bats +++ b/testing/bats/tests/integration/k8s/elasticsearch/basic.bats @@ -49,8 +49,8 @@ function teardown() { helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values "${BATS_TEST_DIRNAME}/resources/helm/fluentbit-basic.yaml" \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --timeout "${HELM_TIMEOUT:-5m0s}" \ --wait diff --git a/testing/bats/tests/integration/k8s/elasticsearch/compress.bats b/testing/bats/tests/integration/k8s/elasticsearch/compress.bats index c6ce503f..676ab247 100644 --- a/testing/bats/tests/integration/k8s/elasticsearch/compress.bats +++ b/testing/bats/tests/integration/k8s/elasticsearch/compress.bats @@ -49,8 +49,8 @@ function teardown() { helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values ${BATS_TEST_DIRNAME}/resources/helm/fluentbit-compress.yaml \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --timeout "${HELM_TIMEOUT:-10m0s}" \ --wait diff --git a/testing/bats/tests/integration/k8s/integration-basic-helm.bats b/testing/bats/tests/integration/k8s/integration-basic-helm.bats index aa8c209f..d6b22329 100644 --- a/testing/bats/tests/integration/k8s/integration-basic-helm.bats +++ b/testing/bats/tests/integration/k8s/integration-basic-helm.bats @@ -33,8 +33,8 @@ function teardown() { # Run with YAML configuration overrides # We need to run as root to create a DB file in /var/log run helm upgrade --install "$HELM_RELEASE_NAME" fluent/fluent-bit \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set existingConfigMap=$CONFIGMAP_NAME \ --set args[0]='--workdir=/fluent-bit/etc' \ --set args[1]='--config=/fluent-bit/etc/conf/fluent-bit.yaml' \ diff --git a/testing/bats/tests/integration/k8s/integration-systemd.bats b/testing/bats/tests/integration/k8s/integration-systemd.bats index 4d120c9b..49c5f516 100644 --- a/testing/bats/tests/integration/k8s/integration-systemd.bats +++ b/testing/bats/tests/integration/k8s/integration-systemd.bats @@ -33,8 +33,8 @@ function teardown() { # Run with YAML configuration overrides assert_file_exist "$BATS_TEST_DIRNAME/resources/systemd/values.yaml" run helm upgrade --install "$HELM_RELEASE_NAME" fluent/fluent-bit \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set existingConfigMap=$CONFIGMAP_NAME \ --values "$BATS_TEST_DIRNAME/resources/systemd/values.yaml" \ --timeout "${HELM_TIMEOUT:-5m0s}" \ diff --git a/testing/bats/tests/integration/k8s/kubernetes-plugins/namespaceLabels.bats b/testing/bats/tests/integration/k8s/kubernetes-plugins/namespaceLabels.bats index f742416a..182fbe86 100644 --- a/testing/bats/tests/integration/k8s/kubernetes-plugins/namespaceLabels.bats +++ b/testing/bats/tests/integration/k8s/kubernetes-plugins/namespaceLabels.bats @@ -115,8 +115,8 @@ function assertOutputHasNamespaceLabels() { function deployFB() { run helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values "${BATS_TEST_DIRNAME}/resources/fluentbit-namespace-labels.yaml" \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --set env[0].name=NAMESPACE,env[0].value="${NAMESPACE}" \ --set env[1].name=NODE_IP,env[1].valueFrom.fieldRef.fieldPath=status.hostIP \ diff --git a/testing/bats/tests/integration/k8s/kubernetes-plugins/podLabels.bats b/testing/bats/tests/integration/k8s/kubernetes-plugins/podLabels.bats index e68e782c..30b05921 100644 --- a/testing/bats/tests/integration/k8s/kubernetes-plugins/podLabels.bats +++ b/testing/bats/tests/integration/k8s/kubernetes-plugins/podLabels.bats @@ -32,8 +32,8 @@ function teardown() { @test "integration: upstream add kubernetes pod labels to records" { run helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values "${BATS_TEST_DIRNAME}/resources/fluentbit-pod-labels.yaml" \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --set env[0].name=NAMESPACE,env[0].value="${NAMESPACE}" \ --set env[1].name=NODE_IP,env[1].valueFrom.fieldRef.fieldPath=status.hostIP \ diff --git a/testing/bats/tests/integration/k8s/opensearch/basic.bats b/testing/bats/tests/integration/k8s/opensearch/basic.bats index 2facaa56..8fbbfd5d 100644 --- a/testing/bats/tests/integration/k8s/opensearch/basic.bats +++ b/testing/bats/tests/integration/k8s/opensearch/basic.bats @@ -62,8 +62,8 @@ function teardown() { helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ --values ${BATS_TEST_DIRNAME}/resources/helm/fluentbit-basic.yaml \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --timeout "${HELM_TIMEOUT:-5m0s}" \ --wait diff --git a/testing/bats/tests/integration/k8s/opensearch/hosted.bats b/testing/bats/tests/integration/k8s/opensearch/hosted.bats index 40581eed..6bbed620 100644 --- a/testing/bats/tests/integration/k8s/opensearch/hosted.bats +++ b/testing/bats/tests/integration/k8s/opensearch/hosted.bats @@ -42,8 +42,8 @@ function createYAMLConfig() { createYAMLConfig helm upgrade --install --create-namespace --namespace "$NAMESPACE" "$HELM_RELEASE_NAME" fluent/fluent-bit \ -f ${BATS_TEST_DIRNAME}/resources/helm/fluentbit-hosted.yaml \ - --set image.repository="$FLUENTDO_AGENT_IMAGE" \ - --set image.tag="$FLUENTDO_AGENT_TAG" \ + --set image.repository="$TELEMETRY_FORGE_AGENT_IMAGE" \ + --set image.tag="$TELEMETRY_FORGE_AGENT_TAG" \ --set securityContext.runAsUser=0 \ --timeout "${HELM_TIMEOUT:-10m0s}" \ --wait diff --git a/testing/bats/tests/integration/linux/integration-install-script.bats b/testing/bats/tests/integration/linux/integration-install-script.bats index eabff9cc..f16fd393 100644 --- a/testing/bats/tests/integration/linux/integration-install-script.bats +++ b/testing/bats/tests/integration/linux/integration-install-script.bats @@ -1,7 +1,7 @@ #!/usr/bin/env bats load "$HELPERS_ROOT/test-helpers.bash" -ensure_variables_set BATS_SUPPORT_ROOT BATS_ASSERT_ROOT BATS_FILE_ROOT FLUENTDO_AGENT_VERSION FLUENTDO_AGENT_URL +ensure_variables_set BATS_SUPPORT_ROOT BATS_ASSERT_ROOT BATS_FILE_ROOT TELEMETRY_FORGE_AGENT_VERSION TELEMETRY_FORGE_AGENT_URL load "$BATS_SUPPORT_ROOT/load.bash" load "$BATS_ASSERT_ROOT/load.bash" @@ -9,7 +9,7 @@ load "$BATS_FILE_ROOT/load.bash" # bats file_tags=integration,linux -# BATS tests for verifying FluentDo Agent package downloads +# BATS tests for verifying Telemetry Forge Agent package downloads setupFile() { skipIfNotLinux @@ -29,13 +29,13 @@ setupFile() { } # Test that URL is set -@test "integration: FLUENTDO_AGENT_URL is set" { - [ -n "$FLUENTDO_AGENT_URL" ] +@test "integration: TELEMETRY_FORGE_AGENT_URL is set" { + [ -n "$TELEMETRY_FORGE_AGENT_URL" ] } # Test that we can fetch the top-level index -@test "integration: can access index at $FLUENTDO_AGENT_URL/index.html" { - response=$(curl -s -o /dev/null -w "%{http_code}" "$FLUENTDO_AGENT_URL/index.html") +@test "integration: can access index at $TELEMETRY_FORGE_AGENT_URL/index.html" { + response=$(curl -s -o /dev/null -w "%{http_code}" "$TELEMETRY_FORGE_AGENT_URL/index.html") [ "$response" = "200" ] } @@ -47,7 +47,7 @@ setupFile() { run "$install_script" -h assert_success - assert_output --partial 'FluentDo Agent Installer' + assert_output --partial 'Telemetry Forge Agent Installer' } function download_package_test() { diff --git a/testing/bats/tests/integration/linux/integration-install-targets.bats b/testing/bats/tests/integration/linux/integration-install-targets.bats index e7ee7246..ceb20d20 100644 --- a/testing/bats/tests/integration/linux/integration-install-targets.bats +++ b/testing/bats/tests/integration/linux/integration-install-targets.bats @@ -9,7 +9,7 @@ load "$BATS_FILE_ROOT/load.bash" # bats file_tags=integration,linux -# BATS tests for verifying FluentDo Agent package installation via containers +# BATS tests for verifying Telemetry Forge Agent package installation via containers setupFile() { skipIfNotLinux @@ -24,7 +24,7 @@ setupFile() { sed -i -e "s|^#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-Base.repo && \ /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -35,7 +35,7 @@ setupFile() { run ${CONTAINER_RUNTIME:-docker} run --rm -t -v "${install_script}:/install.sh:ro" \ almalinux:8 /bin/sh -c '/install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -47,7 +47,7 @@ setupFile() { almalinux:9 /bin/sh -c 'yum install -y epel-release && \ /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -59,7 +59,7 @@ setupFile() { almalinux:10 /bin/sh -c 'yum install -y epel-release && \ /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -70,7 +70,7 @@ setupFile() { run ${CONTAINER_RUNTIME:-docker} run --rm -t -v "${install_script}:/install.sh:ro" \ ubuntu:22.04 /bin/sh -c 'apt-get update && apt-get install -y curl && /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -81,7 +81,7 @@ setupFile() { run ${CONTAINER_RUNTIME:-docker} run --rm -t -v "${install_script}:/install.sh:ro" \ ubuntu:24.04 /bin/sh -c 'apt-get update && apt-get install -y curl && /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -92,7 +92,7 @@ setupFile() { run ${CONTAINER_RUNTIME:-docker} run --rm -t -v "${install_script}:/install.sh:ro" \ debian:bookworm /bin/sh -c 'apt-get update && apt-get install -y curl && /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' } @@ -103,6 +103,6 @@ setupFile() { run ${CONTAINER_RUNTIME:-docker} run --rm -t -v "${install_script}:/install.sh:ro" \ debian:trixie /bin/sh -c 'apt-get update && apt-get install -y curl && /install.sh --debug' assert_success - assert_output --partial 'FluentDo Agent installation completed successfully!' + assert_output --partial 'Telemetry Forge Agent installation completed successfully!' refute_output --partial '[ERROR]' }