asandikci
dcf4b27a7a
All checks were successful
Build and Deploy Test Version (with/without Drafts) - next.asandikci.com / build-drafts-and-deploy (push) Successful in 1m1s
98 lines
No EOL
2.9 KiB
YAML
98 lines
No EOL
2.9 KiB
YAML
name: "Build and Deploy Test Version (with/without Drafts) - next.asandikci.com"
|
||
on:
|
||
push:
|
||
branches:
|
||
- main
|
||
paths-ignore:
|
||
- .gitignore
|
||
- README.md
|
||
- LICENSE
|
||
workflow_dispatch:
|
||
|
||
permissions:
|
||
contents: read
|
||
pages: write
|
||
id-token: write
|
||
|
||
# Allow one concurrent deployment
|
||
concurrency:
|
||
group: "pages"
|
||
cancel-in-progress: true
|
||
|
||
jobs:
|
||
# build-and-push-prod:
|
||
# runs-on: docker
|
||
# container:
|
||
# image: git.asandikci.com/docker-images/website_builder:latest
|
||
# steps:
|
||
# - name: Git Clone
|
||
# run: |
|
||
# git clone https://git.asandikci.com/asandikci.com/web
|
||
# ls -la ./web
|
||
|
||
# - name: Build Site
|
||
# run: |
|
||
# cd web
|
||
# bundle install
|
||
# bundle exec jekyll b
|
||
# env:
|
||
# JEKYLL_ENV: "production"
|
||
|
||
# - name: Push to "website" branch
|
||
# run: |
|
||
# mkdir website_branch && cd website_branch
|
||
# git clone https://git.asandikci.com/asandikci.com/web
|
||
# cd web
|
||
# git checkout website
|
||
# rm -rfv ./_site/
|
||
# cp -rfv ../../web/_site .
|
||
# git config --global user.name "Aliberk Sandıkçı (CI)"
|
||
# git config --global user.email git+ci@asandikci.com
|
||
# git add -A
|
||
# git commit --all --message "Updated! [CI]"
|
||
# git push https://asandikci:${{ secrets.PUSH_KEY }}@git.asandikci.com/asandikci.com/web
|
||
|
||
build-drafts-and-deploy:
|
||
runs-on: docker
|
||
container:
|
||
image: git.asandikci.com/docker-images/website_builder:latest
|
||
steps:
|
||
- name: Git Clone
|
||
run: |
|
||
git clone https://git.asandikci.com/asandikci.com/web
|
||
ls -la ./web
|
||
|
||
- name: Build Site (with Drafts!)
|
||
run: |
|
||
cd web
|
||
bundle install
|
||
bundle exec jekyll b --drafts
|
||
ls -la
|
||
pwd
|
||
env:
|
||
JEKYLL_ENV: "production"
|
||
|
||
# TODO: WILL BE FIXED
|
||
# - name: Test Site
|
||
# run: |
|
||
# cd web
|
||
# bundle exec htmlproofer _site \
|
||
# \-\-disable-external \
|
||
# \-\-ignore-urls "/^http:\/\/127.0.0.1/,/^http:\/\/0.0.0.0/,/^http:\/\/localhost/"
|
||
|
||
- name: Deploy
|
||
run: |
|
||
mkdir deploy && cd deploy
|
||
ls -la
|
||
pwd
|
||
cp -rfv ../web/_site .
|
||
ls -la
|
||
|
||
# CURRENTLY USING PURE STFP FOR AUTH ONLY
|
||
# TODO: CHANGE THIS
|
||
echo '${{ secrets.SFTP_PASSWORD }}' > ~/.passwd
|
||
chmod 0400 ~/.passwd
|
||
sshpass -f ~/.passwd sftp -oBatchMode=no -o StrictHostKeyChecking=accept-new -b - ${{ secrets.SFTP_USERNAME }}@${{ vars.SFTP_HOST }} << !
|
||
bye
|
||
!
|
||
lftp --user ${{ secrets.SFTP_USERNAME }} --password ${{ secrets.SFTP_PASSWORD }} sftp://${{ vars.SFTP_HOST }} -e "rm -r www/; mirror -R . www/" |