Skip to content

Commit

Permalink
[N/A] Boilerplate Github files
Browse files Browse the repository at this point in the history
  • Loading branch information
bd-viget committed Jan 14, 2025
1 parent 9462874 commit 1403fa6
Show file tree
Hide file tree
Showing 2 changed files with 99 additions and 0 deletions.
70 changes: 70 additions & 0 deletions .github/workflows/deploy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: Build and Deploy

on:
push:
branches:
- main

concurrency:
group: deploy
cancel-in-progress: true

jobs:
build_deploy:
name: Build and Deploy
runs-on: ubuntu-latest
env:
SSH_AUTH_SOCK: /tmp/ssh_agent.sock
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup SSH key and known_hosts
run: |
mkdir -p -m 700 ~/.ssh
ssh-agent -a $SSH_AUTH_SOCK > /dev/null
ssh-add - <<< "${{ secrets.DEPLOY_KEY }}"
ssh-keyscan ${{ secrets.DEPLOY_TARGET }} >> ~/.ssh/known_hosts
ssh-keyscan ${{ secrets.DEPLOY_KIT_TARGET }} >> ~/.ssh/known_hosts
- name: Use Node.js 20
uses: actions/setup-node@v4
with:
node-version: 20

# Set up composer caching
- name: Cache Composer dependencies
uses: actions/cache@v4
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }}

# Build Blocks Toolkit
- name: Build Blocks Toolkit plugin
run: |
npm ci
npm run build
working-directory: wp-content/plugins/viget-blocks-toolkit

# Deploy code
- name: Deploy Starter
run: |
ssh ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_TARGET }} "\
sudo chown -R ${{ secrets.DEPLOY_USER }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content &&\
sudo rm -rf ${{ secrets.APP_PATH }}/wp-content/plugins/viget-blocks-toolkit &&\
rsync -rlptzv --exclude="node_modules" ./wp-content/ ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_TARGET }}:${{ secrets.APP_PATH }}/wp-content/
ssh ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_TARGET }} "\
sudo chown -R ${{ secrets.DEPLOY_USER }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content &&\
sudo chown -R ${{ secrets.DEPLOY_DAEMON }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content/plugins"
- name: Deploy Kit
run: |
ssh ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_KIT_TARGET }} "\
sudo chown -R ${{ secrets.DEPLOY_USER }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content &&\
sudo rm -rf ${{ secrets.APP_PATH }}/wp-content/plugins/viget-blocks-toolkit &&\
rsync -rlptzv --exclude="node_modules" ./wp-content/ ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_KIT_TARGET }}:${{ secrets.APP_PATH }}/wp-content/
ssh ${{ secrets.DEPLOY_USER }}@${{ secrets.DEPLOY_KIT_TARGET }} "\
sudo chown -R ${{ secrets.DEPLOY_USER }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content &&\
sudo chown -R ${{ secrets.DEPLOY_DAEMON }}:${{ secrets.DEPLOY_DAEMON }} ${{ secrets.APP_PATH }}/wp-content/plugins"
29 changes: 29 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Create Release

on:
push:
tags:
- 'v*' # Create release for any tag starting with 'v'

concurrency:
group: release
cancel-in-progress: true

jobs:
release:
name: Create GitHub Release
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Create GitHub Release
run: |
gh release create "$TAG" --verify-tag \
--title "$TAG: $(date '+%Y-%m-%d')" \
--generate-notes \
--latest
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG: ${{ github.ref_name }}

0 comments on commit 1403fa6

Please sign in to comment.