Coder Social home page Coder Social logo

scottfrederick / cf-java-client Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cloudfoundry/cf-java-client

0.0 3.0 0.0 14.75 MB

Cloud Foundry - the open platform as a service project

Home Page: http://www.cloudfoundry.org

License: Apache License 2.0

Shell 0.20% Java 88.55% Protocol Buffer 0.07% JavaScript 0.09% Ruby 0.12% Groovy 10.97%

cf-java-client's Introduction

cf-java-client

Build Status

The cf-java-client repo contains a Java client library and tools for Cloud Foundry. Three major components are included in this repo.

Components

cloudfoundry-client-lib

The cloudfoundry-client-lib is a Java library that provides a Java language binding for the Cloud Foundry Cloud Controller REST API. The library can be used by Java, Groovy, and Scala apps to interact with a Cloud Foundry service on behalf of a user.

Read more

cloudfoundry-maven-plugin

The Cloud Foundry Maven plugin is a plugin for the Maven build tool that allows you to deploy and manage applications with Maven goals.

Read more

cloudfoundry-gradle-plugin

The Cloud Foundry Gradle plugin is a plugin for the Gradle build tool that allows you to deploy and manage applications with Gradle tasks.

Read more

Building

Prerequisites

Apache Maven

The cloudfoundry-client-lib and cloudfoundry-maven-plugin components are built with Apache Maven.

Gradle

The cloudfoundry-gradle-plugin component is built with Gradle.

Protocol Buffer compiler

The cloudfoundry-client-lib uses Protocol Buffers to get logs from the Cloud Foundry loggregator component. A protoc Protocol Buffer compiler is required at build time to compile message specifications. protoc version 2.6.1 is required.

On Linux with apt, run the install-protoc-apt.sh script in this repository to compile protoc from source.

On OSX, run the install-protoc-osx.sh script to install protoc. Alternatively you can install protobuf using homebrew if homebrew supports the appropriate version.

On Windows, download the protoc binary zip file from the releases page, unzip it, and put protoc.exe in the path.

After installing, run this command and check the output to make sure it is similar to the following:

$ protoc --version
libprotoc 2.6.1

Compiling and Packaging

To build cloudfoundry-client-lib and cloudfoundry-maven-plugin, run the following command from the project root directory:

$ mvn clean install

To build cloudfoundry-gradle-plugin, run the following command from the cloudfoundry-gradle-plugin sub-directory after building cloudfoundry-client-lib:

$ gradle clean install

Running Integration Tests

cloudfoundry-client-lib has an extensive set of integration tests which run against a Cloud Foundry service. To execute the integration tests, run the following command from the project root directory:

$ mvn -P integration-test clean install -Dccng.target=<endpoint> -Dccng.email=<username> -Dccng.passwd=<password> -Dccng.org=<organization> -Dccng.space=<space>

Following is a complete list of the -D parameters that can be passed to the integration test:

Parameter Description Required/Optional
ccng.target target Cloud Foundry endpoint (e.g. https://api.run.pivotal.io) required
ccng.email Cloud Foundry username required
ccng.passwd Cloud Foundry password required
ccng.org Cloud Foundry organization to run tests against required
ccng.space Cloud Foundry space to run tests against required
ccng.ssl trust self-signed certificates from target endpoint optional, default is false
vcap.mysql.label label of a MySQL service that can be created optional, default is cleardb
vcap.mysql.plan plan of a MySQL service that can be created optional, default is spark
http.proxyHost host name of an HTTP proxy optional
http.proxyPort port of an HTTP proxy optional

Important

Integration tests should be run against an empty Cloud Foundry space. The integration tests are destructive, and will delete any apps, services, routes, and domains existing in the target space.

Cloud Foundry Resources

Cloud Foundry Open Source Platform as a Service

Learn

Our documentation, currently a work in progress, is available here: http://cloudfoundry.github.com/

Ask Questions

Questions about the Cloud Foundry Open Source Project can be directed to our Google Groups.

File a bug

Bugs can be filed using Github Issues within the various repositories of the Cloud Foundry components.

OSS Contributions

The Cloud Foundry team uses GitHub and accepts contributions via pull request

Follow these steps to make a contribution to any of our open source repositories:

  1. Complete our CLA Agreement for individuals or corporations
  2. Set your name and email
$ git config --global user.name "Firstname Lastname"
$ git config --global user.email "[email protected]"
  1. Fork the repo
  2. Make your changes on a topic branch, commit, and push to github and open a pull request.

Once your commits are approved by Travis CI and reviewed by the core team, they will be merged.

cf-java-client's People

Contributors

alighm avatar andreaturli avatar asaikali avatar asssssssssssssss avatar davidehringer avatar davidstack avatar dsyer avatar ericbottard avatar fate-grand-order avatar gberche-orange avatar ghillert avatar jtuchscherer avatar knolleary avatar kpankowski avatar lalyos avatar lfarmer avatar loxal avatar michaljemala avatar mreider avatar o-orand avatar philwebb avatar ramnivas avatar reepong avatar rogerluo410 avatar ryanjbaxter avatar scottfrederick avatar skuppa avatar sslavic avatar thon avatar youngm avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.