Add deployment flow
All checks were successful
Build and Deploy Hugo / deploy (push) Successful in 9s
All checks were successful
Build and Deploy Hugo / deploy (push) Successful in 9s
This commit is contained in:
parent
a1dfdd2b49
commit
d40d1adcaf
1 changed files with 49 additions and 0 deletions
49
.forgejo/workflows/build_and_deploy_site.yml
Normal file
49
.forgejo/workflows/build_and_deploy_site.yml
Normal file
|
@ -0,0 +1,49 @@
|
|||
name: Build and Deploy Hugo
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: true # Fetch Hugo themes (true OR recursive)
|
||||
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
|
||||
|
||||
- name: Setup Hugo
|
||||
run: |
|
||||
wget https://github.com/gohugoio/hugo/releases/download/v0.147.8/hugo_0.147.8_linux-amd64.tar.gz
|
||||
tar -xzf hugo_0.147.8_linux-amd64.tar.gz
|
||||
chmod +x hugo
|
||||
mkdir -p ~/bin
|
||||
mv hugo ~/bin/
|
||||
echo "~/bin" >> $GITHUB_PATH
|
||||
|
||||
- name: Build
|
||||
run: hugo --minify
|
||||
|
||||
- name: Setup SSH
|
||||
run: |
|
||||
echo "Setting up SSH..."
|
||||
mkdir -p ~/.ssh
|
||||
if [ -z "${{ secrets.SSH_PRIVATE_KEY }}" ]; then
|
||||
echo "ERROR: SSH_PRIVATE_KEY secret is not set!"
|
||||
exit 1
|
||||
fi
|
||||
echo "SSH_PRIVATE_KEY secret is present"
|
||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
||||
chmod 600 ~/.ssh/id_rsa
|
||||
chmod 700 ~/.ssh
|
||||
echo "SSH key saved and permissions set" ssh-keyscan -H alexselimov.com >> ~/.ssh/known_hosts
|
||||
echo "Host key added to known_hosts"
|
||||
# Test SSH connection
|
||||
echo "Testing SSH connection..."
|
||||
ssh -o StrictHostKeyChecking=no -o BatchMode=yes root@alexselimov.com "echo 'SSH connection successful'" || echo "SSH connection failed"
|
||||
|
||||
- name: Deploy
|
||||
run: rsync -azvr public/* root@alexselimov.com:/var/www/alexanderselimov.com/
|
Loading…
Add table
Add a link
Reference in a new issue