Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37855923
en ru br
Репозитории ALT
S:0.12.0-alt1_4jpp11
www.altlinux.org/Changes

Группа :: Other
Пакет: prometheus-simpleclient-java

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Group: Other
BuildRequires: /proc rpm-build-java
BuildRequires: jpackage-default
# see https://bugzilla.altlinux.org/show_bug.cgi?id=10382
%define _localstatedir %{_var}
%global version_id parent
%global upstream_name client_java

Name:          prometheus-simpleclient-java
Version:       0.12.0
Release:       alt1_4jpp11
Summary:       Prometheus JVM Client

License:       ASL 2.0 and CC0
URL:           https://github.com/prometheus/client_java/

Source0:       https://github.com/prometheus/client_java/archive/%{version_id}-%{version}.tar.gz
# OpenTelemetry isn't in Fedora
Patch1:        remove_opentelemetry_tracer.patch

BuildArch:     noarch

BuildRequires: maven-local
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(junit:junit)
Source44: import.info

%description
Prometheus instrumentation library for JVM applications.

%prep
%setup -q -n %{upstream_name}-%{version_id}-%{version}

# Remove included jar files

find . -name \*.jar -print0 | xargs -0 rm

# Only build the following artefacts as these are actually dependencies

# of prometheus_jmxexporter
#
# io.prometheus:simpleclient
# io.prometheus:simpleclient_hotspot
# io.prometheus:simpleclient_httpserver
# io.prometheus:simpleclient_common
for m in simpleclient_caffeine \
        simpleclient_dropwizard \
        simpleclient_graphite_bridge \
        simpleclient_hibernate \
        simpleclient_guava \
        simpleclient_log4j \
        simpleclient_log4j2 \
        simpleclient_logback \
        simpleclient_pushgateway \
        simpleclient_servlet \
        simpleclient_spring_web \
        simpleclient_spring_boot \
        simpleclient_jetty \
        simpleclient_jetty_jdk8 \
        simpleclient_vertx \
        simpleclient_bom \
        integration_tests \
        simpleclient_servlet_common \
        simpleclient_servlet_jakarta \
        benchmarks; do
%pom_disable_module $m
done
# Only build simpleclient_tracer_common as it's being used by an Examplar class
%pom_disable_module simpleclient_tracer_otel_agent simpleclient_tracer
%pom_disable_module simpleclient_tracer_otel simpleclient_tracer

# Remove test dependencies for hotspot

%pom_remove_dep io.prometheus:simpleclient_servlet simpleclient_hotspot
%pom_remove_dep org.mockito:mockito-core simpleclient_hotspot
%pom_remove_dep org.eclipse.jetty:jetty-servlet simpleclient_hotspot
# Remove test dependencies for httpserver
%pom_remove_dep org.assertj:assertj-core simpleclient_httpserver
%pom_remove_dep javax.xml.bind:jaxb-api simpleclient_httpserver

# Remove tests which wouldn't compile with removed deps (like mockito)

for i in $(find simpleclient_hotspot/src/test/java/io/prometheus/client/hotspot -name \*.java); do
 if ! echo $i | grep -q -E 'VersionInfoExportsTest\.java'; then
   rm $i
 fi
done
rm -rf simpleclient_httpserver/src/test/java

# remove OpenTelemetry stuff, which we don't support

%patch1 -p2
%pom_remove_dep io.prometheus:simpleclient_tracer_otel simpleclient
%pom_remove_dep io.prometheus:simpleclient_tracer_otel_agent simpleclient
%pom_add_dep io.prometheus:simpleclient_tracer_common:%{version} simpleclient

# Change compiler source/target version to JDK 8 level

%pom_xpath_set "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:configuration/pom:source" "1.8" pom.xml
%pom_xpath_set "pom:build/pom:plugins/pom:plugin[pom:artifactId='maven-compiler-plugin']/pom:configuration/pom:target" "1.8" pom.xml


%build
%mvn_build -j -- -Dmaven.compiler.source=1.8 -Dmaven.compiler.target=1.8 -Dmaven.javadoc.source=1.8 -Dmaven.compiler.release=8

%install
%mvn_install

%files -f .mfiles
%doc --no-dereference LICENSE
%doc NOTICE

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin