-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
for downloading and processing dependencies of maven-based Java projects
- Loading branch information
1 parent
4ff6397
commit 1b7cf76
Showing
4 changed files
with
210 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
from github import Github | ||
import os | ||
from subprocess import call | ||
import time | ||
import random | ||
import datetime | ||
import re | ||
import sys | ||
|
||
|
||
def downloadRepo(outputPath, repoName, counter): | ||
fullRepoName = 'https://github.com/' + repoName + '.git' | ||
os.chdir(outputPath) | ||
folderName = repoName.replace("/", "_") | ||
if not os.path.isdir(os.path.join(outputPath, folderName)): | ||
print(datetime.datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S') + ' cloning: ', fullRepoName) | ||
os.mkdir(folderName) | ||
call(['git', 'clone', fullRepoName, folderName]) | ||
call(['rm', '-rf', '%s/*' % folderName]) | ||
n = random.randint(50,70) | ||
print('On repo No %d: waiting for %d secs' % (counter, n)) | ||
time.sleep(n) | ||
|
||
g = Github('testSDKGithub', 'Testing1!') | ||
inputFilePath = sys.argv[1] | ||
outputPath = sys.argv[2] | ||
stars_threshold = int(sys.argv[3]) | ||
commits_threshold = int(sys.argv[4]) | ||
with open(inputFilePath, 'rt', errors='ignore') as f: | ||
lines = f.readlines() | ||
counter = 0 | ||
|
||
for line in lines[1:]: | ||
match = re.search(r'https://api.github.com/repos/(.+),(\d+),(\d+)$', line) | ||
if match: | ||
repoName = match.group(1) | ||
stars = int(match.group(2)) | ||
commits = int(match.group(3)) | ||
if not repoName == '' \ | ||
and stars >= stars_threshold \ | ||
and commits >= commits_threshold: | ||
counter += 1 | ||
downloadRepo(outputPath, repoName, counter) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
#!/bin/bash | ||
|
||
LIBRARIES=('apache' 'google') | ||
BUILDFILES=('build.gradle' 'build.xml' 'pom.xml') | ||
|
||
#echo "no of patterns: ${#LIBRARIES[@]}" | ||
#echo "patterns: ${LIBRARIES[@]}" | ||
|
||
p=0 | ||
for (( p = 0; p<${#LIBRARIES[@]} - 1; p++ )); | ||
do | ||
REGEX+="${LIBRARIES[p]}|" | ||
#echo $REGEX | ||
done | ||
|
||
REGEX+="${LIBRARIES[p]}" | ||
|
||
#echo $REGEX | ||
|
||
find . -name "${BUILDFILES[0]}" \ | ||
-o -name "${BUILDFILES[1]}" \ | ||
-o -name "${BUILDFILES[2]}" \ | ||
| xargs egrep "$REGEX" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,100 @@ | ||
org=org.scala-lang name=scala-compiler rev=2.10.4 | ||
org=org.scala-lang name=scala-library rev=2.10.4 | ||
org=junit name=junit rev=4.12 | ||
org=org.scala-lang name=scala-library rev=2.12.0-M3 | ||
org=org.slf4j name=slf4j-api rev=1.7.12 | ||
org=log4j name=log4j rev=1.2.17 | ||
org=com.google.guava name=guava rev=19.0-rc2 | ||
org=ch.qos.logback name=logback-classic rev=1.1.3 | ||
org=commons-io name=commons-io rev=2.4 | ||
org=org.slf4j name=slf4j-log4j12 rev=1.7.12 | ||
org=org.mockito name=mockito-all rev=1.10.19 | ||
org=org.apache.commons name=commons-lang3 rev=3.4 | ||
org=commons-logging name=commons-logging rev=1.2 | ||
org=org.testng name=testng rev=6.9.9 | ||
org=org.apache.maven name=maven-plugin-api rev=3.3.3 | ||
org=org.springframework name=spring-context rev=4.2.2.RELEASE | ||
org=org.apache.httpcomponents name=httpclient rev=4.5.1 | ||
org=org.osgi name=org.osgi.core rev=6.0.0 | ||
org=joda-time name=joda-time rev=2.9 | ||
org=javax.servlet name=javax.servlet-api rev=3.1.0 | ||
org=com.fasterxml.jackson.core name=jackson-databind rev=2.6.3 | ||
org=commons-codec name=commons-codec rev=1.10 | ||
org=org.springframework name=spring-test rev=4.2.2.RELEASE | ||
org=org.springframework name=spring-core rev=4.2.2.RELEASE | ||
org=org.easymock name=easymock rev=3.4 | ||
org=org.scalatest name=scalatest_2.10 rev=3.0.0-M11 | ||
org=commons-collections name=commons-collections rev=3.2.1 | ||
org=org.codehaus.plexus name=plexus-utils rev=3.0.22 | ||
org=com.h2database name=h2 rev=1.4.190 | ||
org=org.apache.maven name=maven-project rev=2.2.1 | ||
org=com.google.code.gson name=gson rev=2.4 | ||
org=org.osgi name=org.osgi.compendium rev=5.0.0 | ||
org=org.springframework name=spring-beans rev=4.2.2.RELEASE | ||
org=com.google.code.findbugs name=jsr305 rev=3.0.1 | ||
org=org.codehaus.jackson name=jackson-mapper-asl rev=1.9.13 | ||
org=org.hamcrest name=hamcrest-library rev=1.3 | ||
org=org.springframework name=spring-web rev=4.2.2.RELEASE | ||
org=com.fasterxml.jackson.core name=jackson-core rev=2.6.3 | ||
org=com.google.inject name=guice rev=4.0 | ||
org=org.codehaus.groovy name=groovy-all rev=2.4.5 | ||
org=org.apache.maven name=maven-core rev=3.3.3 | ||
org=org.hamcrest name=hamcrest-core rev=1.3 | ||
org=commons-beanutils name=commons-beanutils rev=1.9.2 | ||
org=ch.qos.logback name=logback-core rev=1.1.3 | ||
org=com.google.gwt name=gwt-user rev=2.7.0 | ||
org=mysql name=mysql-connector-java rev=5.1.37 | ||
org=org.springframework name=spring-webmvc rev=4.2.2.RELEASE | ||
org=com.fasterxml.jackson.core name=jackson-annotations rev=2.6.3 | ||
org=javax.enterprise name=cdi-api rev=2.0-EDR1 | ||
org=commons-cli name=commons-cli rev=1.3.1 | ||
org=javax.mail name=mail rev=1.4.7 | ||
org=org.assertj name=assertj-core rev=3.2.0 | ||
org=org.apache.ant name=ant rev=1.9.6 | ||
org=xerces name=xercesImpl rev=2.11.0 | ||
org=org.hibernate name=hibernate-core rev=5.0.3.Final | ||
org=org.apache.maven name=maven-artifact rev=3.3.3 | ||
org=org.apache.derby name=derby rev=10.12.1.1 | ||
org=org.hsqldb name=hsqldb rev=2.3.3 | ||
org=org.hibernate name=hibernate-entitymanager rev=5.0.3.Final | ||
org=org.freemarker name=freemarker rev=2.3.23 | ||
org=javax.validation name=validation-api rev=1.1.0.Final | ||
org=cglib name=cglib-nodep rev=3.2.0 | ||
org=org.springframework name=spring-jdbc rev=4.2.2.RELEASE | ||
org=com.sun.xml.bind name=jaxb-impl rev=2.2.11 | ||
org=org.hibernate name=hibernate-validator rev=5.2.2.Final | ||
org=com.thoughtworks.xstream name=xstream rev=1.4.8 | ||
org=org.springframework name=spring-aop rev=4.2.2.RELEASE | ||
org=org.jboss.logging name=jboss-logging rev=3.3.0.Final | ||
org=org.mortbay.jetty name=jetty rev=6.1.26 | ||
org=commons-dbcp name=commons-dbcp rev=1.4 | ||
org=commons-fileupload name=commons-fileupload rev=1.3.1 | ||
org=org.json name=json rev=20150729 | ||
org=org.easytesting name=fest-assert rev=1.4 | ||
org=org.springframework name=spring-tx rev=4.2.2.RELEASE | ||
org=org.eclipse.jetty name=jetty-servlet rev=9.3.5.v20151012 | ||
org=org.scoverage name=scalac-scoverage-plugin_2.11 rev=1.1.1 | ||
org=org.apache.maven name=maven-model rev=3.3.3 | ||
org=org.spockframework name=spock-core rev=1.0-groovy-2.4 | ||
org=org.projectlombok name=lombok rev=1.16.6 | ||
org=cglib name=cglib rev=3.2.0 | ||
org=org.springframework name=spring-context-support rev=4.2.2.RELEASE | ||
org=dom4j name=dom4j rev=1.6.1 | ||
org=org.springframework name=spring-orm rev=4.2.2.RELEASE | ||
org=org.scalacheck name=scalacheck_2.10 rev=1.12.5 | ||
org=org.powermock name=powermock-module-junit4 rev=1.6.3 | ||
org=org.apache.velocity name=velocity rev=1.7 | ||
org=org.apache.httpcomponents name=httpcore rev=4.4.4 | ||
org=commons-configuration name=commons-configuration rev=1.10 | ||
org=asm name=asm rev=3.3.1 | ||
org=org.apache.felix name=org.apache.felix.scr.annotations rev=1.9.12 | ||
org=org.easymock name=easymockclassextension rev=3.2 | ||
org=org.aspectj name=aspectjrt rev=1.8.7 | ||
org=org.apache.camel name=camel-core rev=2.16.0 | ||
org=xmlunit name=xmlunit rev=1.6 | ||
org=org.javassist name=javassist rev=3.20.0-GA | ||
org=com.google.protobuf name=protobuf-java rev=2.6.1 | ||
org=org.codehaus.plexus name=plexus-container-default rev=1.6 | ||
org=org.hibernate.javax.persistence name=hibernate-jpa-2.0-api rev=1.0.1.Final | ||
org=org.reflections name=reflections rev=0.9.10 | ||
org=com.sun.jersey name=jersey-server rev=1.19 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
#!/bin/bash | ||
|
||
# Data folder (TODO: add sample apk file) | ||
if ! [ -d 'data' ]; then | ||
mkdir data | ||
fi | ||
if ! [ -d 'data/out' ]; then | ||
mkdir data/out | ||
fi | ||
|
||
if ! [ -d 'libs' ]; then | ||
mkdir libs | ||
fi | ||
cd libs | ||
|
||
# Java 1.7 and Python 2.7 | ||
#sudo apt-get install -y openjdk-7-jdk openjdk-7-jre python2.7 git wget | ||
|
||
if ! [ -f 'baksmali-2.0.3.jar' ]; then | ||
wget https://bitbucket.org/JesusFreke/smali/downloads/baksmali-2.0.3.jar | ||
fi | ||
|
||
# Android | ||
if ! [ -f 'android-sdk_r23-linux.tgz' ]; then | ||
wget http://dl.google.com/android/android-sdk_r23-linux.tgz | ||
fi | ||
if ! [ -d 'android-sdk-linux' ]; then | ||
tar -xvf android-sdk_r23-linux.tgz | ||
cd android-sdk-linux/tools | ||
# Type 'y' to accept the license agreement (no -y flag unfortunately) | ||
./android update sdk --no-ui -a -t 'android-14,android-15,android-16,android-17,android-18, | ||
android-19,android-20,android-21,android-22,android-23' | ||
fi | ||
|
||
# Set paths | ||
#echo 'export PATH=$PATH:/opt/android-sdk-linux/platform-tools' >> /etc/profile.d/android.sh | ||
#echo 'export ANDROID_TOOLS=/opt/android-sdk-linux' >> /etc/profile.d/android.sh | ||
#source /etc/profile.d/android.sh | ||
# Install sdks | ||
#cd /opt/android-sdk-linux/tools | ||
#./android list sdk --all | ||
#./android update -u -t 1,2,4,26,103 | ||
|