From 064f90a8eff57f95d704aa7ac5489c31380fedc5 Mon Sep 17 00:00:00 2001 From: Kristof Kowalski Date: Mon, 18 Jul 2022 22:37:30 +1000 Subject: [PATCH] Add initial Jenkins detector (#33) --- library/otel_traces_detector.sh | 5 ++++ library/otel_traces_detector_jenkins.sh | 35 +++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 library/otel_traces_detector_jenkins.sh diff --git a/library/otel_traces_detector.sh b/library/otel_traces_detector.sh index baa94c0..b264031 100644 --- a/library/otel_traces_detector.sh +++ b/library/otel_traces_detector.sh @@ -25,3 +25,8 @@ fi if [ ${DEPLOYMENT_ID-} ]; then . "${OTEL_SH_LIB_PATH}/otel_traces_detector_harness.sh" fi + +# Jenkins +if [ ${JENKINS_URL-} ]; then + . "${OTEL_SH_LIB_PATH}/otel_traces_detector_jenkins.sh" +fi diff --git a/library/otel_traces_detector_jenkins.sh b/library/otel_traces_detector_jenkins.sh new file mode 100644 index 0000000..5f44eac --- /dev/null +++ b/library/otel_traces_detector_jenkins.sh @@ -0,0 +1,35 @@ +#!/usr/bin/env bash + +# Copyright 2022 Krzysztof Kowalski + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# https://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +. "${OTEL_SH_LIB_PATH}/log.sh" + +log_info "Detected, Jenkins pipeline" + +detector_resource_attributes=( + "jenkins.build.id:${BUILD_ID}" + "jenkins.build.number:${BUILD_NUMBER}" + "jenkins.build.tag:${BUILD_TAG}" + "jenkins.build.url:${BUILD_URL}" + "jenkins.executor.number:${EXECUTOR_NUMBER}" + "jenkins.hostname:${HOSTNAME}" + "jenkins.java.home:${JAVA_HOME}" + "jenkins.job.name:${JOB_NAME}" + "jenkins.job.url:${JOB_URL}" + "jenkins.node.name:${NODE_NAME}" + "jenkins.url:${JENKINS_URL}" + "jenkins.version:${JENKINS_VERSION}" + "jenkins.workspace:${WORKSPACE}" +)