name: Deploy Jekyll site to Pages on: push: branches: - main workflow_dispatch: permissions: contents: write pages: write id-token: write concurrency: group: "pages" cancel-in-progress: true jobs: build: runs-on: ubuntu-22.04 env: RUBY_VERSION: "3.3.5" steps: - name: Checkout uses: actions/checkout@v4 - name: checkout pages uses: actions/checkout@v4 with: ref: 'pages' path: 'pages' - name: Cleanup Pages Branch run: | cd pages git config user.name "${{ gitea.actor }}" git config user.email ""${{ gitea.actor }}"@noreply.git.morlana.online" git rm --cached -r update_cloudflare_dns.py domains.yaml || true git commit -m "Remove ignored files from Jekyll site" cd .. - name: Install Ruby run: | apt-get update && \ apt-get install curl wget tar build-essential zlib1g-dev -y && \ wget -O ruby.tar.bz2 https://raw.morlana.space/morlana/rvm-binaries/@binaries/ubuntu/22.04/aarch64/ruby-$RUBY_VERSION.tar.bz2 && \ tar -xjf ruby.tar.bz2 -C /usr/local && \ rm ruby.tar.bz2 && \ ln -s /usr/local/ruby-$RUBY_VERSION/bin/ruby /usr/local/bin/ruby && \ ln -s /usr/local/ruby-$RUBY_VERSION/bin/gem /usr/local/bin/gem && \ echo "export LD_LIBRARY_PATH=/usr/local/ruby-$RUBY_VERSION/lib:\$LD_LIBRARY_PATH" >> $GITHUB_ENV - name: Cache Gems uses: actions/cache@v4 with: path: ~/.gem key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} restore-keys: | ${{ runner.os }}-gems- - name: Install Bundler and Jekyll run: | gem install bundler jekyll webrick bundle install #- name: Setup Ruby # run: | # apt-get update # apt-get install curl wget tar build-essential zlib1g-dev gpg -y # curl -sSL https://rvm.io/mpapis.asc | gpg --import - # curl -sSL https://rvm.io/pkuczynski.asc | gpg --import - # curl -sSL https://get.rvm.io | bash -s stable # source /etc/profile.d/rvm.sh # rvm mount -r https://raw.morlana.space/morlana/rvm-binaries/@binaries/ubuntu/22.04/aarch64/ruby-$RUBY_VERSION.tar.bz2 # rvm use $RUBY_VERSION && ruby -v && gem -v # gem install bundler jekyll webrick - name: Prepare Jekyll Index run: | echo "---\nlayout: default\ntitle: Documentation\n---\n\n" > index.md cat README.md >> index.md - name: Build with Jekyll run: | source /etc/profile.d/rvm.sh rvm use $RUBY_VERSION && ruby -v && gem -v bundle install bundle exec jekyll build --destination pages env: JEKYLL_ENV: production - name: push pages run: | cd pages cp ../.domains ./.domains git config user.name "${{ gitea.actor }}" git config user.email ""${{ gitea.actor }}"@noreply.git.morlana.online" git add . git commit -m "jekyll build from Action ${GITHUB_SHA}" git push