2023-11-24 12:44:32 +00:00
|
|
|
name: 'Publish to prod'
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- "main"
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
id-token: write
|
|
|
|
contents: read
|
|
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
upload-prod:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
permissions:
|
|
|
|
contents: 'read'
|
|
|
|
id-token: 'write'
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: 'actions/checkout@v3'
|
|
|
|
- name: Upload
|
|
|
|
env:
|
|
|
|
FTP_SERVER: ${{ secrets.FTP_SERVER }}
|
|
|
|
FTP_USERNAME: ${{ secrets.FTP_USERNAME }}
|
|
|
|
FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }}
|
2023-11-24 20:14:02 +00:00
|
|
|
DB_DSN: ${{ secrets.DB_DSN }}
|
|
|
|
DB_SCHEMA: ${{ secrets.DB_SCHEMA }}
|
|
|
|
DB_USERNAME: ${{ secrets.DB_USERNAME }}
|
|
|
|
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
|
2023-11-24 12:44:32 +00:00
|
|
|
run: |
|
|
|
|
sudo apt install lftp
|
|
|
|
rm -rf .git .github
|
2023-11-24 20:14:02 +00:00
|
|
|
cp credentials.templ.php credentials.php
|
|
|
|
sed -i -e "s/{DB_DSN}/${DB_DSN}/g" credentials.php
|
|
|
|
sed -i -e "s/{DB_SCHEMA}/${DB_SCHEMA}/g" credentials.php
|
|
|
|
sed -i -e "s/{DB_USERNAME}/${DB_USERNAME}/g" credentials.php
|
|
|
|
sed -i -e "s/{DB_PASSWORD}/${DB_PASSWORD}/g" credentials.php
|
2023-11-24 12:44:32 +00:00
|
|
|
mv maintenance.php maintenance-real.php
|
|
|
|
sed -e 's/false/true/g' maintenance-real.php > maintenance.php
|
|
|
|
lftp -e "
|
|
|
|
set sftp:auto-confirm yes;
|
|
|
|
set ssl:verify-certificate no;
|
|
|
|
open -u ${FTP_USERNAME},${FTP_PASSWORD} sftp://${FTP_SERVER};
|
|
|
|
put maintenance.php -o maintenance.php;
|
|
|
|
mirror --exclude=maintenance-real.php -e -R ./ ./;
|
|
|
|
put maintenance-real.php -o maintenance.php;
|
|
|
|
quit;
|
|
|
|
"
|