Files
avz-site/scripts/preserve-assets.sh

152 lines
5.3 KiB
Bash

#!/bin/bash
# ============================================================================
# Script de Preservacao de Assets - Avanzato
# ============================================================================
# Uso: bash scripts/preserve-assets.sh [pasta-do-site-no-servidor]
#
# Este script copia assets personalizados (logo, imagens, etc.)
# para a pasta do site apos o deploy, SEM alterar os arquivos do build.
#
# EXEMPLO:
# bash scripts/preserve-assets.sh /var/www/avanzato
# ============================================================================
set -e
# Cores para output
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m' # No Color
# Diretorio do script
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
# Diretorio dos assets personalizados
ASSETS_DIR="${PROJECT_DIR}/custom-assets"
# Diretorio de destino (passado como argumento ou usa default)
DEST_DIR="${1:-/var/www/avanzato/dist}"
echo "=========================================="
echo " Avanzato - Preservacao de Assets"
echo "=========================================="
echo ""
# Verifica se a pasta de assets existe
if [ ! -d "$ASSETS_DIR" ]; then
echo -e "${YELLOW}Pasta custom-assets/ nao encontrada.${NC}"
echo "Criando estrutura em: ${ASSETS_DIR}"
mkdir -p "$ASSETS_DIR"
mkdir -p "$ASSETS_DIR/images"
mkdir -p "$ASSETS_DIR/logo"
mkdir -p "$ASSETS_DIR/fonts"
echo -e "${GREEN}Estrutura criada!${NC} Coloque seus assets nesta pasta."
echo ""
fi
# Verifica se o destino existe
if [ ! -d "$DEST_DIR" ]; then
echo -e "${RED}Erro: Diretorio de destino nao existe: ${DEST_DIR}${NC}"
echo "Usage: bash scripts/preserve-assets.sh /caminho/do/site"
exit 1
fi
echo -e "${GREEN}Assets origem:${NC} ${ASSETS_DIR}"
echo -e "${GREEN}Assets destino:${NC} ${DEST_DIR}"
echo ""
# Contador de arquivos copiados
COPIED=0
# ============================================================================
# 1. LOGO
# ============================================================================
if [ -f "$ASSETS_DIR/logo/logo.png" ]; then
echo -e "${GREEN}[LOGO]${NC} Copiando logo.png..."
cp "$ASSETS_DIR/logo/logo.png" "$DEST_DIR/assets/logo.png"
COPIED=$((COPIED + 1))
fi
if [ -f "$ASSETS_DIR/logo/logo.svg" ]; then
echo -e "${GREEN}[LOGO]${NC} Copiando logo.svg..."
cp "$ASSETS_DIR/logo/logo.svg" "$DEST_DIR/assets/logo.svg"
COPIED=$((COPIED + 1))
fi
if [ -f "$ASSETS_DIR/logo/favicon.ico" ]; then
echo -e "${GREEN}[LOGO]${NC} Copiando favicon.ico..."
cp "$ASSETS_DIR/logo/favicon.ico" "$DEST_DIR/favicon.ico"
COPIED=$((COPIED + 1))
fi
if [ -f "$ASSETS_DIR/logo/favicon.svg" ]; then
echo -e "${GREEN}[LOGO]${NC} Copiando favicon.svg..."
cp "$ASSETS_DIR/logo/favicon.svg" "$DEST_DIR/favicon.svg"
COPIED=$((COPIED + 1))
fi
# ============================================================================
# 2. IMAGENS
# ============================================================================
if [ -d "$ASSETS_DIR/images" ] && [ "$(ls -A "$ASSETS_DIR/images/" 2>/dev/null)" ]; then
echo -e "${GREEN}[IMAGENS]${NC} Copiando imagens personalizadas..."
for img in "$ASSETS_DIR/images"/*; do
if [ -f "$img" ]; then
filename=$(basename "$img")
cp "$img" "$DEST_DIR/assets/${filename}"
echo " -> ${filename}"
COPIED=$((COPIED + 1))
fi
done
fi
# ============================================================================
# 3. FONTS
# ============================================================================
if [ -d "$ASSETS_DIR/fonts" ] && [ "$(ls -A "$ASSETS_DIR/fonts/" 2>/dev/null)" ]; then
echo -e "${GREEN}[FONTES]${NC} Copiando fontes personalizadas..."
for font in "$ASSETS_DIR/fonts"/*; do
if [ -f "$font" ]; then
filename=$(basename "$font")
cp "$font" "$DEST_DIR/assets/${filename}"
echo " -> ${filename}"
COPIED=$((COPIED + 1))
fi
done
fi
# ============================================================================
# 4. ARQUIVOS EXTRAS (robots.txt, sitemap, etc.)
# ============================================================================
if [ -f "$ASSETS_DIR/robots.txt" ]; then
echo -e "${GREEN}[EXTRA]${NC} Copiando robots.txt personalizado..."
cp "$ASSETS_DIR/robots.txt" "$DEST_DIR/robots.txt"
COPIED=$((COPIED + 1))
fi
if [ -f "$ASSETS_DIR/sitemap.xml" ]; then
echo -e "${GREEN}[EXTRA]${NC} Copiando sitemap.xml personalizado..."
cp "$ASSETS_DIR/sitemap.xml" "$DEST_DIR/sitemap.xml"
COPIED=$((COPIED + 1))
fi
# ============================================================================
# RESULTADO
# ============================================================================
echo ""
echo "=========================================="
if [ $COPIED -gt 0 ]; then
echo -e "${GREEN}Concluido! ${COPIED} arquivo(s) preservado(s).${NC}"
else
echo -e "${YELLOW}Nenhum arquivo customizado encontrado.${NC}"
echo ""
echo "Para usar, coloque seus arquivos em:"
echo " ${ASSETS_DIR}/logo/ -> logo.png, logo.svg, favicon.ico"
echo " ${ASSETS_DIR}/images/ -> imagens personalizadas"
echo " ${ASSETS_DIR}/fonts/ -> fontes personalizadas"
echo " ${ASSETS_DIR}/ -> robots.txt, sitemap.xml"
fi
echo "=========================================="