ci: add CI to test website deploy

This commit is contained in:
Aliberk Sandıkçı 2025-01-23 20:13:14 +03:00
parent f01cf597ea
commit 0ed8477b5b
Signed by: asandikci
GPG key ID: A3B47D76845BEDF3
2 changed files with 84 additions and 0 deletions

View file

@ -0,0 +1,64 @@
name: "Generate Databases and Publish to Website (hypatia.services.yayindasin.org)"
on:
workflow_dispatch:
jobs:
build-and-push-prod:
runs-on: docker
container:
image: git.asandikci.com/docker-images/website_builder:latest # actually no need to new image?
steps:
- name: Git Clone
run: |
git clone https://git.asandikci.com/MaintainTeam/HypatiaDatabases.git
cd HypatiaDatabases
ls -la
# - name: Generate Databases
# run: |
# cd scripts
# bash generate databases.sh # or databases.java ?
#
# assume this step generates all files to databases/generated/ directory, for now I am using old_generated_files_for_test/ directory, change this later
- name: Push Databases to "static" branch
run: |
mkdir static && cd static
git clone https://git.asandikci.com/MaintainTeam/HypatiaDatabases.git
cd HypatiaDatabases
git checkout static
rm -rfv ./databases/
mkdir databases
cp -rfv ../../HypatiaDatabases/old_generated_files_for_test/* ./databases/
git config --global user.name "Aliberk Sandıı (CI)"
git config --global user.email git+ci@asandikci.com
git add -A
git commit --all --message "Updated Databases! [CI]"
git push https://asandikci:${{ secrets.PUSH_KEY }}@git.asandikci.com/MaintainTeam/HypatiaDatabases
# is it really safe to pushing inside a CI ???
### Hey I don't even give PUSH_KEY variable, how does it push lol ?
### FIXME: !!!
publish:
runs-on: docker
container:
image: git.asandikci.com/docker-images/website_builder:latest # actually no need to new image?
steps:
- name: Checkout & Deploy
run: |
git clone https://git.asandikci.com/MaintainTeam/HypatiaDatabases.git
cd HypatiaDatabases
git checkout static
date >> info.txt
echo '${{ secrets.SFTP_PASSWORD }}' > ~/.passwd
chmod 0400 ~/.passwd
sshpass -f ~/.passwd sftp -oBatchMode=no -o StrictHostKeyChecking=accept-new -b - ${{ secrets.SFTP_USERNAME }}@hypatia.services.yayindasin.org << !
bye
!
lftp --user ${{ secrets.SFTP_USERNAME }} --password ${{ secrets.SFTP_PASSWORD }} sftp://hypatia.services.yayindasin.org -e "mirror -R --delete . www/"
## TODO: see https://git.asandikci.com/asandikci.com/web/issues/10 for ftp related ...
# CURRENTLY USING PURE STFP FOR AUTH ONLY
# TODO: CHANGE THIS

View file

@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<!-- Umami | I just use this for counting how many users use this service, you can block analytics.yayindasin.org domain to disable telemetry -->
<script defer src="https://analytics.yayindasin.org/script.js"
data-website-id="b739a3d8-e258-4474-808e-5451e3d85f42"></script>
<title>Hypatia Databases</title>
</head>
<body>
Hypatia Databases<br>
generated from https://git.asandikci.com/MaintainTeam/HypatiaDatabases , currently testing - not stable !<br>
get databases from with this link: https://hypatia.services.yayindasin.org/databases/DATABASE_NAME<br>
see /info.txt for generation info<br>
</body>