Skip to content

Latest commit

 

History

History
102 lines (76 loc) · 3.22 KB

git-component.adoc

File metadata and controls

102 lines (76 loc) · 3.22 KB

Git

Since Camel 2.16

Both producer and consumer are supported

The Git component allows you to work with a generic Git repository.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-git</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

URI Format

git://localRepositoryPath[?options]

URI Options

The producer allows to do operations on a specific repository.
The consumer allows consuming commits, tags and branches on a specific repository.

Producer Example

Below is an example route of a producer that add a file test.java to a local repository, commit it with a specific message on master branch and then push it to remote repository.

from("direct:start")
    .setHeader(GitConstants.GIT_FILE_NAME, constant("test.java"))
    .to("git:///tmp/testRepo?operation=add")
    .setHeader(GitConstants.GIT_COMMIT_MESSAGE, constant("first commit"))
    .to("git:///tmp/testRepo?operation=commit")
    .to("git:///tmp/testRepo?operation=push&remotePath=https://foo.com/test/test.git&username=xxx&password=xxx")
    .to("git:///tmp/testRepo?operation=createTag&tagName=myTag")
    .to("git:///tmp/testRepo?operation=pushTag&tagName=myTag&remoteName=origin")

Consumer Example

Below is an example route of a consumer that consumes commit:

from("git:///tmp/testRepo?type=commit")
    .to(....)

Custom config file

By default camel-git will load .gitconfig file from user home folder. You can override this by providing your own .gitconfig file.

from("git:///tmp/testRepo?type=commit&gitConfigFile=file:/tmp/configfile")
    .to(....) //will load from os dirs

from("git:///tmp/testRepo?type=commit&gitConfigFile=classpath:configfile")
    .to(....) //will load from resources dir

from("git:///tmp/testRepo?type=commit&gitConfigFile=http://somedomain.xyz/gitconfigfile")
    .to(....) //will load from http. You could also use https

spring-boot:partial$starter.adoc