java client api_java-client-api

A Jenkins API Client for Java

java-client-api.svg?label=License

jenkins-client.svg?label=Maven%20Central

java-client-api.svg?branch=master

jenkins-client.svg?color=blue

Important Note

The Jenkins API Client For Java has now moved under the umbrella of the Jenkins GitHub Organization.

What is the "Jenkins API Client for Java"?

This library is just a piece of java code which uses the REST API of jenkins.

This means you can trigger builds, extract informations about jobs or builds

etc. The information you can extract will be represented in java objects which

you can reuse for other purposes or integrate this library into other parts for

a higher level of integration.

Getting Started

If you like to use this library you need to add the library as a dependency

to your project. This can be done by using a Maven dependency like the following:

com.offbytwo.jenkins

jenkins-client

0.3.8

This can also being done by defining a Gradle dependency like this:

compile 'com.offbytwo.jenkins:jenkins-client:0.3.8'

Starting with a future release 0.4.0 the groupId/artifactId will change (NOT YET DONE!)

NOT YET FINALIZED NOR RELEASED !!!

org.jenkins-ci.lib

java-client-api

0.4.0

Usage

The com.offbytwo.jenkins.JenkinsServer class provides the main entry

point into the API. You can create a reference to the Jenkins server

given its location and (optionally) a username and password/token.

JenkinsServer jenkins = new JenkinsServer(new URI("http://localhost:8080/jenkins"), "admin", "password")

At the top level you can access all of the currently defined

jobs. This returns a map of job names (in lower case) to jobs.

Map jobs = jenkins.getJobs()

The Job class provides only summary information (name and url). You can retrieve details as follows

JobWithDetails job = jobs.get("My Job").details()

The JobWithDetails class provides you with access to the list of

builds (and related information such as the first, last, successful,

etc) and upstream and downstream projects.

Running Tests

To run only unit tests without invoking the integration tests use the following command:

mvn clean install -DskipITs

Running Integration Tests

To run integration tests simply start

mvn -Prun-its clean verify

There is also a module which contains integration tests

which are running with a special version of Jenkins

within a Docker container to check several aspects of the API which can't be

covered by the usual integration tests.

Release Notes

You can find details about the different releases in the Release Notes.

Contribution

Creating Issues

If you find a problem please create an

issue in the ticket system with the component java-client-api

and describe what is going wrong or what you expect to happen.

If you have a full working example or a log file this is also helpful.

You should of course describe only a single issue in a single ticket and not

mixing up several different things into a single issue.

Creating a Pull Request

Before you create a pull request it is necessary to create an issue in

the ticket system before with the component java-client-api

and describe what the problem is or what kind of feature you would like

to add. Afterwards you can create an appropriate pull request.

It is required if you want to get a Pull request to be integrated into please

squash your commits into a single commit which references the issue in the

commit message which looks like this:

Fixed #Issue

o Description.

This makes it simpler to merge it and this will also close the

appropriate issue automatically in one go. This make the life as

maintainer a little bit easier.

A pull request has to fulfill only a single ticket and should never

create/add/fix several issues in one, cause otherwise the history is hard to

read and to understand and makes the maintenance of the issues and pull request

hard or to be honest impossible.

Furthermore it is necessary to create appropriate entries into the ReleaseNotes.md

file as well.

Help & Questions

You can ask questions in the mailing list

which is also intended as discussion forum for development.

Generated Site

License

Copyright (C) 2013, Cosmin Stejerean, Karl Heinz Marbaise, and contributors.

Distributed under the MIT license: http://opensource.org/licenses/MIT

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值