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/"