Skip to content

Commit

Permalink
Initial commit by hacking away at AppRunner code
Browse files Browse the repository at this point in the history
  • Loading branch information
danielflower committed Mar 13, 2016
0 parents commit c90a1f2
Show file tree
Hide file tree
Showing 36 changed files with 1,589 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# EditorConfig is awesome: http://EditorConfig.org

root = true

[*.{java,xml}]
charset = utf-8
indent_style = space
indent_size = 4
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.idea/
*.iml
target/
dependency-reduced-pom.xml
access.log
53 changes: 53 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
Contributing
------------

Pull requests are gratefully welcomed. It would be appreciated if the following guidelines are followed:

* Make sure tests cover your change, preferably with fast unit tests rather the slow integration tests.
* Use [.editorconfig](http://editorconfig.org/) to keep formatting consistent

Deploying to Nexus
------------------

**This section applies only to project owners**

The JARs must be signed and you must have access to upload to Sonatype, so you need a GPG key and a Sonatype login.
The passwords for this should be in your Maven `settings.xml` with the following config:

<settings>
<servers>
<server>
<id>ossrh</id>
<username>your sonatype nexus username</username>
<password>your password</password>
</server>
</servers>
<profiles>
<profile>
<id>gpg</id>
<properties>
<gpg.keyname>your public key name</gpg.keyname>
<gpg.passphrase>your key passphrase</gpg.passphrase>
</properties>
</profile>
</profiles>
</settings>

Given everything is set up correctly, the following deploys a snapshot version:

mvn clean deploy -P release,gpg

Performing a release
--------------------

**This section applies only to project owners**

The plugin uses the [Multi Module Maven Release Plugin for Git](http://danielflower.github.io/multi-module-maven-release-plugin/index.html).

mvn releaser:release

Once released, go to the Nexus instance at https://oss.sonatype.org and log in, and then click on the "Staging Repositories"
link where you should find a repository in the list that looks something like `comgithubdanielflower-1010`. Select that
and then press the 'Close' button. After confirming, Nexus validates that all their requirements are met. Assuming that
passes, select the repo again and click 'Release'. Keep the default options and press 'Confirm'. It takes a little while
but will soon appear in the central Maven repo.
21 changes: 21 additions & 0 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
The MIT License (MIT)

Copyright (c) 2015 Daniel Flower

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.
19 changes: 19 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Restabuild
----------

Your self-hosted build server that let's you quickly build projects from a RESTful interface only.
Simply place `build.sh` (or `build.bat` if the build server is Windows) into the root of your project
and then `POST` to `/build?gitUrl={your-git-ssh-or-http-url}`

Running locally
---------------

Run `com.danielflower.restabuild.RunLocal.main` from your IDE. This will use the settings in
`sample-config.properties`.

Configuration
-------------

See `sample-config.properties` for configuration information. Each setting can be specified
as an environment variable, a java system property, or in a properties file who's path is
specified as a command line argument.
Loading

0 comments on commit c90a1f2

Please sign in to comment.