feat: готовый бренд ZoomStage и минимальный доменный подвал (refs #12)
deploy-preland / deploy zoomstage.online (push) Successful in 44s
deploy-preland / deploy zoomstage.online (push) Successful in 44s
This commit is contained in:
1 parent
a2c3197a16
commit
ec087ea636
24 files changed
+365
-237
No files matched your search
+28
-11
@@ -65,16 +65,32 @@ jobs:
|
||||
SSHPASS="$SFTP_PASS" sshpass -e sftp -oBatchMode=no -oStrictHostKeyChecking=yes -oUserKnownHostsFile="$known_hosts" -b "$batch" "$SFTP_USER@$SFTP_HOST" ;;
|
||||
*) exit "$changed" ;;
|
||||
esac
|
||||
# preland#11: отдельное прямое разрешение21.10 на актуальные реквизиты.
|
||||
changed=0
|
||||
php bin/ensure-requisites-config.php "$config" || changed=$?
|
||||
case "$changed" in
|
||||
0) ;;
|
||||
10) printf '%s\n' "put -p $config $REMOTE_DIR/config.json" > "$batch"
|
||||
SSHPASS="$SFTP_PASS" sshpass -e sftp -oBatchMode=no -oStrictHostKeyChecking=yes -oUserKnownHostsFile="$known_hosts" -b "$batch" "$SFTP_USER@$SFTP_HOST" ;;
|
||||
*) exit "$changed" ;;
|
||||
esac
|
||||
|
||||
- name: Apply approved domain brand only if needed
|
||||
env:
|
||||
SFTP_HOST: ${{ secrets.ZOOMPIXEL_SFTP_HOST }}
|
||||
SFTP_USER: ${{ secrets.ZOOMPIXEL_SFTP_USER }}
|
||||
SFTP_PASS: ${{ secrets.ZOOMPIXEL_SFTP_PASS }}
|
||||
SFTP_KNOWN_HOSTS: ${{ secrets.ZOOMPIXEL_SFTP_KNOWN_HOSTS }}
|
||||
run: |
|
||||
set -eu
|
||||
status=0
|
||||
php bin/release-brand.php --status "$PRELAND_URL" || status=$?
|
||||
case "$status" in 0) exit 0 ;; 10) ;; *) exit "$status" ;; esac
|
||||
# Только точная ранее согласованная пара заменяется по preland#12.
|
||||
# Обычные выпуски с правильным брендом сюда не доходят.
|
||||
umask 077
|
||||
known_hosts=$(mktemp); batch=$(mktemp); files=$(mktemp)
|
||||
trap 'rm -f "$known_hosts" "$batch" "$files"' EXIT
|
||||
printf '%s\n' "$SFTP_KNOWN_HOSTS" > "$known_hosts"
|
||||
php bin/release-brand.php --files "$PRELAND_URL" > "$files"
|
||||
revision=$(git rev-parse HEAD)
|
||||
while read -r source target; do
|
||||
# Оборванный put не должен оставлять усечённый действующий SVG.
|
||||
printf '%s\n' "put -p $source $REMOTE_DIR/$target.upload-$revision" >> "$batch"
|
||||
printf '%s\n' "rename $REMOTE_DIR/$target.upload-$revision $REMOTE_DIR/$target" >> "$batch"
|
||||
done < "$files"
|
||||
SSHPASS="$SFTP_PASS" sshpass -e sftp -oBatchMode=no -oStrictHostKeyChecking=yes -oUserKnownHostsFile="$known_hosts" -b "$batch" "$SFTP_USER@$SFTP_HOST"
|
||||
php bin/release-brand.php --status "$PRELAND_URL"
|
||||
- name: Upload over SFTP
|
||||
env:
|
||||
SFTP_HOST: ${{ secrets.ZOOMPIXEL_SFTP_HOST }}
|
||||
@@ -126,7 +142,7 @@ jobs:
|
||||
page2=$(curl -fsS --max-time 30 "$PRELAND_URL/?indpic=2&nc=$(date +%s)")
|
||||
printf '%s' "$page2" | grep -q '2/01_mob_1-source.avif' || { echo "indpic=2 не использует второй набор примеров"; exit 1; }
|
||||
php bin/release-assets.php --remote "$PRELAND_URL"
|
||||
php bin/release-assets.php --stage-requisites "$PRELAND_URL"
|
||||
php bin/release-brand.php --status "$PRELAND_URL"
|
||||
|
||||
- name: Remove previously published internal files
|
||||
env:
|
||||
@@ -141,6 +157,7 @@ jobs:
|
||||
trap 'rm -f "$known_hosts" "$batch"' EXIT
|
||||
printf '%s\n' "$SFTP_KNOWN_HOSTS" > "$known_hosts"
|
||||
# Только точно известные служебные файлы прежнего deploy, без рекурсии.
|
||||
printf '%s\n' "-rm $REMOTE_DIR/requisites.html" > "$batch"
|
||||
git ls-files tests bin docs/superpowers | while read -r file; do
|
||||
printf '%s\n' "-rm $REMOTE_DIR/$file" >> "$batch"
|
||||
done
|
||||
|
||||
Reference in new issue
Block a user