Files
codahale-metrics/codahale-metrics.spec

208 lines
5.9 KiB
RPMSpec
Raw Permalink Normal View History

#
# spec file for package codahale-metrics
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: codahale-metrics
Version: 3.0.2
Release: 0
Summary: The Metrics library
License: Apache-2.0
Group: Development/Libraries/Java
URL: https://github.com/dropwizard/metrics
Source0: metrics-%{version}.tar.xz
BuildRequires: fdupes
BuildRequires: maven-local
BuildRequires: mvn(ch.qos.logback:logback-classic)
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-databind)
BuildRequires: mvn(javax.servlet:javax.servlet-api)
BuildRequires: mvn(log4j:log4j)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.apache.httpcomponents:httpclient)
BuildRequires: mvn(org.slf4j:slf4j-api)
BuildArch: noarch
%description
Metrics is a Java library which gives you unparalleled insight into what your
code does in production. Metrics provides a powerful toolkit of ways to measure
the behavior of critical components in your production environment.
%package javadoc
Summary: API documentation for %{name}
Group: Documentation/HTML
%description javadoc
API documentation for %{name}.
%package annotation
Summary: Annotations for Metrics
Group: Development/Libraries/Java
%description annotation
A dependency-less package of just the annotations used by other Metrics
modules.
%package core
Summary: Metrics Core
Group: Development/Libraries/Java
%description core
Metrics is a Java library which gives you unparalleled insight into what your
code does in production. Metrics provides a powerful toolkit of ways to measure
the behavior of critical components in your production environment.
%package graphite
Summary: Graphite Integration for Metrics
Group: Development/Libraries/Java
%description graphite
A reporter for Metrics which announces measurements to a Graphite server.
%package healthchecks
Summary: Metrics Health Checks
Group: Development/Libraries/Java
%description healthchecks
An addition to Metrics which provides the ability to run application-specific
health checks, allowing you to check your applications heath in production.
%package httpclient
Summary: Metrics Integration for Apache HttpClient
Group: Development/Libraries/Java
%description httpclient
An Apache HttpClient wrapper providing Metrics instrumentation of connection
pools, request durations and rates, and other useful information.
%package json
Summary: Jackson Integration for Metrics
Group: Development/Libraries/Java
%description json
A set of Jackson modules which provide serializers for most Metrics classes.
%package jvm
Summary: JVM Integration for Metrics
Group: Development/Libraries/Java
%description jvm
A set of classes which allow you to monitor critical aspects of your Java
Virtual Machine using Metrics.
%package log4j
Summary: The Log4j module for %{name}
Group: Development/Libraries/Java
%description log4j
An instrumented appender for Log4j.
%package logback
Summary: The Logback module for %{name}
Group: Development/Libraries/Java
%description logback
An instrumented appender for Logback.
%package servlet
Summary: The Setvlet module for %{name}
Group: Development/Libraries/Java
%description servlet
An instrumented filter for servlet environments.
%package servlets
Summary: The Setvlets module for %{name}
Group: Development/Libraries/Java
%description servlets
A set of utility servlets for Metrics, allowing you to expose valuable
information about your production environment.
%prep
%setup -q -n metrics-%{version}
%pom_xpath_replace 'pom:plugin[pom:artifactId="maven-compiler-plugin"]/pom:configuration/pom:*/text()' 8
%pom_remove_plugin :maven-release-plugin
%pom_remove_plugin :maven-source-plugin
%pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :maven-javadoc-plugin
%pom_remove_plugin org.codehaus.mojo:findbugs-maven-plugin
%pom_disable_module metrics-benchmarks
# No net.sf.ehcache:ehcache-core
%pom_disable_module metrics-ehcache
# No info.ganglia.gmetric4j:gmetric4j
%pom_disable_module metrics-ganglia
# No org.jdbi:jdbi
%pom_disable_module metrics-jdbi
%pom_disable_module metrics-jersey
%pom_disable_module metrics-jetty8
# Errors:
%pom_disable_module metrics-jetty9
%{mvn_package} ":metrics-{*}" @1
%build
%{mvn_build} -f -s -- \
-Dproject.build.outputTimestamp=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +%%Y-%%m-%%dT%%H:%%M:%%SZ) \
%install
%mvn_install
%fdupes %{buildroot}%{_javadocdir}/%{name}
%files javadoc -f .mfiles-javadoc
%license LICENSE NOTICE
%files -f .mfiles-parent
%license LICENSE NOTICE
%doc README.md
%files annotation -f .mfiles-annotation
%license LICENSE NOTICE
%files core -f .mfiles-core
%license LICENSE NOTICE
%files graphite -f .mfiles-graphite
%license LICENSE NOTICE
%files healthchecks -f .mfiles-healthchecks
%license LICENSE NOTICE
%files httpclient -f .mfiles-httpclient
%license LICENSE NOTICE
%files json -f .mfiles-json
%license LICENSE NOTICE
%files jvm -f .mfiles-jvm
%license LICENSE NOTICE
%files log4j -f .mfiles-log4j
%license LICENSE NOTICE
%files servlet -f .mfiles-servlet
%license LICENSE NOTICE
%files servlets -f .mfiles-servlets
%license LICENSE NOTICE
%files logback -f .mfiles-logback
%license LICENSE NOTICE
%changelog