web/.github/workflows/build_and_test.yml
asandikci 2ea71d8f73
All checks were successful
Build and Deploy Test Version - next.asandikci.com / build_deploy (push) Successful in 1m1s
Update .github/workflows/build_and_test.yml
2024-11-15 18:48:01 +03:00

112 lines
No EOL
3.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: "Build and Deploy Test Version - 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_deploy:
runs-on: docker
container:
image: git.asandikci.com/docker-images/website_builder:latest
steps:
- name: Health Check [CI TEST]
run: |
ls -la
pwd
whoami
echo "this is a text file" >> index.html
date >> index.html
cat index.html
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 }} << !
put index.html www/index.html
bye
!
- name: Git Clone
run: |
git clone https://git.asandikci.com/asandikci.com/web
ls -la ./web
- name: Build Site
run: |
ruby -v
cd web
bundle install
bundle exec jekyll b
ls -la
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
cp -rfv ../../web/_site .
git config --global user.name "Aliberk Sandıı (CI)"
git config --global user.email git+ci@asandikci.com
git add -A
git commit --all --message "built latest static sources from main"
git push https://asandikci:${{ secrets.PUSH_KEY }}@git.asandikci.com/asandikci.com/web --all
- name: Checkout & Deploy
run: |
mkdir deploy && cd deploy
git clone https://git.asandikci.com/asandikci.com/web
cd web
git checkout website
cd _site
sshpass -f ~/.passwd sftp -oBatchMode=no -o StrictHostKeyChecking=accept-new -b - ${{ secrets.SFTP_USERNAME }}@${{ vars.SFTP_HOST }} << !
put -r . www/
bye
!
# - name: Setup Pages
# id: pages
# uses: actions/configure-pages@v4
# - name: Setup Ruby
# uses: ruby/setup-ruby@v1
# with:
# ruby-version: 3.2
# bundler-cache: true
# - name: Build site
# run: bundle exec jekyll b -d "_site${{ steps.pages.outputs.base_path }}"
# env:
# JEKYLL_ENV: "production"
# - name: Test site
# run: |
# bundle exec htmlproofer _site \
# \-\-disable-external=true \
# \-\-ignore-urls "/^http:\/\/127.0.0.1/,/^http:\/\/0.0.0.0/,/^http:\/\/localhost/"
# - name: Upload site artifact
# uses: actions/upload-pages-artifact@v3
# with:
# path: "_site${{ steps.pages.outputs.base_path }}"