Here I am sharing the steps to deploy Grails Application to CloudFoundry.
Step 1: Install CloudFoundry Plugin
install-plugin cloud-foundry
Step 2: Configure Credential
Create $HOME/.grails/settings.groovy and configure your CloudFoundry credential there. Putting your credential in settings.groovy makes it available to all your Grails projects. The alternative is to configure in BuildConfig.groovy or Config.groovy which makes it available to that specific project only. Using settings.groovy is better as it keep the credential out of source control. In Windows, $HOME= C:\Users\<username>.
grails.plugin.cloudfoundry.username = '' grails.plugin.cloudfoundry.password = ''
Step 3: Verify Credential
Check whether the credential is working by executing the following command:
cf-info
You will see a similar print out as shown below
VMware's Cloud Application Platform
For support visit support@cloudfoundry.com
Target: http://api.cloudfoundry.com (v0.999)
User: <your_username>
Usage: Memory (128.0M of 2.0G total)
Services (0 of 16 total)
Apps (1 of 20 total)
Step 4: Deploy Grails Application
Now, deploy your Grails application by executing the following command:
cf-push
If you decided to deploy your application with a different name, use the option –appname
cf-push --appname=other-name
During deployment you will be prompted with the following questions. The mysql service can be provisioned at later stage using the cf-create-service.
You're running in the development environment but haven't specified a war file, so one will be built with development settings. Are you sure you want to do proceed? ([y], n)
Application Deployed URL: 'grails-qotd-extjs.cloudfoundry.com'?
Would you like to create and bind a mysql service? ([y], n)
Step 5: Verify Application Deployment
To check your deployment, execute the command below:
cf-apps
You will see a similar print out as shown below
+-----------------+----+---------+----------------------------------+----------+
| Application | # | Health | URLs | Services |
+-----------------+----+---------+----------------------------------+----------+
| <app-name> | 1 | RUNNING | <app-name>.cloudfoundry.com | |
+-----------------+----+---------+----------------------------------+----------+