66 lines
2.0 KiB
YAML
66 lines
2.0 KiB
YAML
name: "Alice Sites pull"
|
|
description: "Updates and builds alice sites"
|
|
author: "Carneiro"
|
|
|
|
inputs:
|
|
site-dirname:
|
|
description: "Site directory (inside /var/www/html/alice_sites) name"
|
|
default: ${{ github.event.repository.name }}
|
|
source-dir:
|
|
description: "Source directory"
|
|
default: "/var/www/src/alice_sites"
|
|
dest-dir:
|
|
description: "Destination directory"
|
|
default: "/var/www/html/alice_sites"
|
|
jekyll-args:
|
|
description: "Args to pass to jekyll build"
|
|
default: "--trace --incremental"
|
|
skip-build:
|
|
description: "Wheather or not the sites skips building"
|
|
default: "false"
|
|
host:
|
|
description: "SSH host address."
|
|
default: "${{ secrets.SSH_HOST }}"
|
|
port:
|
|
description: "SSH port number."
|
|
default: ${{ secrets.SSH_PORT }}
|
|
username:
|
|
description: "SSH username."
|
|
default: "${{ secrets.SSH_USERNAME }}"
|
|
key:
|
|
description: "SSH private key"
|
|
default: ${{ secrets.SSH_PRIV_KEY }}
|
|
|
|
runs:
|
|
using: 'composite'
|
|
steps:
|
|
- uses: appleboy/ssh-action@v1.2.0
|
|
env:
|
|
SITE_DIRNAME: ${{ inputs.site-dirname }}
|
|
REPO_NAME: ${{ gitea.repository }}
|
|
SKIP_BUILD: ${{ inputs.skip-build }}
|
|
SOURCE_DIR: ${{ inputs.source-dir }}
|
|
DEST_DIR: ${{ inputs.dest-dir }}
|
|
JEKYLL_ARGS: ${{ inputs.jekyll-args }}
|
|
with:
|
|
host: ${{ inputs.host }}
|
|
username: ${{ inputs.username }}
|
|
key: ${{ inputs.key }}
|
|
port: ${{ inputs.port }}
|
|
envs: SITE_DIRNAME, REPO_NAME, SKIP_BUILD, SOURCE_DIR, DEST_DIR, JEKYLL_ARGS
|
|
script: |
|
|
|
|
cd $SOURCE_DIR
|
|
|
|
# If site is not there yet, clone it
|
|
[ -d "${SOURCE_DIR}/${SITE_DIRNAME}" ] ||
|
|
git clone https://git.alice.ufsj.edu.br/$REPO_NAME
|
|
|
|
# Update
|
|
cd "${SOURCE_DIR}/${SITE_DIRNAME}"
|
|
git pull
|
|
|
|
# Build
|
|
[ $SKIP_BUILD != false ] && exit 0
|
|
bundle install
|
|
bundle exec jekyll build $JEKYLL_ARGS --destination=$DEST_DIR/$SITE_DIRNAME |