The release model is associate with the Release Server model, which allows you to deploy your code via FTP or SFTP to your web server.
repository_id is required. Either name of the repo or it’s ID can be used. Use page parameter to skim through pages. Beanstalk will send 20 releases per page.
GET /api/repo_name/releases.xml
Click to expand…
http-response<?xml version="1.0" encoding="UTF-8"?>
<releases type="array">
<release>
<account-id type="integer">23452</account-id>
<author>gilbert</author>
<comment>Deploying yesterday's changes.</comment>
<created-at type="datetime">
2009-11-04T10:03:29Z
</created-at>
<deployed-at type="datetime">
2009-11-04T10:03:40Z
</deployed-at>
<id type="integer">2547</id>
<last-retry-at type="datetime" nil="true"></last-retry-at>
<repository-id type="integer">98765</repository-id>
<environment-name>Staging</environment-name>
<environment-id>6</environment-id>
<retries type="integer">0</retries>
<revision type="integer">81</revision>
<state>complete</state>
<updated-at type="datetime">
2009-11-04T10:03:40Z
</updated-at>
</release>
<release>
<account-id type="integer">8765</account-id>
<author>ilya</author>
<comment>Going crazy</comment>
<created-at type="datetime">
2008-06-26T17:02:22Z
</created-at>
<deployed-at type="datetime">
2008-06-26T17:03:30Z
</deployed-at>
<id type="integer">6543</id>
<last-retry-at type="datetime" nil="true"></last-retry-at>
<repository-id type="integer">8967</repository-id>
<environment-name>Staging</environment-name>
<environment-id>6</environment-id>
<retries type="integer">0</retries>
<revision type="integer">249</revision>
<state>complete</state>
<updated-at type="datetime">
2008-11-04T14:50:01Z
</updated-at>
</release>
</releases>
Beanstalk::API::Release.find_all_for_environment(environment_id=7, "repo", page=nil)
repository_id is required. Either name of the repo or it’s ID can be used. Release ID is required.
GET /api/repo_name/8765.xml
Click to expand…
http-response<?xml version="1.0" encoding="UTF-8"?>
<release>
<account-id type="integer">8765</account-id>
<author>ilya</author>
<comment>Going crazy</comment>
<created-at type="datetime">
2008-06-26T17:02:22Z
</created-at>
<deployed-at type="datetime">
2008-06-26T17:03:30Z
</deployed-at>
<id type="integer">6543</id>
<last-retry-at type="datetime" nil="true"></last-retry-at>
<repository-id type="integer">8967</repository-id>
<environment-name>Staging</environment-name>
<environment-id>6</environment-id>
<retries type="integer">0</retries>
<revision type="integer">249</revision>
<state>complete</state>
<updated-at type="datetime">
2008-11-04T14:50:01Z
</updated-at>
</release>
Beanstalk::API::Release.find_for_repository(8765, "repo")
Creating a release means requesting a deployment. If you already have some releases in state “new” or “retry”, Beanstalk will delete them after creating a new one.
See the list of writable attributes at the top of the page. Both revision and release_server_id are required. release_server_id should be an ID of an enabled server under your account.
POST /api/repo_name/releases.xml/?environment_id=6
<release>
<revision type="integer">1</revision>
</release>
Click to expand…
http-response<?xml version="1.0" encoding="UTF-8"?>
<release>
<account-id type="integer">23452</account-id>
<author>gilbert</author>
<comment>Deploying yesterday's changes.</comment>
<created-at type="datetime">
2009-11-04T10:03:29Z
</created-at>
<deployed-at type="datetime">
2009-11-04T10:03:40Z
</deployed-at>
<id type="integer">2547</id>
<last-retry-at type="datetime" nil="true"></last-retry-at>
<repository-id type="integer">98765</repository-id>
<environment-name>Staging</environment-name>
<environment-id>6</environment-id>
<retries type="integer">0</retries>
<revision type="integer">81</revision>
<state>complete</state>
<updated-at type="datetime">
2009-11-04T10:03:40Z
</updated-at>
</release>
--OR IF INVALID--
<?xml version="1.0" encoding="UTF-8"?>
<errors>
<error>Server can't be blank</error>
</errors>
r = Beanstalk::API::Release.new
r.prefix_options = { :repository_id => 58, :environment_id => 6 }
r.revision = 1
r.save