From f071547eaf36804cfe0fc7ee0ef418e2db1abb7a Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" 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(+) 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