From e86830df392f895574ba2212ef5201046ae21375 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Mon, 8 Dec 2014 15:54:25 +0100 Subject: [PATCH] Migrate to asciidoc --- README.md => README.adoc | 64 ++++++++++++++++++++++++++++------------ 1 file changed, 45 insertions(+), 19 deletions(-) rename README.md => README.adoc (68%) diff --git a/README.md b/README.adoc similarity index 68% rename from README.md rename to README.adoc index 544aa0c9..31fec19f 100644 --- a/README.md +++ b/README.adoc @@ -1,76 +1,96 @@ -# Spring Initializr += Spring Initializr -## Prerequisites +== Prerequisites You need Java (1.6 or better) and a bash-like shell. -If you are on a Mac and using [homebrew](http://brew.sh/), all you need to do to install it is: +If you are on a Mac and using http://brew.sh/[homebrew], all you need to do to install it is: +[indent=0] +---- $ brew tap pivotal/tap $ brew install springboot +---- -It will install `/usr/local/bin/spring`. You can jump right to [running the app](#running_the_app). +It will install `/usr/local/bin/spring`. You can jump right to <>. An alternative way to install the `spring` command line interface can be installed like this: +[indent=0] +---- $ curl start.spring.io/install.sh | bash +---- After running that command you should see a `spring` directory: +[indent=0] +---- $ ./spring/bin/spring --help usage: spring [--help] [--version] [] ... +---- You could add that `bin` directory to your `PATH` (the examples below assume you did that). If you don't have `curl` or `zip` you can probably get them (for -Windows users we recommend [cygwin](http://cygwin.org)), or you can -download the [zip file](http://start.spring.io/spring.zip) and unpack +Windows users we recommend http://cygwin.org[cygwin]), or you can +download the http://start.spring.io/spring.zip[zip file] and unpack it yourself. -## Project structure +== Project structure Initializr is a library that provides all the default features and a service with a very simple script that uses the auto-configuration feature of Spring Boot. All you need is _grabbing_ the library and create a proper configuration file with the following script: -``` -package org.acme.myapp +[indent=0] +---- + package org.acme.myapp -@Grab('io.spring.initalizr:initializr:1.0.0.BUILD-SNAPSHOT') -class InitializerService { } -``` + @Grab('io.spring.initalizr:initializr:1.0.0.BUILD-SNAPSHOT') + class InitializerService { } +---- As a reference, `initializr-service` represents the _default_ service that runs at http://start.spring.io - -## Running the app locally +[[run-app]] +== Running the app locally -Initializr currently uses a milestone release of `spring-test-htmlunit` that is available from -the [spring.io milestone repository](http://repo.spring.io/milestone). If you use a repository +NOTE: Initializr currently uses a milestone release of `spring-test-htmlunit` that is available from +the http://repo.spring.io/milestone[spring.io milestone repository]. If you use a repository manager, please make sure to configure it accordingly. For your convenience, the project defines a `springMilestone` that you should activate if you haven't defined that repository yourself. First make sure that you have built the library: +[indent=0] +---- $ cd initializr $ mvn clean install -PspringMilestone +---- Once you have done that, you can easily start the app using the spring command from the `initializr-service` directory (`cd ../initializr-service`): +[indent=0] +---- $ spring run app.groovy +---- ## Deploying to Cloud Foundry -If you are on a Mac and using [homebrew](http://brew.sh/), install the Cloud Foundry CLI: +If you are on a Mac and using http://brew.sh/[homebrew], install the Cloud Foundry CLI: +[indent=0] +---- $ brew install cloudfoundry-cli +---- -Alternatively, download a suitable binary for your platform from [Pivotal Web Services](https://console.run.pivotal.io/tools). +Alternatively, download a suitable binary for your platform from +https://console.run.pivotal.io/tools[Pivotal Web Services]. An example Cloud Foundry `manifest.yml` file is provided. You should ensure that the application name and URL (name and host values) are suitable for your environment @@ -78,12 +98,18 @@ before running `cf push`. You can jar up the app and make it executable in any environment. +[indent=0] +---- $ spring jar start.jar app.groovy +---- Once the jar has been created, you can push the application: +[indent=0] +---- $ cf push start -p start.jar -n start- - +---- + Where `` is the name of the space. As a failsafe, and a reminder to be explicit, the deployment will fail in production without the `-n`. It is needed to select the route because there is a