- Add Legal Office of the Master seal (SVG design with Maltese Cross, scales of justice, legal scroll) - Create legal-office-manifest-template.json for Legal Office credentials - Update SEAL_MAPPING.md and DESIGN_GUIDE.md with Legal Office seal documentation - Complete Azure CDN infrastructure deployment: - Resource group, storage account, and container created - 17 PNG seal files uploaded to Azure Blob Storage - All manifest templates updated with Azure URLs - Configuration files generated (azure-cdn-config.env) - Add comprehensive Azure CDN setup scripts and documentation - Fix manifest URL generation to prevent double slashes - Verify all seals accessible via HTTPS
118 lines
3.5 KiB
Bash
Executable File
118 lines
3.5 KiB
Bash
Executable File
#!/bin/bash
|
|
# Prepare all credential images from SVG sources
|
|
# Converts SVG files to PNG for Entra VerifiedID compatibility
|
|
|
|
set -euo pipefail
|
|
|
|
GREEN='\033[0;32m'
|
|
BLUE='\033[0;34m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
log_info() { echo -e "${BLUE}[INFO]${NC} $1"; }
|
|
log_success() { echo -e "${GREEN}[SUCCESS]${NC} $1"; }
|
|
log_warning() { echo -e "${YELLOW}[WARNING]${NC} $1"; }
|
|
|
|
cd "$(dirname "$0")/../.."
|
|
|
|
IMAGES_DIR="assets/credential-images"
|
|
SVG_DIR="${IMAGES_DIR}/svg"
|
|
PNG_DIR="${IMAGES_DIR}/png"
|
|
|
|
mkdir -p "${SVG_DIR}" "${PNG_DIR}"
|
|
|
|
log_info "Preparing credential images from SVG sources"
|
|
echo ""
|
|
|
|
# Check for SVG files
|
|
if [ ! -d "${SVG_DIR}" ] || [ -z "$(find "${SVG_DIR}" -name "*.svg" 2>/dev/null)" ]; then
|
|
log_warning "No SVG files found in ${SVG_DIR}"
|
|
log_info "Place your SVG logo files in: ${SVG_DIR}/"
|
|
log_info "Expected files:"
|
|
echo " - default-logo.svg"
|
|
echo " - diplomatic-logo.svg"
|
|
echo " - judicial-logo.svg"
|
|
echo " - financial-logo.svg"
|
|
echo ""
|
|
log_info "Creating example structure..."
|
|
|
|
# Create example SVG files (placeholder)
|
|
cat > "${SVG_DIR}/.gitkeep" << 'EOF'
|
|
# Place your SVG logo files here
|
|
# Files will be automatically converted to PNG for Entra VerifiedID
|
|
EOF
|
|
|
|
log_info "After adding SVG files, run this script again to convert them"
|
|
exit 0
|
|
fi
|
|
|
|
# Convert each SVG to PNG
|
|
log_info "Converting SVG files to PNG..."
|
|
for svg_file in "${SVG_DIR}"/*.svg; do
|
|
if [ -f "${svg_file}" ]; then
|
|
filename=$(basename "${svg_file}" .svg)
|
|
png_file="${PNG_DIR}/${filename}.png"
|
|
|
|
log_info "Converting: ${filename}.svg → ${filename}.png"
|
|
if ./scripts/tools/convert-svg-to-png.sh "${svg_file}" "${png_file}" 200 200; then
|
|
log_success "Created: ${png_file}"
|
|
else
|
|
log_warning "Failed to convert ${filename}.svg"
|
|
fi
|
|
fi
|
|
done
|
|
|
|
# Create multiple sizes
|
|
log_info "Creating multiple sizes..."
|
|
SIZES=(200 400 800)
|
|
for size in "${SIZES[@]}"; do
|
|
for svg_file in "${SVG_DIR}"/*.svg; do
|
|
if [ -f "${svg_file}" ]; then
|
|
filename=$(basename "${svg_file}" .svg)
|
|
png_file="${PNG_DIR}/${filename}-${size}x${size}.png"
|
|
|
|
if ./scripts/tools/convert-svg-to-png.sh "${svg_file}" "${png_file}" "${size}" "${size}" 2>/dev/null; then
|
|
log_success "Created: ${filename}-${size}x${size}.png"
|
|
fi
|
|
fi
|
|
done
|
|
done
|
|
|
|
# Generate upload instructions
|
|
cat > "${PNG_DIR}/UPLOAD_INSTRUCTIONS.md" << 'EOF'
|
|
# Credential Image Upload Instructions
|
|
|
|
## Generated PNG Files
|
|
|
|
PNG files have been generated from SVG sources for Entra VerifiedID compatibility.
|
|
|
|
## Upload to CDN/Storage
|
|
|
|
1. Upload all PNG files to your CDN or static storage
|
|
2. Ensure files are publicly accessible via HTTPS
|
|
3. Update manifest templates with the image URLs
|
|
|
|
## Recommended URLs
|
|
|
|
- Default: `https://cdn.theorder.org/images/credential-logo.png`
|
|
- Diplomatic: `https://cdn.theorder.org/images/diplomatic-logo.png`
|
|
- Judicial: `https://cdn.theorder.org/images/judicial-logo.png`
|
|
- Financial: `https://cdn.theorder.org/images/financial-logo.png`
|
|
|
|
## Update Configuration
|
|
|
|
After uploading, update:
|
|
- Manifest templates in `manifests/entra/`
|
|
- Environment variable: `ENTRA_CREDENTIAL_LOGO_URI`
|
|
- Or in code: `logoUri` in `EntraVerifiedIDClient` config
|
|
EOF
|
|
|
|
log_success "Image preparation complete!"
|
|
log_info "PNG files created in: ${PNG_DIR}/"
|
|
log_info "Next steps:"
|
|
echo "1. Review generated PNG files"
|
|
echo "2. Upload to CDN/storage"
|
|
echo "3. Update manifest templates with image URLs"
|
|
echo "4. See: ${PNG_DIR}/UPLOAD_INSTRUCTIONS.md"
|
|
|