acquia_toolbelt 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NzkwNGEyMjZlNGVjYTk1M2VlNjI0Y2QxNTY1ZmVhMTRkNGYyMzc0Ng==
4
+ NzhkZmIyMzI0ZTE0OWMyNzJkMzc5NzRjOTI5NjE2ZGQyODJlMzVkNg==
5
5
  data.tar.gz: !binary |-
6
- ZmVhNzBhMWRhYjVmNDFjZjBiN2VmMWMxOWQyODdlZDQ2NTA0NTcxNg==
6
+ YmJlOWZmNDY1MjQ4MmJkYmMwZmE2MzQ5ZDcxMmEwYzA2MzZhN2NlNw==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- YWVlMDdhYjFmOTEyYTJkOTYzNzNlYTQyNGRiYmYzMDczODYzZDMzNWVmMmY5
10
- NDE0OTg4ZThmMTg1YzZlNTUzMmE0MWVjODVhYzVkNDc1MDk1OGM5ZDNhMjAw
11
- OGE2MWFlYjRkNGMyOTQ3YzlkMzU5YzM2Nzc4ZmZjYmYxMWQ2OGY=
9
+ N2NlOWIyNDIxMmNkYTVlYTJhNDRlMDA5MGEzNWY5ZWIzNGU3MTczMjU0NGI1
10
+ YzQ0YTA2Y2Y2ZThkMWI3MTEyM2RjYjljODhlMDcxZjdlOWUzYTg2MTEzOTBl
11
+ MDYzZDAyNDhiZDAyYWUwYjk4YjBkZmMxNTJmOTc5ODE2ZGNlOWI=
12
12
  data.tar.gz: !binary |-
13
- MjI3NWQ5YTAwNGRjN2U1ZGU3ZjViZTBiZjNiYjQzMzY2ZDU2ZmJjYmUyZWI5
14
- ODY3NTdjZjc4OTViNzA2ZjA3YTA2Yzg1YzA4MTU4NTJmMDc1MzgyODA5NjQy
15
- NjU3YTFiZDk4YjQ2NTAwNWYxYTI0YWY3NDFhNDU0ZGZjYjI3NzA=
13
+ ZGNjMDI1ZTAwN2UzMWFmN2I2ZmFjMWFmYzRjMzU3NzE4MTJlZTNlYmMzZDY0
14
+ M2U1NzE2ZWMwMWU2ZmJhYjc1NWQ0M2RlYTNiYTNmZmE0YmNhOTY3ZDVhN2Q3
15
+ ZDQ4M2E2ZTYyZmUyYmM3MzQwNTYzYzFiOTc0MzQ0N2E2NzQ5ZWQ=
data/bin/acquia CHANGED
@@ -58,6 +58,9 @@ class Acquia < Thor
58
58
  when "POST"
59
59
  response = conn.post "https://cloudapi.acquia.com/v1/#{resource}.json", data.to_json
60
60
  JSON.parse response.body
61
+ when "CODE-DEPLOY-POST"
62
+ response = conn.post "https://cloudapi.acquia.com/v1/#{resource}.json?path=#{data[:release]}"
63
+ JSON.parse response.body
61
64
  when "DELETE"
62
65
  response = conn.delete "https://cloudapi.acquia.com/v1/#{resource}.json"
63
66
  JSON.parse response.body
@@ -399,19 +402,18 @@ class Acquia < Thor
399
402
  # Send off a DELETE request to clear the web cache for a particular domain or
400
403
  # environment.
401
404
  #
402
- # Note: Clearing a whole environment is pretty perfomance heavy - use with
405
+ # Note: Clearing a whole environment is pretty performance heavy - use with
403
406
  # caution!
404
407
  #
405
408
  # Returns a status message form the purge request.
406
409
  desc "purge-domain <subscription> <environment>", "Clear the web cache of an environment or domain."
407
- option :environment, :aliases => "-e"
408
410
  option :domain, :aliases => "-d"
409
411
  def purge_domain(subscription, environment)
410
412
  domain = options[:domain]
411
413
 
412
- # If the domain is not defined, we are going to clear a whole environmnt.
414
+ # If the domain is not defined, we are going to clear a whole environment.
413
415
  # This can have severe performance impacts on your environments. We need to
414
- # be sure this is defintely what you want to do.
416
+ # be sure this is definitely what you want to do.
415
417
  if domain
416
418
  purge_acquia_domain(subscription, environment, domain)
417
419
  else
@@ -474,6 +476,21 @@ class Acquia < Thor
474
476
  file_copy = acquia_api_call "/sites/#{subscription}/files-copy/#{source}/#{target}", "POST"
475
477
  success "File copy from #{source} to #{destination} has started." if file_copy["id"]
476
478
  end
479
+
480
+ # Public: Deploy a VCS branch or tag to an environment.
481
+ #
482
+ # NB: Unfortunately the API endpoint for this functionality is formed a little
483
+ # differently to the others. It requires that the VCS path is appended to the
484
+ # URL compared to plain old POST request with parameters as a payload. To
485
+ # combat this, a pseudo request is made. It is a POST request at heart, just
486
+ # named differently to allow this functionality to be separated out.
487
+ #
488
+ # Returns a status message string.
489
+ desc "deploy-code <subscription> <environment> <release>", "Deploy a specific VCS branch or tag to an environment."
490
+ def deploy_code(subscription, environment, release)
491
+ deploy_code = acquia_api_call "sites/#{subscription}/envs/#{environment}/code-deploy", "CODE-DEPLOY-POST", :release => "#{release}"
492
+ success "#{release} has been deployed to #{environment}." if deploy_code["id"]
493
+ end
477
494
  end
478
495
 
479
496
  Acquia.start
@@ -1,3 +1,3 @@
1
1
  module AcquiaToolbelt
2
- VERSION = "1.2.0"
2
+ VERSION = "1.3.0"
3
3
  end
data/readme.md CHANGED
@@ -29,6 +29,7 @@ Commands:
29
29
  acquia delete-database <subscription> <database> # Remove all instances of a database.
30
30
  acquia delete-domain <subscription> <environment> <domain> # Delete a domain from an environment.
31
31
  acquia delete-svn-user <subscription> <userid> # Delete a SVN user.
32
+ acquia deploy-code <subscription> <environment> <release> # Deploy a specific VCS branch or tag to an environment.
32
33
  acquia help [COMMAND] # Describe available commands or one specific command
33
34
  acquia list-database-backups <subscription> <environment> <database> # Get all backups for a database instance.
34
35
  acquia list-databases <subscription> # See information about the databases within a subscription.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acquia_toolbelt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jacob Bednarz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-10 00:00:00.000000000 Z
11
+ date: 2013-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -134,7 +134,6 @@ files:
134
134
  - Gemfile
135
135
  - LICENSE
136
136
  - Rakefile
137
- - acquia_toolbelt-0.0.1.gem
138
137
  - acquia_toolbelt.gemspec
139
138
  - bin/acquia
140
139
  - lib/acquia_toolbelt.rb
Binary file