capistrano-the-best-compression 0.0.11
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 +7 -0
- data/README.md +32 -0
- data/Rakefile +1 -0
- data/lib/capistrano/the_best_compression.rb +1 -0
- data/lib/tasks/compress.rake +19 -0
- data/lib/version.rb +3 -0
- metadata +48 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e9ca50b1b94403bd7d8a0aab6b2b72e2becb4a6b
|
4
|
+
data.tar.gz: 4f3e10198ac3925d49d36ebb515c1d02dc23d406
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 46f8f79abd6d2ef738bbb9b217f50793785ad0c82a00e4c90a5aaf83fa71d96671a3e2f71532984319eb0cad155f65909c3f92543888c0d8d919a705684b8484
|
7
|
+
data.tar.gz: 9e18d2e6fee0551e6b018277e1f3628f64dde132e0b5f672bfb46084b0e860942ba663108df122a44e0065f30b3c7b1a6575f2ba7f6bfa5ea4ef3f9f7c7965de
|
data/README.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# CapistranoTheBestCompression
|
2
|
+
|
3
|
+
Optimized assets compressor for Capistrano.
|
4
|
+
|
5
|
+
### Getting Started
|
6
|
+
|
7
|
+
Add the best compression to your Gemfile and `bundle install`:
|
8
|
+
|
9
|
+
```ruby
|
10
|
+
gem 'capistrano-the-best-compression', git: 'git@github.com:SumatoSoft/capistrano-the-best-compression.git'
|
11
|
+
```
|
12
|
+
|
13
|
+
Run on your server:
|
14
|
+
|
15
|
+
```bash
|
16
|
+
$ sudo apt-get install zopfli
|
17
|
+
$ cd /tmp && git clone https://github.com/google/zopfli.git && cd zopfli && make zopflipng && sudo mv zopflipng /usr/bin/
|
18
|
+
```
|
19
|
+
|
20
|
+
Add to your Capfile:
|
21
|
+
|
22
|
+
```ruby
|
23
|
+
require 'capistrano/the_best_compression'
|
24
|
+
```
|
25
|
+
|
26
|
+
And to deploy.rb:
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
before 'deploy:publishing', 'deploy:compress_assets'
|
30
|
+
before 'deploy:publishing', 'deploy:compress_png'
|
31
|
+
```
|
32
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
import './lib/tasks/compress.rake'
|
@@ -0,0 +1 @@
|
|
1
|
+
load File.expand_path('../../tasks/compress.rake', __FILE__)
|
@@ -0,0 +1,19 @@
|
|
1
|
+
namespace :deploy do
|
2
|
+
desc 'Compress assets'
|
3
|
+
task :compress_assets, :names do |_, args|
|
4
|
+
on roles(:app) do
|
5
|
+
assets_path = release_path.join('public', 'assets')
|
6
|
+
names = args[:names].is_a?(Array) && !(args[:names].empty?) ? args[:names] : %w(*.js *.css *.ico *.svg *.pdf)
|
7
|
+
names_args = "#{names.join('" -o -name "')}"
|
8
|
+
execute "find -L #{assets_path} \\( -name \"#{names_args}\" \\) -exec bash -c \"[ ! -f '{}.gz' ] && zopfli --gzip --i20 '{}'\" \\; "
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
desc 'Compress pngs'
|
13
|
+
task :compress_png do
|
14
|
+
on roles(:app) do
|
15
|
+
assets_path = release_path.join('public', 'assets')
|
16
|
+
execute "find -L #{assets_path} \\( -name *.png \\) -not \\( -name 'zopflied_*.png' \\) -exec bash -c 'FULLPATH='{}'; FILENAME=${FULLPATH##*/}; BASEDIRECTORY=${FULLPATH%$FILENAME}; [ ! -f \"${BASEDIRECTORY}zopflied_${FILENAME}\" ] && zopflipng \"${FULLPATH}\" \"${BASEDIRECTORY}zopflied_${FILENAME}\" ' \\; "
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/version.rb
ADDED
metadata
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: capistrano-the-best-compression
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.11
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- SumatoSoft
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-12-02 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: Capistrano the best compression gem
|
14
|
+
email:
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- README.md
|
20
|
+
- Rakefile
|
21
|
+
- lib/capistrano/the_best_compression.rb
|
22
|
+
- lib/tasks/compress.rake
|
23
|
+
- lib/version.rb
|
24
|
+
homepage:
|
25
|
+
licenses:
|
26
|
+
- MIT
|
27
|
+
metadata: {}
|
28
|
+
post_install_message:
|
29
|
+
rdoc_options: []
|
30
|
+
require_paths:
|
31
|
+
- lib
|
32
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
33
|
+
requirements:
|
34
|
+
- - ">="
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '0'
|
37
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '0'
|
42
|
+
requirements: []
|
43
|
+
rubyforge_project:
|
44
|
+
rubygems_version: 2.4.6
|
45
|
+
signing_key:
|
46
|
+
specification_version: 4
|
47
|
+
summary: Capistrano the Best Compression
|
48
|
+
test_files: []
|