66 lines
1.9 KiB
YAML
66 lines
1.9 KiB
YAML
name: Website build and deploy
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main # Deploy branch
|
|
|
|
# Run on PRs, but only build
|
|
pull_request:
|
|
# Allows to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
|
permissions:
|
|
contents: read
|
|
pages: write
|
|
id-token: write
|
|
|
|
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
|
|
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
|
|
concurrency:
|
|
group: "pages"
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
# Build job
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout with submodules
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive # Get submdules
|
|
fetch-depth: 1 # Fetch all history for .GitInfo and .Lastmod
|
|
|
|
- name: Create configuration for Matomo
|
|
run: |
|
|
cp themes/hugo-sustain/static/config.php.sample static/config.php
|
|
sed -i "s|__PIWIK_URL__|${{ secrets.MATOMO_PIWIK_URL }}|" static/config.php
|
|
sed -i "s|__PROXY_URL__|${{ secrets.MATOMO_PROXY_URL }}|" static/config.php
|
|
sed -i "s|__TOKEN_AUTH__|${{ secrets.MATOMO_TOKEN_AUTH }}|" static/config.php
|
|
|
|
- name: Setup Hugo
|
|
uses: https://github.com/peaceiris/actions-hugo@v3.0.0
|
|
with:
|
|
hugo-version: "latest"
|
|
extended: true
|
|
|
|
- name: Build website with Hugo
|
|
run: hugo
|
|
|
|
- name: Copy website to host
|
|
uses: https://github.com/appleboy/scp-action@v0.1.7
|
|
with:
|
|
host: mehl.mx
|
|
username: maxmehl
|
|
key: ${{ secrets.SSH_KEY }}
|
|
port: 22
|
|
timeout: 1m
|
|
command_timeout: 2m
|
|
target: "/var/www/virtual/maxmehl/html/"
|
|
source: "public/*"
|
|
rm: true
|
|
strip_components: 1
|
|
if: gitea.ref == 'refs/heads/main'
|