Repository : http://git.fedorahosted.org/cgit/jenkinscat-docs.git
On branch : master
commit 94d3e5c96297bf263e2d3f4108f66b2c28f45bcd Author: Pavel Tisnovsky ptisnovs@redhat.com Date: Tue Jan 20 10:56:36 2015 +0100
Function for cloning from various repo types.
ChangeLog | 5 +++++ src/jenkinscat/server.clj | 23 +++++++++++++++++++++++ 2 files changed, 28 insertions(+), 0 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 8f2ca97..5947b09 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,11 @@ 2015-01-20 Pavel Tisnovsky ptisnovs@redhat.com
* src/jenkinscat/server.clj: + Function for cloning from various repo types. + +2015-01-20 Pavel Tisnovsky ptisnovs@redhat.com + + * src/jenkinscat/server.clj: Basic support for adding new books.
2015-01-19 Pavel Tisnovsky ptisnovs@redhat.com diff --git a/src/jenkinscat/server.clj b/src/jenkinscat/server.clj index b9babc1..cba6a10 100644 --- a/src/jenkinscat/server.clj +++ b/src/jenkinscat/server.clj @@ -742,6 +742,29 @@ url (get-full-repository-url repository-type repository-name)] (check-if-repo-exists dvcs url)))
+(defn clone-git-repo + "Clone given GIT repository into temporary directory." + [url temp-dir-name] + (let [result (exec/exec "git clone" url temp-dir-name)] + (= result 0))) + +(defn clone-svn-repo + "Clone given SVN repository into temporary directory." + [url temp-dir-name] + (let [result (exec/exec "svn checkout --non-interactive --trust-server-cert " url temp-dir-name)] + (= result 0))) + +(defn clone-repo + "Clone given GIT or SVN repository into temporary directory." + [repository-type dcvs repository-name temp-dir-name] + ;(println repository-type dcvs repository-name) + (let [full-url (get-full-repository-url repository-type repository-name)] + (println "Clonning from: " full-url) + (cond + (= dcvs "git") (clone-git-repo full-url temp-dir-name) + (= dcvs "svn") (clone-svn-repo full-url temp-dir-name) + :else nil))) + (defn count-books [books] (let [out-data (new java.util.TreeSet)]