name: Immagini della pagina wordpress.org # Le immagini della pagina pubblica (icona, banner, screenshot) NON stanno # dentro al plugin: stanno in `assets/` del repository SVN, che wordpress.org # tratta a parte e senza versioni. Per questo hanno un giro loro: cambiare # l'icona non deve costringere a inventare un rilascio. # # Cosa mettere in .wordpress-org/ (i nomi sono obbligatori): # icon-256x256.png icona nella directory e nel pannello di WordPress # icon-128x128.png stessa icona per gli schermi normali # banner-1544x500.png testata della pagina, retina # banner-772x250.png testata della pagina, schermi normali # screenshot-1.png ... numerate, con le didascalie in `== Screenshots ==` # del readme.txt, nello stesso ordine # # Secrets: gli stessi del rilascio (WPORG_SVN_PASSWORD). on: push: branches: [main] paths: ['.wordpress-org/**'] workflow_dispatch: env: SVN_URL: https://plugins.svn.wordpress.org/piazza-in-festa jobs: immagini: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Strumenti (svn, rsync) run: | set -e apt-get update -qq apt-get install -y --no-install-recommends subversion rsync ca-certificates - name: Copia di lavoro SVN (solo assets) run: | set -e svn co --depth immediates "$SVN_URL" svn svn up --set-depth infinity svn/assets - name: Allinea le immagini run: | set -e if [ -z "$(ls -A .wordpress-org 2>/dev/null)" ]; then echo "Non c'e' niente in .wordpress-org/, non tocco la pagina." >&2 exit 1 fi rsync -a --delete --exclude '.svn' .wordpress-org/ svn/assets/ cd svn svn status | sed -n 's/^![[:space:]]*//p' | while IFS= read -r morto; do svn rm --force "$morto" done svn add --force assets svn status - name: Pubblica env: SVN_USER: ${{ vars.WPORG_SVN_USERNAME || 'thisloke' }} SVN_PASS: ${{ secrets.WPORG_SVN_PASSWORD }} run: | set -e cd svn # Senza modifiche non si commita: un `svn ci` a vuoto non fa danni ma # sporca la cronologia della directory con revisioni inutili. if [ -z "$(svn status)" ]; then echo "Le immagini su wordpress.org sono gia' queste, niente da fare." exit 0 fi svn ci \ -m "Aggiorna le immagini della pagina" \ --username "$SVN_USER" \ --password "$SVN_PASS" \ --non-interactive --no-auth-cache --trust-server-cert