Saya dapat mengatur tindakan github untuk secara otomatis melakukan hasil dari perintah membangun node ( yarn build
dalam kasus saya tetapi itu harus bekerja dengan npm juga) ke gh-pages
cabang setiap kali komit baru didorong ke master.
Meskipun tidak sepenuhnya ideal karena saya ingin menghindari melakukan file yang dibangun, sepertinya saat ini satu-satunya cara untuk mempublikasikan ke halaman github.
Saya mendasarkan alur kerja saya dari panduan ini untuk perpustakaan react yang berbeda, dan harus membuat perubahan berikut agar berfungsi untuk saya:
- memperbarui langkah "simpul penyiapan" untuk menggunakan versi yang ditemukan di sini karena salah satu dari sampel yang saya gunakan untuk mendasarkannya adalah kesalahan karena tidak dapat menemukan tindakan yang benar.
- hapus baris yang berisi
yarn export
karena perintah itu tidak ada dan sepertinya tidak menambahkan sesuatu yang berguna (Anda mungkin juga ingin mengubah baris build di atasnya agar sesuai dengan kebutuhan Anda)
- Saya juga menambahkan
env
arahan ke yarn build
langkah tersebut sehingga saya dapat menyertakan hash SHA dari komit yang menghasilkan build di dalam aplikasi saya, tetapi ini opsional
Ini tindakan github lengkap saya:
name: github pages
on:
push:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Setup Node
uses: actions/setup-node@v2-beta
with:
node-version: '12'
- name: Get yarn cache
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Cache dependencies
uses: actions/cache@v2
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- run: yarn install --frozen-lockfile
- run: yarn build
env:
REACT_APP_GIT_SHA: ${{ github.SHA }}
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build
Solusi alternatif
The docs untuk next.js juga menyediakan petunjuk pemasangan dengan Vercel yang tampaknya menjadi layanan hosting untuk node.js aplikasi yang mirip dengan github halaman. Saya belum mencoba ini dan karenanya tidak dapat berbicara tentang seberapa baik kerjanya.
grunt assemble
lalu git commit dan dorong ke cabang gh-pages dan Anda mulai berjalan.