Skip to content

Commit

Permalink
Merge branch 'release/plugin-sftp/v0.1.0-alpha'
Browse files Browse the repository at this point in the history
  • Loading branch information
binwiederhier committed Apr 27, 2014
2 parents 265708d + 7b6bbc8 commit d101a3b
Show file tree
Hide file tree
Showing 496 changed files with 53,696 additions and 76 deletions.
15 changes: 8 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
*.class

# Package Files #
*.jar
*.war
*.ear
/bin
bin
build
.gradle
.settings
.classpath
.project
.metadata
*.bak
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

30 changes: 30 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
language: java
jdk: openjdk7

env:
global:
- TERM=dumb
- secure: "DU5sznUhdYMK2h974ihHnuKsQVORwfSRHQHd3IBM+IwUBh2dzb3eOCJYWowekNp0LxBND2YSCti8EjD/9Zo/9W/Km9aV5zDRFnctzLQX4cYcssqtt0bUrXkgzIW7A8ou6vRcVdjp4Zp/jfGAJxC7TWCIoxell0Id49yLNMcBYns="
- secure: "XWkv3pk/hEJB7BDudPH3x9zk541Bl1yb5PynDRkMSUrKeeU2E0hFX1qATvy+gwadIFoqqlDDemtKjURBJq5nyTuWVJZ0StkH3PMdSjjMymzzBmf1RsB+EmpemG/wldXLys5S/jtlsZ/cQuqC/R4hgyTLr86YM/KdsfPBu0lsyM0="
- secure: "mNC9zY3ztFoVIIyhOU2i6FUGkV81YSiKxYuderHN9ScuACYngE2F+ggp5ZphEoRqQqkn/YaqymMwrOUtbGK0JT8C29E3fJIiW+zryV/OJdu/ed5/yfkwTHQGYp9kdlP6MlERSstG3z04CT44GcuW0BqA6ySsgJvnlBYMzz211yw="

branches:
only:
- master
- develop

notifications:
email: false
irc: chat.freenode.net#syncany

before_install:
- sudo apt-get update
- sudo apt-get install -y -q lftp
- lftp -v

script:
- core/gradlew clean pluginJar

after_success:
- core/gradle/lftp/lftpuploadplugin.sh

12 changes: 3 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
Syncany SFTP Plugin
-------------------
This plugin uses an **SFTP folder** as a storage backend for [Syncany](http://www.syncany.org). The plugin can be installed in Syncany using the `sy plugin install` command. For further information about the usage, please refer to the central **[wiki page](https://github.com/binwiederhier/syncany/wiki)**.

#1 Steps to make it work

git clone http://github.com/vwiencek/syncany-plugin-sftp.git
cd syncany-plugin-hazelcast
git submodule init
git submodule update
gradle eclipse

Then you have a fully 'eclipse-prepared' environment to start improving the plugin
For plugin development, please refer to the [plugin development wiki page](https://github.com/binwiederhier/syncany/wiki/Plugin-development).

53 changes: 51 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,16 +1,65 @@
evaluationDependsOn(':syncany')

apply plugin: 'java'
apply plugin: 'eclipse'

configurations {
pluginjar
}

project.ext {
pluginId = "sftp"
pluginName = "SFTP"
pluginVersion = "0.1.0-alpha"
pluginDate = new Date()
pluginAppMinVersion = "0.1.2-alpha"
pluginRelease = project(':syncany').ext.applicationRelease

pluginVersionSnapshot = project(':syncany').ext.applicationVersionSnapshot
pluginVersionFull = "${pluginVersion}${pluginVersionSnapshot}"
}

dependencies {
compile project(':syncany-lib')
compile "com.jcraft:jsch:0.1.50"
compile "org.apache.sshd:sshd-core:0.9.0"
compile "org.apache.commons:commons-vfs2:2.0"


pluginjar "com.jcraft:jsch:0.1.50"
pluginjar "org.apache.sshd:sshd-core:0.9.0"
pluginjar "org.apache.commons:commons-vfs2:2.0"

testCompile "junit:junit:4.3"
testCompile project(path : ':syncany-lib', configuration: 'tests')
testCompile project(path: ':syncany-lib', configuration: 'tests')
}

repositories {
mavenCentral()
}

processResources {
filter{ String line -> line.replaceAll('%pluginId%', "${pluginId}") }
filter{ String line -> line.replaceAll('%pluginName%', "${pluginName}") }
filter{ String line -> line.replaceAll('%pluginVersion%', "${pluginVersionFull}") }
filter{ String line -> line.replaceAll('%pluginDate%', "${pluginDate}") }
filter{ String line -> line.replaceAll('%pluginAppMinVersion%', "${pluginAppMinVersion}") }
filter{ String line -> line.replaceAll('%pluginRelease%', "${pluginRelease}") }
}

task pluginJar(type: Jar, dependsOn: [processResources, compileJava]) {
from files(sourceSets.main.output.classesDir)
from files(sourceSets.main.output.resourcesDir)
from { configurations.pluginjar.collect { zipTree(it) } }

baseName = "syncany-plugin-${pluginId}"
version = "${pluginVersionFull}"

manifest {
attributes("Plugin-Id": "${pluginId}")
attributes("Plugin-Name": "${pluginName}")
attributes("Plugin-Version": "${pluginVersionFull}")
attributes("Plugin-Date": "${pluginDate}")
attributes("Plugin-App-Min-Version": "${pluginAppMinVersion}")
attributes("Plugin-Release": "${pluginRelease}")
}
}
1 change: 0 additions & 1 deletion core
Submodule core deleted from 024023
11 changes: 11 additions & 0 deletions core/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
bin
build
.gradle
.settings
.classpath
.project
.metadata
*.bak
gradle/arch/syncany/pkg
gradle/arch/syncany/src
gradle/arch/syncany/syncany*.tar*
67 changes: 67 additions & 0 deletions core/.travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
language: java
jdk: openjdk7

env:
global:
# Terminal does not support colors (Gradle display issue)
- TERM=dumb

# Syncany FTP credentials (SYNCANY_FTP_* environment variables)
- secure: "OWv7tJZiDQYxZpxw25Qs4B086veBPzjGvrVApfd8tAAOI7xG8Ifp9+TFsRO27xw99ZDFDLzjSZyffR45sgGCTuRapdSWNwIEmma4dAn299bFl1ayU5IXQYtIRsaXjyAm8QPmLbdl5YHFE77ArzFIsaysb7ZXB3cKnYfJGkiNLFs="
- secure: "I0+Aw5CgV5wGfsW8hO/HB9FgCUQI/UDg1ppUV7ATq6UpaxmftSpycxR5TOx3D1ISewoD079BqLxSB1i4grns5vKccGxgjeGt4vFr3X1c1NHth0jOPVMJDEVcKZ4odxM8BbSa4MOk+ZpqsgjfDqGZzxt8eRBai1chlKx8WEKao+4="
- secure: "JPLqhdDfP3y12dlCtyNfNg32vEQzJAKAp9CFrvz1uogZr61bp0NEi3cDS2TGSqWep7X/uPgJ84LFI22Fy5zH/1pJxY9Y9NpmVnRtFy9Cp3Qb0A9fUZ2ePO2TtyHBwLHCDO9FolrhPpqX6WuCSW26igIEzyAwaslFAJUhF09qadw="

branches:
only:
- master
- develop

notifications:
email: false
irc: "chat.freenode.net#syncany"

before_install:
# Update APT (necessary!)
- sudo apt-get update

# FPM setup (Ruby-based)
- sudo rm /etc/profile.d/rvm.sh
- sudo apt-get install -y -q ruby ruby-dev build-essential rubygems ruby-rvm
- rvmsudo gem install fpm
- fpm --help | grep "This is fpm"

# LFTP (to upload the distributables and JavaDoc)
- sudo apt-get install -y -q lftp graphviz wine python-software-properties
- lftp -v

# Graphviz (for JavaDoc images; see Gradle tasks)
- sudo apt-get install -y -q graphviz

# Inno Setup (for Windows executable/installer)
- sudo add-apt-repository --yes ppa:arx/release
- sudo apt-get update -d
- sudo apt-get install -y -q innoextract wine python-software-properties
- wine --version
- innoextract --version
- ./gradle/innosetup/innoinstall.sh
- sudo cp gradle/innosetup/iscc /usr/local/bin/iscc
- iscc /? 2> /dev/null | grep "Inno Setup Preprocessor"

# Line of code tool (cloc)
- sudo apt-get install -y -q cloc
- cloc --version

script:
# Run JUnit tests and generate reports
- ./gradlew testGlobal coberturaReport performCoverageCheck

after_success:
# Create distributables and JavaDoc
- ./gradlew installApp distTar distZip debian exe javadocAll

# Line of code stats
- cloc --quiet --xml --out=build/reports/cloc.xml $(find -type d -name main | grep src/main)

# Upload distributables and JavaDoc
- ./gradle/lftp/lftpupload.sh

11 changes: 11 additions & 0 deletions core/AUTHORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Authors
=======

Point of Contact and Lead Development:
- Philipp C. Heckel ([email protected])

Team / Contributors:
- Fabrice Rossi ([email protected])
- Steffen Dangmann ([email protected])
- Pim Otte ([email protected])
- Vincent Wiencek ([email protected])
54 changes: 54 additions & 0 deletions core/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
Change Log
==========

### Release 0.1.2-alpha (Date: tbd.)

- Developer/alpha release (**NOT FOR PRODUCTION USE!**)
- Features:
+ Extracted non-core plugins, allow easy plugin installation through
`sy plugin (list|install|remove)` #26/#104
- Shipped plugins now only 'local'
- Installable plugins:
[FTP](https://github.com/syncany/syncany-plugin-ftp),
[SFTP](https://github.com/syncany/syncany-plugin-sftp) (no host checking),
[WebDAV](https://github.com/syncany/syncany-plugin-webdav) (HTTP only),
[Amazon S3](https://github.com/syncany/syncany-plugin-s3)
+ Ignore files using wildcards in .syignore (e.g. *.bak, *.r??) #108
+ Added Arch Linux 'syncany-git' package #99
+ Allow speicifying HTTP(S)/WebDAV proxy and other global system properties #109
- Bugfixes
+ Fix semantic in TransferManager `test()` (incl. all plugins) #103/#102
+ WebDAV plugin fix to create "multichunks"/"databases" folder #110
+ Fix "Plugin not supported" stack trace #111
+ Windows build script fix for "Could not normalize path" #107
+ Fix database file name leak of username and hostname #114
+ Check plugin compatibility before installing (check appMinVersion) #104
+ Don't ignore local/remote notifications if sync already running #88
+ Uninstall plugins on Windows (JAR locked) #113/#117
+ Rotate logs to max. 4x25 MB #116
+ Fix multichunk resource close issue #118/#120

### Release 0.1.1-alpha (Date: 14 Apr 2014)

- Developer/alpha release (**NOT FOR PRODUCTION USE!**)
- Features:
+ Ignoring files using .syignore file #66/#77
+ Arch Linux package support; release version #80 and git version #99
+ Additional command-specific --help texts
- Windows-specific:
+ Add Syncany binaries to PATH environment variable during setup #84/#91
+ Fixed HSQLDB-path issue #98
- Bugfixes:
+ Timezone fix in tests #78/#90
+ Reference issue "Cannot determine file content for checksum" #92/#94
+ Atomic 'init' command (rollback on failure) #95/#96
- Other things:
+ Tests for 'connect' command
+ Tests for .syignore

### Release 0.1.0-alpha (Date: 30 March 2014)

- First developer/alpha release (**NOT FOR PRODUCTION USE!**)
- Command line interface (CLI) with commands
+ init: initialize local folder and remote repository
+ connect
Loading

0 comments on commit d101a3b

Please sign in to comment.