Skip to content

feat(kubernetes_logs): use kube-apiserver cache for list requests #22690

feat(kubernetes_logs): use kube-apiserver cache for list requests

feat(kubernetes_logs): use kube-apiserver cache for list requests #22690

name: Integration Test Suite
on:
workflow_dispatch:
push:
branches:
- master
paths:
- ".github/workflows/integration-test.yml"
- ".cargo/**"
- "benches/**"
- "lib/**"
- "proto/**"
- "scripts/**"
- "skaffold/**"
- "src/**"
- "tests/**"
- "build.rs"
- "Cargo.lock"
- "Cargo.toml"
- "Makefile"
- "rust-toolchain"
pull_request:
types: [opened, synchronize, reopened, labeled]
concurrency:
# For pull requests, cancel running workflows, for master, run all
#
# `github.event.number` exists for pull requests, otherwise fall back to SHA
# for master
group: ${{ github.workflow }}-${{ github.event.number || github.sha }}
cancel-in-progress: true
env:
AWS_ACCESS_KEY_ID: "dummy"
AWS_SECRET_ACCESS_KEY: "dummy"
AXIOM_TOKEN: ${{ secrets.AXIOM_TOKEN }}
TEST_APPSIGNAL_PUSH_API_KEY: ${{ secrets.TEST_APPSIGNAL_PUSH_API_KEY }}
CONTAINER_TOOL: "docker"
DD_ENV: "ci"
DD_API_KEY: ${{ secrets.DD_API_KEY }}
RUST_BACKTRACE: full
TEST_LOG: vector=debug
VERBOSE: true
CI: true
PROFILE: debug
jobs:
test-integration:
name: Integration - Linux, ${{ matrix.test }}
runs-on: [linux, ubuntu-20.04-8core]
if: |
!github.event.pull_request
|| contains(github.event.pull_request.labels.*.name, 'ci-condition: integration tests enable')
strategy:
fail-fast: false
matrix:
include:
- test: 'amqp'
- test: 'appsignal'
- test: 'aws'
- test: 'axiom'
- test: 'azure'
- test: 'clickhouse'
- test: 'databend'
- test: 'datadog-agent'
- test: 'datadog-logs'
- test: 'datadog-metrics'
- test: 'datadog-traces'
- test: 'dnstap'
- test: 'docker-logs'
- test: 'elasticsearch'
- test: 'eventstoredb'
- test: 'fluent'
- test: 'gcp'
- test: 'humio'
- test: 'http-client'
- test: 'influxdb'
- test: 'kafka'
- test: 'logstash'
- test: 'loki'
- test: 'mongodb'
- test: 'nats'
- test: 'nginx'
- test: 'opentelemetry'
- test: 'postgres'
- test: 'prometheus'
- test: 'pulsar'
- test: 'redis'
- test: 'shutdown'
- test: 'splunk'
- test: 'webhdfs'
timeout-minutes: 20
steps:
- uses: actions/checkout@v3
- run: make ci-sweep
- run: sudo npm -g install @datadog/datadog-ci
- run: make test-integration-${{ matrix.test }}
env:
TEST_DATADOG_API_KEY: ${{ secrets.CI_TEST_DATADOG_API_KEY }}
SPLUNK_VERSION: ${{ matrix.env.SPLUNK_VERSION }}
- name: Upload test results
run: scripts/upload-test-results.sh
if: always()
- run: make test-integration-${{ matrix.test }}-cleanup
if: ${{ always() }}
env:
TEST_DATADOG_API_KEY: ${{ secrets.CI_TEST_DATADOG_API_KEY }}
SPLUNK_VERSION: ${{ matrix.env.SPLUNK_VERSION }}
test-integration-check:
name: test-integration-check
runs-on: ubuntu-20.04
needs:
- test-integration
steps:
- name: validate
run: echo "OK"
master-failure:
name: master-failure
if: failure() && github.ref == 'refs/heads/master'
needs:
- test-integration-check
runs-on: ubuntu-20.04
steps:
- name: Discord notification
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
uses: Ilshidur/action-discord@0.3.2
with:
args: "Master integration tests failed: <https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}>"