Add basic GHA jobs

Converts existing GHA job to new workflow model

Adds build jobs for Windows, Linux, and MacOS

Signed-off-by: John Parent <john.parent@kitware.com>
This commit is contained in:
John Parent 2024-07-17 16:54:09 -04:00
parent ca022344d1
commit 4f8d0706b3
2 changed files with 52 additions and 5 deletions

View File

@ -2,16 +2,12 @@
name: Codespell name: Codespell
on: on:
push: workflow_call
branches: [main]
pull_request:
branches: [main]
jobs: jobs:
codespell: codespell:
name: Check for spelling errors name: Check for spelling errors
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4

51
.github/workflows/gpt4all.yml vendored Normal file
View File

@ -0,0 +1,51 @@
# Serves as the entrypoint for all of Gpt4All's GHA CI workflows
# all other workflows should either be a manual trigger job independent
# of PR context (see close_issues.yml) or should be dispatched by this
# workflow
name: gpt4all-ci
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
changes:
runs-on: ubuntu-latest
outputs:
core: ${{ steps.changes.outputs.core }}
chat: ${{ steps.changes.outputs.chat }}
python: ${{ steps.changes.outputs.python }}
typescript: ${{ steps.changes.outputs.typescript }}
steps:
- uses: actions/checkout@v3
with:
fetch_depth: 0
- uses: dorny/paths-filter@v2
id: changes
with:
filters: |
core:
- '.github/workflows/**'
- 'gpt4all-backend/**'
chat:
- 'gpt4all-chat/**'
python:
- 'gpt4all-bindings/python/**'
typescript:
- 'gpt4all-bindings/typescript/**'
spellcheck:
uses: ./.github/workflows/codespell.yml
secrets: inherit
build-chat:
name: "Build Gpt4All chat"
needs: [changes]
if: ${{ needs.changes.outputs.core || needs.changes.outputs.chat }}
uses: ./.github/workflows/build-chat.yml