capistrano-django 3.5.6 → 3.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/lib/capistrano/django.rb +16 -14
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 610ffd7c696759bb05a87214f3c7301c05052ed8d4b2c75951c33fa8eb665b20
|
4
|
+
data.tar.gz: 1435eb798cae51f1d6466cd26e2322df8b85463d1f24bf1fc0df30afc943eb72
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 50d988b56eea874fafda32e934724d15bbec8b3c5686bfb9c698b8b691563d7c937f4fa71ba41c50ff1ddea3ad02d45449ddf55cb65ea5834d6a851541cf443e
|
7
|
+
data.tar.gz: 97abe781ea412c749c0c4be94ff54bbfa716406fcd242a1d369295e2711ed4c978aa82291788b4b2752da4ccb91512b4d846f0d9a31dd83520f03ca8861c9366
|
data/lib/capistrano/django.rb
CHANGED
@@ -222,25 +222,27 @@ namespace :s3 do
|
|
222
222
|
desc 'Clean up old s3 buckets'
|
223
223
|
task :cleanup do
|
224
224
|
if fetch(:create_s3_bucket)
|
225
|
+
raw_directories = []
|
225
226
|
on roles(:web) do
|
226
227
|
releases = capture(:ls, '-xtr', releases_path).split
|
227
228
|
if releases.count >= fetch(:keep_releases)
|
228
|
-
|
229
|
-
require 'fog'
|
230
|
-
storage = Fog::Storage.new({
|
231
|
-
aws_access_key_id: fetch(:aws_access_key),
|
232
|
-
aws_secret_access_key: fetch(:aws_secret_key),
|
233
|
-
provider: "AWS"
|
234
|
-
})
|
235
|
-
buckets = storage.directories.all.select { |b| b.key.start_with? fetch(:s3_bucket_prefix) }
|
236
|
-
buckets = buckets.select { |b| not directories.include?(b.key.split('-').last) }
|
237
|
-
buckets.each do |old_bucket|
|
238
|
-
files = old_bucket.files.map{ |file| file.key }
|
239
|
-
storage.delete_multiple_objects(old_bucket.key, files) unless files.empty?
|
240
|
-
storage.delete_bucket(old_bucket.key)
|
241
|
-
end
|
229
|
+
raw_directories.concat releases.last(fetch(:keep_releases))
|
242
230
|
end
|
243
231
|
end
|
232
|
+
directories = raw_directories.uniq
|
233
|
+
require 'fog'
|
234
|
+
storage = Fog::Storage.new({
|
235
|
+
aws_access_key_id: fetch(:aws_access_key),
|
236
|
+
aws_secret_access_key: fetch(:aws_secret_key),
|
237
|
+
provider: "AWS"
|
238
|
+
})
|
239
|
+
buckets = storage.directories.all.select { |b| b.key.start_with? fetch(:s3_bucket_prefix) }
|
240
|
+
buckets = buckets.select { |b| not directories.include?(b.key.split('-').last) }
|
241
|
+
buckets.each do |old_bucket|
|
242
|
+
files = old_bucket.files.map{ |file| file.key }
|
243
|
+
storage.delete_multiple_objects(old_bucket.key, files) unless files.empty?
|
244
|
+
storage.delete_bucket(old_bucket.key)
|
245
|
+
end
|
244
246
|
end
|
245
247
|
end
|
246
248
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capistrano-django
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew J. Morrison
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-04-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capistrano
|
@@ -50,8 +50,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
50
50
|
- !ruby/object:Gem::Version
|
51
51
|
version: '0'
|
52
52
|
requirements: []
|
53
|
-
|
54
|
-
rubygems_version: 2.6.12
|
53
|
+
rubygems_version: 3.0.3
|
55
54
|
signing_key:
|
56
55
|
specification_version: 4
|
57
56
|
summary: capistrano-django - Welcome to easy deployment with Ruby over SSH for Django
|