(address . guix-patches@gnu.org)
Hello,
this patch adds Maven Release API under the name 'maven-release-api', as
well as the private 'maven-release-parent-pom' package.
From f071547eaf36804cfe0fc7ee0ef418e2db1abb7a Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Sat, 25 Jun 2022 12:16:29 +0300
Subject: [PATCH] gnu: Add maven-release-api
* gnu/packages/maven.scm (maven-release-api): New variable.
(maven-release-parent-pom): New variable.
---
gnu/packages/maven.scm | 58 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)
Toggle diff (68 lines)
diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index e5831ee614..7ff2d6d69e 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -3938,3 +3938,61 @@ method and a end of tag by @code{xxxx_()} method.")
(description "@samp{Doxia} is a content generation framework that provides
powerful techniques for generating static and dynamic content, supporting a
variety of markup languages.")))
+
+(define-public maven-release-api
+ (package
+ (name "maven-release-api")
+ (version "3.0.0-M5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/maven-release")
+ (commit (string-append "maven-release-" version))))
+ (file-name (git-file-name "maven-release" version))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; XXX: Delete dummy JAR-files.
+ (delete-file-recursively
+ "maven-release-manager/src/test/remote-repository")
+ #t))
+ (sha256
+ (base32
+ "13yxjl29jp4zkb8xvy0b045b5fpqz9nais1jsf4r9krczyxyj96k"))))
+ (build-system ant-build-system)
+ (propagated-inputs (list maven-release-parent-pom))
+ (inputs (list maven-repository-metadata
+ maven-artifact
+ maven-core
+ maven-model
+ java-eclipse-aether-util
+ java-slf4j-api
+ java-plexus-utils))
+ (arguments
+ `(#:jar-name "maven-release-api.jar"
+ #:source-dir "maven-release-api/src/main/java"
+ #:tests? #f ; no tests
+ #:phases (modify-phases %standard-phases
+ (replace 'install
+ (install-from-pom "maven-release-api/pom.xml")))))
+ (home-page "https://maven.apache.org/maven-release/")
+ (synopsis "APIs to implement to extend maven-release-plugin")
+ (description "APIs to implement to extend maven-release-plugin")
+ (license license:asl2.0)))
+
+(define maven-release-parent-pom
+ (package
+ (inherit maven-release-api)
+ (name "maven-release-parent-pom")
+ (arguments
+ `(#:tests? #f ; no tests
+ #:phases (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ (replace 'install
+ (install-pom-file "pom.xml")))))
+ (propagated-inputs
+ (list maven-parent-pom-34))
+ (synopsis "Apache Maven Release (Plugin)")
+ (description "This plugin is used to release a project with Maven, saving
+a lot of repetitive, manual work.")))
--
2.25.1
Thanks,
- Artyom
--
Artyom "avp" Poptsov <poptsov.artyom@gmail.com>
Home page: https://memory-heap.org/~avp/
CADR Hackerspace co-founder: https://cadrspace.ru/
GPG: D0C2 EAC1 3310 822D 98DE B57C E9C5 A2D9 0898 A02F
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCgAdFiEE0MLqwTMQgi2Y3rV86cWi2QiYoC8FAmK21OIACgkQ6cWi2QiY
oC/OJAf9GVDPFBvj8jUcCSOhKJOdMeeiCJGWbLvstzKoM6qLFUy52h2c4YMQLL1e
buP5Ry5JWG83vytGD+iiC3CNjSDrB+uAzFp3mSqE4krm0q2VDudxvRp8sd3+H7mb
stZsB7rvrmjDHA7A6RIvwBUkzWvXmmxicYn9XbgYHv8tKiiaynPUMZ9eOoxqVOE8
DT7BORISTYQQpblzNyYhpVJwVipfxRrUiNHMZKXWjghgCKKd/gutxYEWfN3zc7HL
uSvPd7DvvkLe+o4hqSc6jM4azCdD4j9AmMBx1DR0cCz8CTyxOkMd7X42Z31qCMKJ
8XP5zSK1Edh0E6iO1I/OH+1l2cnl/A==
=f0o1
-----END PGP SIGNATURE-----