Skip to content

in_tail: reintroduced the old ignore_older behavior as opt-in #9755

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
5167a30
in_tail: reintroduced the old ignore_older behavior as opt-in
leonardo-albertovich Dec 20, 2024
f8efb2d
tests: runtime: in_tail: added test case for ignore_active_older_files
leonardo-albertovich Feb 4, 2025
1c48d05
release: update to 3.2.4 (#9754)
github-actions[bot] Dec 20, 2024
0b7783d
workflows: bump helm/kind-action from 1.11.0 to 1.12.0 (#9763)
dependabot[bot] Dec 24, 2024
82d6b76
core: add conditionals evaluation library. (#9749)
niedbalski Dec 28, 2024
8ac55a1
in_systemd: fix memory leak
bpetermannS11 Dec 27, 2024
280b27f
packaging: selects docker image target fpr local-build-all.sh (#9767)
Tradunsky Dec 30, 2024
bc8c649
build: bump to v4.0.0
edsiper Dec 31, 2024
e91f078
snap: bump to v4.0.0
edsiper Dec 31, 2024
4d81024
bitbake: bump to v4.0.0
edsiper Dec 31, 2024
10c5ad2
motd: v4.0
edsiper Dec 31, 2024
28f10d6
packaging: raspbian: support raspbian bookworm package creation (#9760)
cosmo0920 Jan 6, 2025
e64a4cb
stackdriver: add cloud_logging_base_url (#9779)
braydonk Jan 7, 2025
d1cc1a3
CODEOWNERS: change out_stackdriver code owners
braydonk Jan 7, 2025
aaf00ba
lib: monkey: add missing files
edsiper Jan 7, 2025
222354d
in_systemd: fix buffer over-read
bpetermannS11 Jan 2, 2025
9625010
build: added profile ingestion file
leonardo-albertovich Dec 18, 2024
fccd351
input_profiles: initial commit
leonardo-albertovich Dec 18, 2024
5fc9775
event: added profile signal type
leonardo-albertovich Dec 18, 2024
16bd116
input: added profile event support
leonardo-albertovich Dec 18, 2024
3741993
input_chunk: added profile event support
leonardo-albertovich Dec 18, 2024
4e5234b
input_event: added profile signal type
leonardo-albertovich Dec 18, 2024
057576f
output: added profile event support
leonardo-albertovich Dec 18, 2024
56a8e4d
processor: added profile event support
leonardo-albertovich Dec 18, 2024
3ce2885
router: added profile event support
leonardo-albertovich Dec 18, 2024
dd8d309
in_opentelemetry: added proper profile event ingestion support
leonardo-albertovich Dec 18, 2024
d656ddb
out_stdout: added profile event support
leonardo-albertovich Dec 18, 2024
0303385
out_opentelemetry: profiles support added
leonardo-albertovich Dec 19, 2024
185ac2d
in_opentelemetry: restored previous default profiles as text behavior
leonardo-albertovich Dec 19, 2024
37228ea
output: fixed constant that was meant to be a bit mask
leonardo-albertovich Dec 19, 2024
90b035d
processor: fixed constant that was meant to be a bit mask
leonardo-albertovich Dec 19, 2024
6cb4662
out_opentelemetry: renamed option as requested
leonardo-albertovich Dec 19, 2024
f820a04
output: added missing error reporting macro calls
leonardo-albertovich Dec 19, 2024
eb1805a
in_opentelemetry: renamed option I missed in the previous commit
leonardo-albertovich Dec 19, 2024
79571f2
docs: add swym logo to README (#9809)
erikbledsoe Jan 9, 2025
385a9ca
custom_calyptia: switch to YAML for Fleet config (#9698)
Jan 10, 2025
abc4c60
tests: runtime_shell: custom_calyptia prevent fail on macOS at cleanu…
Jan 13, 2025
5382ea3
workflows: macos: Build Intel Mac packages by macos-14-large runner
cosmo0920 Jan 15, 2025
3c3c01b
hash_table: added optional case insensitive mode
leonardo-albertovich Jan 17, 2025
1d150cc
http_client: moved additional headers after the standard header set
leonardo-albertovich Jan 17, 2025
b5a1742
http_common: updated to use the hash table in caseless mode
leonardo-albertovich Jan 17, 2025
60cf8b2
hash_table: add missing header to build on macOS
edsiper Jan 17, 2025
c0dfe9d
lib: monkey: upgrade to v1.8.2
edsiper Jan 17, 2025
1f9c6aa
in_ebpf: core: Prepare eBPF skeletons before starting to compile prop…
cosmo0920 Jan 21, 2025
3478111
pack: fix missing scientific notation in JSON parser
aivarasbaranauskas Jan 20, 2025
b7277a2
amazonlinux: Install development package of libcurl
cosmo0920 Jan 22, 2025
bb1563e
centos: Install libcurl for oauth on rdkafka
cosmo0920 Jan 22, 2025
3908431
debian: Install libcurl4-openssl-dev for oauth on rdkafka
cosmo0920 Jan 22, 2025
2b36907
raspbian: Install libcurl4-openssl-dev for oauth on rdkafka
cosmo0920 Jan 22, 2025
9f516f1
ubuntu: Install libcurl4-openssl-dev for oauth on rdkafka
cosmo0920 Jan 22, 2025
4fded56
dockerfiles: Add libcurl4 dependency for OAuth/OICD feature of librdk…
cosmo0920 Jan 23, 2025
d13e131
dockefiles: centos7: Add libcurl4 development package dependency for …
cosmo0920 Jan 23, 2025
f0d94be
dockerfile: Fix library dependencies
cosmo0920 Jan 23, 2025
2ebb2d9
workflows: update nightly builds for 3.2
Jan 24, 2025
555d3cc
workflows: speed up Raspbian builds
Jan 15, 2025
12cfe6b
workflows: speed up Raspbian builds
Jan 15, 2025
9eb0bb9
workflows: speed up Raspbian builds
Jan 15, 2025
6a48d16
workflows: speed up Raspbian builds
Jan 15, 2025
414a530
workflows: try new runner
Jan 20, 2025
99daf82
workflows: Use armv7_vpf target for raspbian on WAMR
cosmo0920 Jan 24, 2025
58a971c
workflows: increase size of container builders
Jan 24, 2025
d5ccc1a
packaging: skip empty repos
Jan 27, 2025
bc088e4
workflows: split container builds per-arch (#9875)
Jan 28, 2025
71e2650
in_opentelemetry: fix finalization of group for gRPC payload
edsiper Jan 28, 2025
062cbb8
tests: runtime: in_kubernetes_events: try/wait for output to make tes…
pwhelan Jan 29, 2025
bc9c57f
in_calyptia_fleet: log info about config pulled from API
nuclearpidgeon Jan 29, 2025
e7a3437
workflows: disable s390x container builds for release
Jan 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
202 changes: 147 additions & 55 deletions .github/workflows/call-build-images.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ on:
registry:
description: The registry to push container images to.
type: string
required: true
required: false
default: ghcr.io
username:
description: The username for the registry.
type: string
Expand Down Expand Up @@ -69,25 +70,33 @@ jobs:
replace-with: "$1"
flags: "g"

# This is the intended approach to multi-arch image and all the other checks scanning,
# signing, etc only trigger from this.
call-build-images:
needs:
- call-build-images-meta
name: Multiarch container images to GHCR
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
# Taken from https://docs.docker.com/build/ci/github-actions/multi-platform/#distribute-build-across-multiple-runners
# We split this out to make it easier to restart just one of them if it fails and do all in parallel
call-build-single-arch-container-images:
# Allow us to continue to create a manifest if we want
continue-on-error: true
permissions:
contents: read
packages: write
outputs:
production-digest: ${{ steps.build_push.outputs.digest }}
debug-digest: ${{ steps.debug_build_push.outputs.digest }}
strategy:
fail-fast: false
matrix:
platform:
- amd64
- arm64
- arm/v7
target:
- production
- debug
name: ${{ matrix.platform }}/${{ matrix.target }} container image build
# Use GitHub Actions ARM hosted runners
runs-on: ${{ (contains(matrix.platform, 'arm') && 'ubuntu-22.04-arm') || 'ubuntu-latest' }}
steps:
- name: Checkout code for modern style builds
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ inputs.ref }}
token: ${{ secrets.token }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
Expand All @@ -99,37 +108,108 @@ jobs:
uses: docker/login-action@v3
with:
registry: ${{ inputs.registry }}
username: ${{ inputs.username }}
username: ${{ github.actor }}
password: ${{ secrets.token }}

- name: Extract metadata from Github
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ inputs.registry }}/${{ inputs.image }}
tags: |
raw,${{ inputs.version }}
raw,${{ needs.call-build-images-meta.outputs.major-version }}
raw,latest

- name: Build the production images
id: build_push
- name: Build and push by digest the standard ${{ matrix.target }} image
id: build
uses: docker/build-push-action@v6
with:
# Use path context rather than Git context as we want local files
file: ./dockerfiles/Dockerfile
context: .
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64, linux/arm64, linux/arm/v7, linux/s390x
target: production
target: ${{ matrix.target }}
outputs: type=image,name=${{ inputs.registry }}/${{ inputs.image }},push-by-digest=true,name-canonical=true,push=true
platforms: linux/${{ matrix.platform }}
# Must be disabled to provide legacy format images from the registry
provenance: false
push: true
load: false
build-args: |
FLB_NIGHTLY_BUILD=${{ inputs.unstable }}
RELEASE_VERSION=${{ inputs.version }}
WAMR_BUILD_TARGET=${{ (contains(matrix.platform, 'arm/v7') && 'ARMV7') || '' }}

- name: Export ${{ matrix.target }} digest
run: |
mkdir -p /tmp/digests
digest="${{ steps.build.outputs.digest }}"
touch "/tmp/digests/${digest#sha256:}"
shell: bash

- name: Upload ${{ matrix.target }} digest
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.target }}-digests-${{ (contains(matrix.platform, 'arm/v7') && 'arm-v7') || matrix.platform }}
path: /tmp/digests/*
if-no-files-found: error
retention-days: 1

# Take the digests and produce a multi-arch manifest from them.
call-build-container-image-manifests:
permissions:
contents: read
packages: write
name: Upload multi-arch container image manifests
runs-on: ubuntu-latest
needs:
- call-build-images-meta
- call-build-single-arch-container-images
outputs:
version: ${{ steps.meta.outputs.version }}
steps:
- name: Extract metadata from Github
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ inputs.registry }}/${{ inputs.image }}
tags: |
raw,${{ inputs.version }}
raw,${{ needs.call-build-images-meta.outputs.major-version }}
raw,latest

- name: Download production digests
uses: actions/download-artifact@v4
with:
pattern: production-digests-*
path: /tmp/production-digests
merge-multiple: true

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Log in to the Container registry
uses: docker/login-action@v3
with:
registry: ${{ inputs.registry }}
username: ${{ github.actor }}
password: ${{ secrets.token }}

- name: Create production manifest
run: |
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf '${{ inputs.registry }}/${{ inputs.image }}@sha256:%s ' *)
shell: bash
working-directory: /tmp/production-digests

- name: Inspect image
run: |
docker buildx imagetools inspect ${{ inputs.registry }}/${{ inputs.image }}:${{ steps.meta.outputs.version }}
shell: bash

# Take the digests and produce a multi-arch manifest from them.
call-build-debug-container-image-manifests:
permissions:
contents: read
packages: write
name: Upload debug multi-arch container image manifests
runs-on: ubuntu-latest
needs:
- call-build-images-meta
- call-build-single-arch-container-images
outputs:
version: ${{ steps.debug-meta.outputs.version }}
steps:
- id: debug-meta
uses: docker/metadata-action@v5
with:
Expand All @@ -139,28 +219,39 @@ jobs:
raw,${{ needs.call-build-images-meta.outputs.major-version }}-debug
raw,latest-debug

- name: Build the debug multi-arch images
id: debug_build_push
uses: docker/build-push-action@v6
- name: Download debug digests
uses: actions/download-artifact@v4
with:
file: ./dockerfiles/Dockerfile
context: .
tags: ${{ steps.debug-meta.outputs.tags }}
labels: ${{ steps.debug-meta.outputs.labels }}
platforms: linux/amd64, linux/arm64, linux/arm/v7, linux/s390x
# Must be disabled to provide legacy format images from the registry
provenance: false
target: debug
push: true
load: false
build-args: |
FLB_NIGHTLY_BUILD=${{ inputs.unstable }}
RELEASE_VERSION=${{ inputs.version }}
pattern: debug-digests-*
path: /tmp/debug-digests
merge-multiple: true

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Log in to the Container registry
uses: docker/login-action@v3
with:
registry: ${{ inputs.registry }}
username: ${{ github.actor }}
password: ${{ secrets.token }}

- name: Create debug manifest
run: |
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf '${{ inputs.registry }}/${{ inputs.image }}@sha256:%s ' *)
shell: bash
working-directory: /tmp/debug-digests

- name: Inspect image
run: |
docker buildx imagetools inspect ${{ inputs.registry }}/${{ inputs.image }}:${{ steps.debug-meta.outputs.version }}
shell: bash

call-build-images-generate-schema:
needs:
- call-build-images-meta
- call-build-images
- call-build-container-image-manifests
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
permissions:
Expand Down Expand Up @@ -190,7 +281,7 @@ jobs:
call-build-images-scan:
needs:
- call-build-images-meta
- call-build-images
- call-build-container-image-manifests
name: Trivy + Dockle image scan
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
Expand Down Expand Up @@ -225,7 +316,8 @@ jobs:
call-build-images-sign:
needs:
- call-build-images-meta
- call-build-images
- call-build-container-image-manifests
- call-build-debug-container-image-manifests
name: Deploy and sign multi-arch container image manifests
permissions:
contents: read
Expand All @@ -246,13 +338,13 @@ jobs:
#
# We use recursive signing on the manifest to cover all the images.
run: |
cosign sign --recursive \
cosign sign --recursive --force \
-a "repo=${{ github.repository }}" \
-a "workflow=${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
-a "ref=${{ github.sha }}" \
-a "release=${{ inputs.version }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-images.outputs.production-digest }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-images.outputs.debug-digest }}"
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-container-image-manifests.outputs.version }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-debug-container-image-manifests.outputs.version }}"
shell: bash
# Ensure we move on to key-based signing as well
continue-on-error: true
Expand All @@ -265,13 +357,13 @@ jobs:
# The key needs to cope with newlines
run: |
echo -e "${COSIGN_PRIVATE_KEY}" > /tmp/my_cosign.key
cosign sign --key /tmp/my_cosign.key --recursive \
cosign sign --key /tmp/my_cosign.key --recursive --force \
-a "repo=${{ github.repository }}" \
-a "workflow=${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
-a "ref=${{ github.sha }}" \
-a "release=${{ inputs.version }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-images.outputs.production-digest }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-images.outputs.debug-digest }}"
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-container-image-manifests.outputs.version }}" \
"${{ inputs.registry }}/${{ inputs.image }}@${{ needs.call-build-debug-container-image-manifests.outputs.version }}"
rm -f /tmp/my_cosign.key
shell: bash
continue-on-error: true
Expand Down
15 changes: 8 additions & 7 deletions .github/workflows/call-build-linux-packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ jobs:
name: ${{ matrix.distro }} package build and stage to S3
environment: ${{ inputs.environment }}
# Ensure for OSS Fluent Bit repo we enable usage of Actuated runners for ARM builds, for forks it should keep existing ubuntu-22.04 usage.
runs-on: ${{ (contains(matrix.distro, 'arm' ) && (github.repository == 'fluent/fluent-bit') && 'actuated-arm64-8cpu-16gb') || 'ubuntu-22.04' }}
runs-on: ${{ ((contains(matrix.distro, 'arm' ) || contains(matrix.distro, 'raspbian')) && (github.repository == 'fluent/fluent-bit') && 'ubuntu-22.04-arm') || 'ubuntu-22.04' }}
permissions:
contents: read
strategy:
Expand All @@ -120,16 +120,17 @@ jobs:
with:
ref: ${{ inputs.ref }}

- name: Set up Actuated mirror
if: contains(matrix.distro, 'arm' ) && (github.repository == 'fluent/fluent-bit')
uses: self-actuated/hub-mirror@master

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
# - name: Set up Actuated mirror
# if: (contains(matrix.distro, 'arm' ) || contains(matrix.distro, 'raspbian')) && (github.repository == 'fluent/fluent-bit')
# uses: self-actuated/hub-mirror@master

- name: Set up Docker Buildx
# if: ${{ !(contains(matrix.distro, 'arm' ) || contains(matrix.distro, 'raspbian')) && (github.repository == 'fluent/fluent-bit') }}
uses: docker/setup-buildx-action@v3

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Replace all special characters with dashes
id: formatted_distro
run: |
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/call-build-macos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ jobs:
config:
- name: "Apple Silicon macOS runner"
runner: macos-14
- name: "Intel macOS runner"
runner: macos-14-large

steps:
- name: Checkout repository
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/call-run-integration-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ jobs:
bats-version: 1.9.0

- name: Create k8s Kind Cluster
uses: helm/kind-action@v1.11.0
uses: helm/kind-action@v1.12.0
with:
node_image: kindest/node:${{ matrix.k8s-release }}
cluster_name: kind
Expand Down
6 changes: 2 additions & 4 deletions .github/workflows/call-test-images.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ jobs:
strategy:
fail-fast: false
matrix:
arch: [ linux/amd64, linux/arm64, linux/arm/v7, linux/s390x ]
arch: [ linux/amd64, linux/arm64, linux/arm/v7 ]
include:
# Rather than extract the specific central arch we just provide it
- arch: linux/amd64
Expand All @@ -85,8 +85,6 @@ jobs:
expected: arm64
- arch: linux/arm/v7
expected: arm
- arch: linux/s390x
expected: s390x
steps:
- name: Log in to the Container registry
uses: docker/login-action@v3
Expand Down Expand Up @@ -184,7 +182,7 @@ jobs:
ref: ${{ inputs.ref }}

- name: Create k8s Kind Cluster
uses: helm/kind-action@v1.11.0
uses: helm/kind-action@v1.12.0

- name: Set up Helm
uses: azure/setup-helm@v4
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/cron-unstable-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ on:
# Run nightly build at this time, bit of trial and error but this seems good.
schedule:
- cron: "0 6 * * *" # master build
- cron: "0 12 * * *" # 3.0 build
- cron: "0 18 * * *" # 3.1 build
- cron: "0 12 * * *" # 3.2 build
- cron: "0 18 * * *" # master build

# We do not want a new unstable build to run whilst we are releasing the current unstable build.
concurrency: unstable-build-release
Expand Down Expand Up @@ -55,13 +55,13 @@ jobs:
- name: 3.0 run
if: github.event_name == 'schedule' && github.event.schedule=='0 12 * * *'
run: |
echo "cron_branch=3.0" >> $GITHUB_ENV
echo "cron_branch=3.2" >> $GITHUB_ENV
shell: bash

- name: 3.1 run
- name: master run
if: github.event_name == 'schedule' && github.event.schedule=='0 18 * * *'
run: |
echo "cron_branch=3.1" >> $GITHUB_ENV
echo "cron_branch=master" >> $GITHUB_ENV
shell: bash

- name: Output the branch to use
Expand Down
Loading
Loading