An open API service indexing awesome lists of open source software.

https://github.com/veupathdb/lib-gradle-container-utils

Build Utils for VEuPathDB containerized Gradle projects.
https://github.com/veupathdb/lib-gradle-container-utils

build gradle gradle-plugin library

Last synced: 4 months ago
JSON representation

Build Utils for VEuPathDB containerized Gradle projects.

Awesome Lists containing this project

README

          

= Gradle Container Build Utils
:source-highlighter: highlightjs
:icons: font

// Project version
:p-version: 6.4.0

// Options List
:o-vendorDir: vendorDirectory
:o-fgputilVersion: fgpUtilVersion
:o-ramlForJaxRsVersion: ramlForJaxRSVersion
:o-binDirectory: binDirectory
:o-repoDocsDir: repoDocsDirectory
:o-rootApiDef: apiDocRoot
:o-project-package: projectPackage
:o-docker-context: dockerContext
:o-logLevel: logLevel

// Tasks
:t-build-docker: build-docker
:t-install-raml4jaxrs: ramlGenInstall
:t-uninstall-raml4jaxrs: ramlGenUninstall
:t-generate-jaxrs: generate-jaxrs
:t-generate-raml-docs: generate-raml-docs
:t-download-dependencies: download-dependencies

// Footnotes
:fn-nb: footnote:nb["Necessary" means that either the dependency has not yet been installed, or the version that is installed differs from the version currently set in the `build.gradle.kts` file.]

A set of utils to assist in building gradle based containerized services.

== Task Overview

The following tasks/targets are added to Gradle by this plugin.

.`$ gradle tasks`
[source]
----
VEuPathDB tasks
---------------
build-docker - Builds this project's docker image. WARNING: This task requires that your user is a member of the "docker" group.
generate-jaxrs - Generates JaxRS Java code based on the project's RAML API spec.
generate-raml-docs - Generates HTML documentation from the RAML API spec.
install-raml-4-jax-rs - Builds and installs the Raml for JaxRS generator.
uninstall-raml-4-jax-rs - Uninstalls the Raml for Jax RS tooling.
download-dependencies - Downloads project's dependencies, adding them to the gradle cache
----

== Configuration

Configuration for this plugin is done through a special closure named
`containerBuild` that may be added to the root level of your project's
`build.gradle.kts` file.

.Example build.gradle.kts
[source, kotlin, linenums, subs="attributes"]
----
plugins {
java
id("org.veupathdb.lib.gradle.container.container-utils") version "{p-version}"
}

service {
// Options go here.
}
----

=== Options

**TODO** Document options