char-fork/llama.cpp
git clone https://git.t4t.associates/char-fork/llama.cpp
03fa73cb2
char/aliceai-t5-moe
1name : UI 2 3on : 4workflow_dispatch : 5inputs : 6sha : 7description : 'Commit SHA1 to build' 8required : false 9type : string 10push : 11branches : 12- master 13paths : [ 14'.github/workflows/ui.yml' , 15'.github/workflows/ui-build.yml' , 16'tools/ui/**.*' , 17'tools/server/tests/**.*' 18] 19pull_request : 20types : [ opened , synchronize , reopened ] 21paths : [ 22'.github/workflows/ui.yml' , 23'.github/workflows/ui-build.yml' , 24'tools/ui/**.*' , 25'tools/server/tests/**.*' 26] 27 28env : 29LLAMA_ARG_LOG_COLORS : 1 30LLAMA_ARG_LOG_PREFIX : 1 31LLAMA_ARG_LOG_TIMESTAMPS : 1 32LLAMA_ARG_LOG_VERBOSITY : 10 33 34concurrency : 35group : ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || github.run_id }} 36cancel-in-progress : true 37 38jobs : 39ui-build : 40name : Build static output 41uses : ./.github/workflows/ui-build.yml 42 43ui-checks : 44name : Checks 45needs : ui-build 46runs-on : ubuntu-24.04 47continue-on-error : true 48steps : 49- name : Checkout code 50uses : actions/checkout@v6 51with : 52fetch-depth : 0 53ref : ${{ github.event.inputs.sha || github.event.pull_request.head.sha || github.sha || github.head_ref || github.ref_name }} 54 55- name : Setup Node.js 56id : node 57uses : actions/setup-node@v6 58with : 59node-version : "24" 60# cache: "npm" 61# cache-dependency-path: "tools/ui/package-lock.json" 62package-manager-cache : false 63 64- name : Download built UI artifacts 65uses : actions/download-artifact@v6 66with : 67name : llama-ui.zip 68path : tools/ui/dist/ 69 70- name : Install dependencies 71id : setup 72if : ${{ steps.node.conclusion == 'success' }} 73run : npm ci 74working-directory : tools/ui 75 76- name : Run type checking 77if : ${{ always() && steps.setup.conclusion == 'success' }} 78run : npm run check 79working-directory : tools/ui 80 81- name : Run linting 82if : ${{ always() && steps.setup.conclusion == 'success' }} 83run : npm run lint 84working-directory : tools/ui 85 86- name : Install Playwright browsers 87id : playwright 88if : ${{ always() && steps.setup.conclusion == 'success' }} 89run : npx playwright install --with-deps 90working-directory : tools/ui 91 92- name : Run Client tests 93if : ${{ always() && steps.playwright.conclusion == 'success' }} 94run : npm run test:client 95working-directory : tools/ui 96 97- name : Run Unit tests (uses pre-built dist/ from ui-build) 98if : ${{ always() && steps.playwright.conclusion == 'success' }} 99run : npm run test:unit 100working-directory : tools/ui 101 102e2e-tests : 103name : E2E Tests 104needs : ui-build 105runs-on : ubuntu-24.04 106steps : 107- name : Checkout code 108uses : actions/checkout@v6 109with : 110fetch-depth : 0 111ref : ${{ github.event.inputs.sha || github.event.pull_request.head.sha || github.sha || github.head_ref || github.ref_name }} 112 113- name : Setup Node.js 114id : node 115uses : actions/setup-node@v6 116with : 117node-version : "24" 118# cache: "npm" 119# cache-dependency-path: "tools/ui/package-lock.json" 120package-manager-cache : false 121 122- name : Install dependencies 123id : setup 124if : ${{ steps.node.conclusion == 'success' }} 125run : npm ci 126working-directory : tools/ui 127 128- name : Download built UI artifacts (reuses ui-build) 129uses : actions/download-artifact@v6 130with : 131name : llama-ui.zip 132path : tools/ui/dist/ 133 134- name : Install Playwright browsers 135id : playwright 136if : ${{ always() && steps.setup.conclusion == 'success' }} 137run : npx playwright install --with-deps 138working-directory : tools/ui 139 140- name : Build Storybook 141if : ${{ always() && steps.playwright.conclusion == 'success' }} 142run : npm run build-storybook 143working-directory : tools/ui 144 145- name : Run UI tests 146if : ${{ always() && steps.playwright.conclusion == 'success' }} 147run : npm run test:ui -- --testTimeout=60000 148working-directory : tools/ui 149 150- name : Run E2E tests (uses pre-built dist/ from ui-build) 151if : ${{ always() && steps.playwright.conclusion == 'success' }} 152run : npm run test:e2e 153working-directory : tools/ui