1
0
Fork 0
mirror of https://github.com/capistrano/capistrano synced 2023-03-27 23:21:18 -04:00
Commit graph

11 commits

Author SHA1 Message Date
David Michael Nelson
f79a386aad Prevents last good release from being deleted on cleanup (#1922)
* Prevents last good release from being deleted on cleanup

Issue: 1907

If there are many failed deployments the relese folders will
still be left there and eventually if deploy:cleanup is
executed it will delete the release that is referenced by the
"current" symlink, potentially causing downtime.

That change will prevent the "current release" from ever being
removed during cleanup.

* Link PR on CHANGELOG

* Verify if current dir exists

Check if current release directory exists instead of relying on
exceptions being raised.
2017-10-12 12:40:57 -07:00
Darwin D Wu
a76b0766b0 deploy:cleanup should skip only the invalid releases and continue the rotation of releases (#1899)
* deploy:cleanup should skip only the invalid releases and continue the rotation
of releases

* Add cucumber tests for deploy:cleanup

* PR feedback

* rebase on master

* add ruby 2.4.1 to specs

* vagrant works with bundler 1.15.3

* remove unnecessary command
2017-07-22 16:15:44 -07:00
Berin Larson
ed0a3f08df Adds acceptance test for rollback feature. (#1891)
* #1736 Adds acceptance test for rollback feature.
* Made vagrant_cli_command function return values explicitly over setting instance variables.
2017-07-04 19:02:58 -07:00
Takumasa Ochi
e9fd89c031 Suppress log by filtering remote refs 2017-01-06 01:29:21 +09:00
Maciek Dubinski
b3f7c46c19 Restricting the uploaded git wrapper file permissions to 700.
Additional step in the 'Creating the repo' scenario to test this adjustment.
2016-05-17 16:25:38 +02:00
Bruno Sutic
f26ee568e2 Update 'symlink linked files' cucumber scenario
When `deploy:symlink:linked_files` task is executed, only the
release path (containing the timestamp) is created.
After the task is done, it is hard to navigate over that release path
(again, because it's a timestamp) to perform the assertions.

To solve the issue, we're additionally creating a current path because
the assertion is much more easily done via `current_path`.
2014-11-17 13:47:24 +01:00
Bruno Sutic
c123fc1def Update 'checking linked files' cucumber scenarios
'Checking linked files' scenarios were passing, but the steps were not
defined at all.
This commit defines the required steps.
2014-11-17 13:47:24 +01:00
Bruno Sutic
31f6e7fde8 Replace an assertion without implementation with the one that works 2014-11-17 13:47:24 +01:00
Bruno Sutic
a91d4eef0c Update assertions for 'git:check' test scenario
Capistrano 'git:check' task executes a `git ls-remote -h #{repo_url}`
command to check if remote repo is accessible. If successful, command
output is a list of references and their SHAs.

Task should be successful and we're pretty sure remote repo will have a
`master` reference, so that's what we're asserting.

We're NOT asserting:
 * repo references other than master - likely to change
 * reference SHAs - will definitely change
2014-11-17 13:47:24 +01:00
seenmyfate
22a98f30a6 Merge branch '3.1.x'
Conflicts:
	CHANGELOG.md
	README.md
	lib/capistrano/tasks/git.rake
	lib/capistrano/templates/deploy.rb.erb
2013-11-02 11:08:10 +00:00
seenmyfate
e7399f4692 Integration tests with Vagrant and Cucumber
This commit removes the existing 'local' integration tests and replaces
them with Cucumber features running against VMs.  At this stage,
some of the assertions are pending due to the limited nature of the
response returned when executing commands through Vagrant, but the
framework is there as a starting point to build upon.

To run the suite:

    bundle exec cucumber

During development, avoid scraping the VM between runs:

    bundle exec cucumber KEEPING_RUNNING=1

Ultimately I would like to see the `TestApp` helpers along with the Vagrant
integration packaged and available for use when developing gems that work with
Cap. For now though, this closes #641
2013-09-27 11:45:55 +01:00