docs: init #2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: GameStore Deploy | ||
| on: | ||
| push: | ||
| branches: | ||
| - dev | ||
| release: | ||
| types: [published] | ||
| jobs: | ||
| deploy: | ||
| runs-on: ubuntu-latest | ||
| env: | ||
| TARGET_PATH: ${{ github.eventname == 'push' && secrets.SERVER_DEV_TARGET_PATH || secrets.SERVER_PROD_TARGET_PATH }} | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@master | ||
| - name: Prepare WordPress Zip | ||
| run: | | ||
| WP_LINK=$(cat wp-version-control.cfg) | ||
| wget -O "./wordpress.zip" $WP_LINK | ||
| - name: Prepare plugins and themes | ||
| run: zip -r wpcontent.zip plugins mu-plugins themes | ||
| - name: Copy Zips to Server | ||
| uses: appleboy/scp-action@master | ||
| with: | ||
| host: ${{ secrets.SERVER_HOST }} | ||
| username: ${{ secrets.SERVER_USER }} | ||
| password: ${{ secrets.SERVER_SSH_PASSWORD }} | ||
| port: ${{ secrets.SERVER_PORT }} | ||
| source: "wordpress.zip,wpcontent.zip" | ||
| target: ${{ env.TARGET_PATH }} | ||
| - name: Maintenance On #Это нужно чтобы не сломать сайт на время деплоя | ||
| uses: appleboy/scp-action@master | ||
| with: | ||
| host: ${{ secrets.SERVER_HOST }} | ||
| username: ${{ secrets.SERVER_USER }} | ||
| password: ${{ secrets.SERVER_SSH_PASSWORD }} | ||
| port: ${{ secrets.SERVER_PORT }} | ||
| source: ".maintenance" | ||
| target: ${{ env.TARGET_PATH }} | ||
| - name: Update WordPress Core | ||
| uses: appleboy/scp-action@master | ||
| with: | ||
| host: ${{ secrets.SERVER_HOST }} | ||
| username: ${{ secrets.SERVER_USER }} | ||
| password: ${{ secrets.SERVER_SSH_PASSWORD }} | ||
| port: ${{ secrets.SERVER_PORT }} | ||
| script: | | ||
| find "${{ env.TARGET_PATH }}" -type f -name "*.php ! -name "wp-config.php" -delete; | ||
| rm -r "${{ env.TARGET_PATH }}/wp-admin" "${{ env.TARGET_PATH }}/wp-includes"; | ||
| unzip -o "${{ env.TARGET_PATH }}/wordpress.zip" -d "${{ env.TARGET_PATH }}/"; | ||
| mv "${{ env.TARGET_PATH }}/wordpress/*" "${{ env.TARGET_PATH }}/"; | ||
| rm -r "${{ env.TARGET_PATH }}/wordpress"; | ||
| - name: Update Plugins and Themes | ||
| uses: appleboy/[email protected] | ||
| with: | ||
| host: ${{ secrets.SERVER_HOST }} | ||
| username: ${{ secrets.SERVER_USER }} | ||
| password: ${{ secrets.SERVER_SSH_PASSWORD }} | ||
| port: ${{ secrets.SERVER_PORT }} | ||
| script: | | ||
| rm -rf "${{ env.TARGET_PATH }}/wp-content/plugins" "${{ env.TARGET_PATH }}/wp-content/mu-plugins" "${{ env.TARGET_PATH }}/wp-content/themes"; | ||
| unzip -o "${{ env.TARGET_PATH }}/wpcontent.zip" -d "${{ env.TARGET_PATH }}/wp-content/"; | ||
| - name: Disable Maintenance Mode and Remove zips | ||
| uses: appleboy/[email protected] | ||
| with: | ||
| host: ${{ secrets.SERVER_HOST }} | ||
| username: ${{ secrets.SERVER_USER }} | ||
| password: ${{ secrets.SERVER_SSH_PASSWORD }} | ||
| port: ${{ secrets.SERVER_PORT }} | ||
| script: | | ||
| rm -f "${{ env.TARGET_PATH }}/.maintenance"; | ||
| rm -f "${{ env.TARGET_PATH }}/wordpress.zip"; | ||
| rm -f "${{ env.TARGET_PATH }}/wpcontent.zip"; | ||