Bump github.com/go-sql-driver/mysql from 1.7.1 to 1.8.0 in /internal/signalfx-agent #7370
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Integration Test" | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- '.github/workflows/integration-test.yml' | |
- 'cmd/**' | |
- 'internal/**' | |
- 'pkg/**' | |
- 'tests/**' | |
- 'Makefile' | |
- 'Makefile.Common' | |
- 'go.mod' | |
- 'go.sum' | |
- '!**.md' | |
- '!internal/buildscripts/**' | |
concurrency: | |
group: integration-test-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
GO_VERSION: "1.21.5" | |
jobs: | |
docker-otelcol: | |
name: docker-otelcol | |
# Use 20.04.5 until https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/16450 is resolved | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
ARCH: [ "amd64", "arm64" ] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
cache-dependency-path: '**/go.sum' | |
- uses: actions/cache@v4 | |
id: bundle-cache | |
with: | |
path: .cache/buildx/agent-bundle-${{ matrix.ARCH }} | |
key: agent-bundle-buildx-${{ matrix.ARCH }}-${{ hashFiles('internal/signalfx-agent/bundle/**') }} | |
restore-keys: | | |
agent-bundle-buildx-${{ matrix.ARCH }}- | |
- uses: docker/setup-qemu-action@v3 | |
if: ${{ matrix.ARCH != 'amd64' }} | |
with: | |
platforms: ${{ matrix.ARCH }} | |
image: tonistiigi/binfmt:qemu-v7.0.0 | |
- run: | | |
make docker-otelcol ARCH=${{ matrix.ARCH }} | |
env: | |
DOCKER_BUILDKIT: '1' | |
BUNDLE_CACHE_HIT: "${{ steps.bundle-cache.outputs.cache-hit }}" | |
- run: docker save -o ./bin/image.tar otelcol:latest | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: otelcol-${{ matrix.ARCH }} | |
path: ./bin | |
integration-vet: | |
name: integration-vet | |
# Use 20.04.5 until https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/16450 is resolved | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
ARCH: [ "amd64", "arm64" ] | |
fail-fast: false | |
needs: [docker-otelcol] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
cache-dependency-path: '**/go.sum' | |
- uses: actions/download-artifact@v4 | |
with: | |
name: otelcol-${{ matrix.ARCH }} | |
path: ./bin | |
- uses: docker/setup-qemu-action@v3 | |
if: ${{ matrix.ARCH != 'amd64' }} | |
with: | |
platforms: ${{ matrix.ARCH }} | |
image: tonistiigi/binfmt:qemu-v7.0.0 | |
- run: docker load -i ./bin/image.tar | |
- run: chmod a+x ./bin/* | |
- run: make integration-vet | |
env: | |
SPLUNK_OTEL_COLLECTOR_IMAGE: 'otelcol:latest' | |
integration-test: | |
name: integration-test | |
# Use 20.04.5 until https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/16450 is resolved | |
runs-on: ubuntu-20.04 | |
needs: [docker-otelcol] | |
services: | |
# Cassandra image for collectd-cassandra test: | |
cassandra: | |
image: quay.io/splunko11ytest/cassandra:latest | |
ports: | |
- "7199:7199" | |
# httpd_basicauth image for lightprometheus test | |
httpd_basicauth: | |
image: quay.io/splunko11ytest/httpd_basicauth:latest | |
ports: | |
- "8001:80" | |
kong: | |
image: quay.io/splunko11ytest/kong:latest | |
ports: | |
- "18001:8001" | |
oracle: | |
image: quay.io/splunko11ytest/oracle:latest | |
ports: | |
- "1521:1521" | |
postgres: | |
image: quay.io/splunko11ytest/postgres:latest | |
ports: | |
- "15432:5432" | |
redis_server: | |
image: quay.io/splunko11ytest/redis_server:latest | |
ports: | |
- "6379:6379" | |
mysql: | |
image: quay.io/splunko11ytest/mysql:latest | |
ports: | |
- "3306:3306" | |
strategy: | |
matrix: | |
ARCH: [ "amd64", "arm64" ] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
cache-dependency-path: '**/go.sum' | |
- uses: actions/download-artifact@v4 | |
with: | |
name: otelcol-${{ matrix.ARCH }} | |
path: ./bin | |
- uses: docker/setup-qemu-action@v3 | |
if: ${{ matrix.ARCH != 'amd64' }} | |
with: | |
platforms: ${{ matrix.ARCH }} | |
image: tonistiigi/binfmt:qemu-v7.0.0 | |
- run: docker load -i ./bin/image.tar | |
- run: chmod a+x ./bin/* | |
- uses: shogo82148/actions-setup-redis@v1 | |
with: | |
auto-start: false | |
redis-port: "6379" | |
- run: redis-cli ping | |
- run: redis-cli set tempkey tempvalue | |
- name: Run Integration Test | |
run: | | |
set -o pipefail | |
make integration-test 2>&1 | tee ${{ github.job }}-${{ github.run_id }}.out | |
exit_status=${PIPESTATUS[0]} | |
echo "Exit status: $exit_status" | |
exit $exit_status | |
env: | |
SPLUNK_OTEL_COLLECTOR_IMAGE: 'otelcol:latest' | |
# The Integration Test output is extremely large so we upload it as an artifact | |
- name: Upload Integration Test Output as Artifact | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: ${{ github.job }}-${{ github.run_id }}-${{ matrix.ARCH }}.out | |
path: ${{ github.job }}-${{ github.run_id }}-${{ matrix.ARCH }}.out | |
retention-days: 5 | |
smartagent-integration-test: | |
name: smartagent-integration-test | |
# Use 20.04.5 until https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/16450 is resolved | |
runs-on: ubuntu-20.04 | |
needs: [docker-otelcol] | |
services: | |
# ActiveMQ image for collectd-activemq test: | |
activemq: | |
image: quay.io/splunko11ytest/activemq:latest | |
ports: | |
- "1099:1099" | |
# Apache image for collectd-apache test | |
apache: | |
image: quay.io/splunko11ytest/apache | |
ports: | |
- "18080:80" | |
# Cassandra image for collectd-cassandra test: | |
cassandra: | |
image: quay.io/splunko11ytest/cassandra:latest | |
ports: | |
- "7199:7199" | |
# Couchbase image for collectd-couchbase test: | |
couchbase: | |
image: quay.io/splunko11ytest/couchbase:latest | |
ports: | |
- "8091:8091" | |
# Tomcat image for collectd-tomcat test: | |
tomcat: | |
image: tomcat | |
env: | |
JAVA_TOOL_OPTIONS: "-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=5000 -Dcom.sun.management.jmxremote.rmi.port=5000 -Dcom.sun.management.jmxremote.host=0.0.0.0 -Djava.rmi.server.hostname=0.0.0.0" | |
ports: | |
- "5000:5000" | |
# Kafka test, requires multiple Kafka containers and Zookeeper: | |
# Zookeeper image: | |
zookeeper: | |
image: zookeeper:3.5 | |
ports: | |
- "2181:2181" | |
options: >- | |
--health-cmd "bash -c \"exec 6<> /dev/tcp/localhost/2181\"" | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
kafka-broker: | |
image: quay.io/splunko11ytest/kafka:latest | |
env: | |
START_AS: broker | |
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | |
JMX_PORT: 7099 | |
ports: | |
- "7099:7099" | |
- "9092:9092" | |
options: >- | |
--health-cmd "bash -c \"exec 6<> /dev/tcp/localhost/7099\"" | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
kafka-topic-creator: | |
image: quay.io/splunko11ytest/kafka:latest | |
env: | |
START_AS: create-topic | |
KAFKA_BROKER: kafka-broker:9092 | |
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | |
kafka-producer: | |
image: quay.io/splunko11ytest/kafka:latest | |
env: | |
START_AS: producer | |
KAFKA_BROKER: kafka-broker:9092 | |
JMX_PORT: 8099 | |
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | |
ports: | |
- "8099:8099" | |
options: >- | |
--health-cmd "bash -c \"exec 6<> /dev/tcp/localhost/8099\"" | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
kafka-consumer: | |
image: quay.io/splunko11ytest/kafka:latest | |
env: | |
START_AS: consumer | |
KAFKA_BROKER: kafka-broker:9092 | |
JMX_PORT: 9099 | |
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | |
ports: | |
- "9099:9099" | |
options: >- | |
--health-cmd "bash -c \"exec 6<> /dev/tcp/localhost/9099\"" | |
--health-interval 10s | |
--health-timeout 5s | |
--health-retries 5 | |
# Nginx image for collectd-nginx test: | |
nginx: | |
image: quay.io/splunko11ytest/nginx:latest | |
ports: | |
- "8123:80" | |
# Haproxy image for haproxy test: | |
haproxy: | |
image: quay.io/splunko11ytest/haproxy:latest | |
ports: | |
- "8082:8080" | |
# httpd image for prometheus-exporter test | |
httpd: | |
image: quay.io/splunko11ytest/httpd:latest | |
ports: | |
- "8000:80" | |
# httpd_basicauth image for lightprometheus test | |
httpd_basicauth: | |
image: quay.io/splunko11ytest/httpd_basicauth:latest | |
ports: | |
- "8001:80" | |
solr: | |
image: quay.io/splunko11ytest/solr:latest | |
ports: | |
- "8983:8983" | |
mysql: | |
image: quay.io/splunko11ytest/mysql:latest | |
ports: | |
- "3306:3306" | |
strategy: | |
matrix: | |
ARCH: [ "amd64", "arm64" ] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
cache-dependency-path: '**/go.sum' | |
- uses: actions/download-artifact@v4 | |
with: | |
name: otelcol-${{ matrix.ARCH }} | |
path: ./bin | |
- uses: docker/setup-qemu-action@v3 | |
if: ${{ matrix.ARCH != 'amd64' }} | |
with: | |
platforms: ${{ matrix.ARCH }} | |
image: tonistiigi/binfmt:qemu-v7.0.0 | |
- run: docker load -i ./bin/image.tar | |
- run: chmod a+x ./bin/* | |
- name: Run Integration Test | |
run: | | |
set -o pipefail | |
make smartagent-integration-test 2>&1 | tee ${{ github.job }}-${{ github.run_id }}.out | |
exit_status=${PIPESTATUS[0]} | |
echo "Exit status: $exit_status" | |
exit $exit_status | |
env: | |
SPLUNK_OTEL_COLLECTOR_IMAGE: 'otelcol:latest' | |
# The Integration Test output is extremely large so we upload it as an artifact | |
- name: Upload Integration Test Output as Artifact | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: smartagent-${{ github.job }}-${{ github.run_id }}-${{ matrix.ARCH }}.out | |
path: smartagent-${{ github.job }}-${{ github.run_id }}-${{ matrix.ARCH }}.out | |
retention-days: 5 |