Deploy Website #715
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy Website | |
on: | |
push: | |
branches: | |
- main | |
schedule: | |
# nightly builds to keep in sync with changes to the video library | |
- cron: '0 0 * * *' | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
# BEGIN Dependencies | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: '3.7' | |
architecture: 'x64' | |
- uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: "2.7" | |
- uses: actions/setup-node@v2 | |
with: | |
node-version: '14' | |
- uses: actions/cache@v2 | |
with: | |
path: | | |
vendor/bundle | |
~/.npm | |
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}-node- | |
${{ runner.os }}-gems- | |
- name: Install dependencies | |
run: | | |
gem install bundler | |
bundle config path vendor/bundle | |
bundle install --jobs 4 --retry 3 | |
npm install | |
bundle pristine ffi | |
# END Dependencies | |
- name: Build Site | |
run: | | |
gem install bundler | |
python -m pip install --upgrade pip | |
pip install requests ephemeris | |
export PATH=/home/runner/.local/bin:$PATH | |
make annotate ACTIVATE_ENV=pwd | |
npm install | |
make rebuild-search-index ACTIVATE_ENV=pwd | |
cat metadata/swagger.yaml | python bin/yaml2json.py > api/swagger.json | |
curl --retry 5 https://gallantries.github.io/video-library/api/videos.json > metadata/video-library.json | |
curl --retry 5 https://gallantries.github.io/video-library/api/sessions.json > metadata/session-library.json | |
JEKYLL_ENV=production bundle exec jekyll build --strict_front_matter -d _site/training-material | |
env: | |
GTN_FORK: ${{ github.repository_owner }} | |
- name: Deploy 🚀 | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./_site/training-material/ | |
publish_branch: gh-pages |