feat: Add optimizer command
This commit is contained in:
parent
e7237cd7b9
commit
a9891a17d4
File diff suppressed because it is too large
Load Diff
|
@ -3,9 +3,11 @@
|
|||
"version": "0.1.0",
|
||||
"author": "Simon <simon@lamelio.fr>",
|
||||
"license": "GPL-3.0",
|
||||
"devDependencies": {
|
||||
"dependencies": {
|
||||
"imagemin-cli": "^6.0.0",
|
||||
"richtypo": "4.0.7",
|
||||
"richtypo-rules-common": "4.0.2",
|
||||
"richtypo-rules-fr": "4.0.2"
|
||||
"richtypo-rules-fr": "4.0.2",
|
||||
"svgo": "^2.3.0"
|
||||
}
|
||||
}
|
||||
|
|
29
scripts/run
29
scripts/run
|
@ -7,6 +7,7 @@ set -eu
|
|||
START=`date +%s`
|
||||
BACKUP_DATE=`date +%Y%m%d`
|
||||
BACKUP_LOGS_FILENAME=${BACKUP_DATE}_${URL}_logs.tar
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" # https://stackoverflow.com/a/246128/6429616
|
||||
|
||||
logs_backup() {
|
||||
echo "📥 Sauvegarde les logs"
|
||||
|
@ -78,6 +79,33 @@ favicons() {
|
|||
convert static/logo.png -resize 32x32 -colors 16 \( -clone 0 -resize 16x16 -extent 16x16 \) \( -clone 0 -resize 32x32 -extent 32x32 \) -delete 0 static/favicon.ico
|
||||
}
|
||||
|
||||
optimizer() {
|
||||
echo
|
||||
echo "🖼️ Optimisation des images"
|
||||
echo
|
||||
# $SCRIPT_DIR/../node_modules/.bin/imagemin $PWD/static -o $PWD/static
|
||||
find ./static ./content -type f | xargs -I % bash -c '$0/../node_modules/.bin/imagemin % -o $(dirname %)' $SCRIPT_DIR
|
||||
}
|
||||
|
||||
optimizer_git_image() {
|
||||
for file in $(git diff --name-only --diff-filter=M --ignore-submodules); do
|
||||
last_commit=`git log -n 1 --pretty=format:%H -- $file`
|
||||
current_size=`cat $file | wc -c`
|
||||
old_size=`git cat-file -p $last_commit:$file | wc -c`
|
||||
|
||||
# https://stackoverflow.com/a/48999882/6429616
|
||||
check_git_command=`git config --global --list | grep amend-to | wc -c`
|
||||
if [ "$check_git_command" -ne 187 ]; then
|
||||
git config --global alias.amend-to '!f() { SHA=`git rev-parse "$1"`; git stash -k && git commit --fixup "$SHA" && GIT_SEQUENCE_EDITOR=true git rebase --interactive --autosquash "$SHA^" && git stash pop; }; f'
|
||||
fi
|
||||
|
||||
if [ "$current_size" -lt "$old_size" ]; then
|
||||
git add $file
|
||||
git amend-to $last_commit
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
help_generic() {
|
||||
echo
|
||||
echo "💡 Aide 💡"
|
||||
|
@ -93,6 +121,7 @@ help_generic() {
|
|||
echo "- ./run logs_restore 📤 Restaure les logs"
|
||||
echo "- ./run stats 🌠 Mise à jour de GoAccess"
|
||||
echo "- ./run favicons 🔍 Génération des favicons à partir d'une image 512px"
|
||||
echo "- ./run optimizer 🖼️ Optimisation des images"
|
||||
}
|
||||
|
||||
end() {
|
||||
|
|
Loading…
Reference in New Issue