-
-
Notifications
You must be signed in to change notification settings - Fork 3
52 lines (45 loc) · 1.71 KB
/
deploy_to_pages.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
name: Deploy to GitHub Pages
on:
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: 📥 Download codes from GitHub
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: 💎 Set up Ruby
uses: ruby/setup-ruby@v1
#with:
# bundler-cache: true
- name: 🧪 Install gems
run: |
bundle install
- name: 🔧 Build & Test
run: |
# Conver human-readable Geojson file into computer-friendly one
bundle exec ruby compact_geojson.rb
JEKYLL_ENV=production bundle exec jekyll build
JEKYLL_ENV=production bundle exec jekyll doctor
SKIP_BUILD=true bundle exec rake test
# This is NOT for security reason but for others, especially who fork,
# to easier find out which API key they need to replace with their own.
# Check out the official tutorial for details: https://docs.geolonia.com/tutorial
- name: 🔑 Pass Geolonia YOUR-API-KEY from secrets
env:
GEOLONIA_API_KEY: ${{ secrets.GEOLONIA_API_KEY }}
run: |
ruby -i -pe '$_.gsub!("geolonia-api-key=YOUR-API-KEY",
"geolonia-api-key=${{ env.GEOLONIA_API_KEY }}")' _site/index.html
ruby -i -pe '$_.gsub!("geolonia-api-key=YOUR-API-KEY",
"geolonia-api-key=${{ env.GEOLONIA_API_KEY }}")' _site/world.html
- name: 🚀 Deploy to GitHub Pages
if: github.ref == 'refs/heads/main' && job.status == 'success'
uses: peaceiris/actions-gh-pages@v3
with:
personal_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site