• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

rmee/gradle-plugins: collection of gradle plugins

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

rmee/gradle-plugins

开源软件地址(OpenSource Url):

https://github.com/rmee/gradle-plugins

开源编程语言(OpenSource Language):

Java 90.6%

开源软件介绍(OpenSource Introduction):

gradle plugins

Build Status License

Hosts a collection of Gradle plugins:

  • jdk-bootstrap: to automatically download a JDK to run Gradle.
  • systemd-application: builds a RPM/systemd package out of any Java main application, such as Spring Boot or Dropwizard.
  • oc: gives access to the OpenShift command line tool "oc" to interface with an OpenShift cluster.
  • kubectl: gives access to the Kubernetes command line tool "kubectl" to interface with an OpenShift cluster.
  • terraform: gives access to the Terraform command line tool "terraform".
  • helm: gives access to the Helm command line tool "helm" to perform packaging and deployment of Kubernetes applications.
  • az: gives access to the Azure command line tool "az" to interface with Azure.
  • gcloud: gives access to the Google Cloud command line tool "gcloud".
  • jpa-schema-gen: to generate Flyway and Liquibase-compatible schema setup and migration scripts.
  • assemble-needed: assembles a project and all its project dependencies.
  • build-on-change:(experimental!) perform incremental builds of PRs by only building what has changed compared to a reference branch (like master).

Have a look at https://github.com/crnk-project/crnk-example to see some of the plugins applied to a larger example application. For a general introduction into the architecture of most plugins see https://jaxenter.com/tooling-as-code-truly-self-contained-gradle-builds-160998.html.

The oc, kubernetes, helm, az, 'gcloud' and terraform plugins make use of:

  • the native command line tools of the various technology stacks. They deliberately do not want to establish a new Java-based API and instead focuses on what developer already know and bring it to Gradle. It further helps to stay up-to-date with those technologies and keep the plugins simple.
  • dockerizization of the command line tools to gain isolation of their configuration to the scope of the applied Gradle project and have platform independence and caching of the tools.
  • Volume-mappings into the project to let different plugins work together, such as sharing the Kubernetes configuration.
  • generated wrapper scripts in the project root to give access to the tools from the command line just like if they were locally installed while hiding volume-mapping and environment logic.

Note that early versions of plugins did not yet make use of dockerization. The extensions can still be configured to fallback to that behavior. This functionality may or may not be removed in the future depending on the need.

Examples

For an example app making use of the plugin have a look at https://github.com/cord3c/cord3c-project/tree/master/cord3c-example-deployment[cord3c-example] or https://github.com/crnk-project/crnk-example[crnk-example].

Licensing

All plugins are licensed under the Apache License, Version 2.0. You can grab a copy of the license at http://www.apache.org/licenses/LICENSE-2.0.

Building from Source

Crnk make use of Gradle for its build. To build the complete project run

gradlew clean build

Links




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap