view.main.html Maven / Gradle / Ivy
Show all versions of sds-server Show documentation
SDS - Software Distribution System
SDS - Software Distribution System
@detailedVersion
Client
What is it?
SDS is a tool to ease deployment of software components across low bandwidth connections. Performing
differential updates, only files which really changed are transmitted. Using port 80 and HTTP enables
updates through most firewalls etc. without exotic configuration.
Read more on GitHub...
How do I use it?
SDS consists of two parts: A command line tool called SDS.class and the sds-server.
The Client
Using the client is quite simple. Download the SDS.class and run it using Java by calling
java SDS -server <servername> list. (Instead of specifying -server for each call, you
can also set the environment variable SDS_SERVER). If you're accessing a private
instance you can also specify a -identity and -key (or SDS_IDENTITY and SDS_KEY).
The client supports the following commands:
- list - Lists all known artifacts
- list <artifact> - Lists all versions of the given artifact.
- pull <artifact> [ <version> ] - Synchronizes the local directory with the given artifact.
Warning: This will move all unwanted files into a directory called "trash"!
- verify <artifact> [ <version> ] - Performs a dry-run for pull - reports a changes without performing them.
- monkey <artifact> [ <version> ] - Performs a a monkey patch. This will ask if each change should be performed or not.
The sds-server
To install you own SDS Server, download and unpack the latest ZIP from:
Sonatype.
Like any SIRIUS application you can now start the server by calling
./sirius.sh start
in the install directory (you might need to make it executable: chmod +x sirius.sh
).
By default the system operates on port 9000. You can tweak the configuration by creating a file called
instance.conf
. Here you can place custom settings like http.port=80
. All available
settings can be found in app/application.conf
.
The Maven plugin
A Maven Mojo called sds-maven-plugin can be used to push artifacts into the SDS server:
<plugin>
<groupId>com.scireum</groupId>
<artifactId>sds-maven-plugin</artifactId>
<version>VERSION</version>
<configuration>
<developmentArtifact><!-- Name of the artifact to push for SNAPSHOT builds --></developmentArtifact>
<releaseArtifact><!-- Name of the artifact to push for release builds --></releaseArtifact>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>sds</goal>
</goals>
</execution>
</executions>
</plugin>
The specify which server to use, add this to your settings.xml:
<properties>
<sds.server>my-host</sds.server>
<sds.identity>MY_USER</sds.identity>
<sds.key>MY_KEY</sds.key>
</properties>
License
The MIT License (MIT)
Copyright (c) 2013 scireum GmbH
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.