1
0
mirror of https://github.com/privacyguides/privacyguides.org.git synced 2025-07-25 12:51:14 +00:00

Create GitHub Action

This commit is contained in:
2021-05-01 16:24:18 -05:00
parent 61a8abbd15
commit 01995be1f4
7 changed files with 117 additions and 15 deletions

35
.github/workflows/production.yml vendored Normal file
View File

@@ -0,0 +1,35 @@
name: Production Deploy
concurrency:
group: Production
cancel-in-progress: true
on:
push:
branches: [ main ]
env:
FONTAWESOME_NPM_AUTH_TOKEN: ${{ secrets.FONTAWESOME_NPM_AUTH_TOKEN }}
jobs:
deploy:
name: Rsync Deploy
runs-on: ubuntu-latest
environment: production
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- uses: actions/setup-node@v2
with:
node-version: '14'
- name: Build website
uses: ./.github/actions/build
- name: Copy built site to production
run: |
mkdir -p ~/.ssh
echo "${{ secrets.SSH_KEY }}" > ~/.ssh/id_rsa
chmod 700 ~/.ssh/id_rsa
ssh-keyscan -H ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts
rsync -azP --delete ${{ github.workspace }}/_site/ ${{ secrets.SSH_USERNAME }}@${{ secrets.SSH_HOST }}:privacyguides.org-deploy

65
.github/workflows/tests.yml vendored Normal file
View File

@@ -0,0 +1,65 @@
name: Code tests
on: [push, pull_request]
env:
FONTAWESOME_NPM_AUTH_TOKEN: ${{ secrets.FONTAWESOME_NPM_AUTH_TOKEN }}
jobs:
deps:
name: "Dependency Install"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- uses: actions/setup-node@v2
with:
node-version: '14'
- run: npm install
- run: npm run assets:install
build:
name: "Jekyll Build"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- uses: actions/setup-node@v2
with:
node-version: '14'
- name: Build website
uses: ./.github/actions/build
link:
name: "Broken Hyperlink Check"
runs-on: ubuntu-latest
needs: [deps, build]
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- uses: actions/setup-node@v2
with:
node-version: '14'
- name: Build website
uses: ./.github/actions/build
- name: Copy built site to production
run: |
mv ${{ github.workspace }}/_site /tmp/
mkdir -p /tmp/src
mv ${{ github.workspace }}/* /tmp/src/
mkdir -p ${{ github.workspace }}/src
mv /tmp/src/* ${{ github.workspace }}/src/
mv /tmp/_site ${{ github.workspace }}/
- name: Hyperlink link checker
uses: untitaker/hyperlink@0.1.15
with:
args: _site/ --sources src/