mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-12 04:00:42 +00:00
Moved package code from llama_stack/ to src/llama_stack/ following Python packaging best practices. Updated pyproject.toml, MANIFEST.in, and tool configurations accordingly. Public API and import paths remain unchanged. Developers will need to reinstall in editable mode after pulling this change. Also updated paths in pre-commit config, scripts, and GitHub workflows.
105 lines
3.3 KiB
YAML
105 lines
3.3 KiB
YAML
name: Test llama stack list-deps
|
|
|
|
run-name: Test llama stack list-deps
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- 'src/llama_stack/cli/stack/list_deps.py'
|
|
- 'src/llama_stack/cli/stack/_list_deps.py'
|
|
- 'src/llama_stack/core/build.*'
|
|
- 'src/llama_stack/core/*.sh'
|
|
- '.github/workflows/providers-list-deps.yml'
|
|
- 'src/llama_stack/templates/**'
|
|
- 'pyproject.toml'
|
|
|
|
pull_request:
|
|
paths:
|
|
- 'src/llama_stack/cli/stack/list_deps.py'
|
|
- 'src/llama_stack/cli/stack/_list_deps.py'
|
|
- 'src/llama_stack/core/build.*'
|
|
- 'src/llama_stack/core/*.sh'
|
|
- '.github/workflows/providers-list-deps.yml'
|
|
- 'src/llama_stack/templates/**'
|
|
- 'pyproject.toml'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
generate-matrix:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
distros: ${{ steps.set-matrix.outputs.distros }}
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- name: Generate Distribution List
|
|
id: set-matrix
|
|
run: |
|
|
distros=$(ls src/llama_stack/distributions/*/*build.yaml | awk -F'/' '{print $(NF-1)}' | jq -R -s -c 'split("\n")[:-1]')
|
|
echo "distros=$distros" >> "$GITHUB_OUTPUT"
|
|
|
|
list-deps:
|
|
needs: generate-matrix
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
distro: ${{ fromJson(needs.generate-matrix.outputs.distros) }}
|
|
image-type: [venv, container]
|
|
fail-fast: false # We want to run all jobs even if some fail
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- name: Install dependencies
|
|
uses: ./.github/actions/setup-runner
|
|
|
|
- name: Print dependencies
|
|
run: |
|
|
uv run llama stack list-deps ${{ matrix.distro }}
|
|
|
|
- name: Install Distro using llama stack list-deps
|
|
run: |
|
|
# USE_COPY_NOT_MOUNT is set to true since mounting is not supported by docker buildx, we use COPY instead
|
|
# LLAMA_STACK_DIR is set to the current directory so we are building from the source
|
|
USE_COPY_NOT_MOUNT=true LLAMA_STACK_DIR=. uv run llama stack list-deps ${{ matrix.distro }} | xargs -L1 uv pip install
|
|
|
|
- name: Print dependencies in the image
|
|
if: matrix.image-type == 'venv'
|
|
run: |
|
|
uv pip list
|
|
|
|
show-single-provider:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- name: Install dependencies
|
|
uses: ./.github/actions/setup-runner
|
|
|
|
- name: Show a single provider
|
|
run: |
|
|
USE_COPY_NOT_MOUNT=true LLAMA_STACK_DIR=. uv run llama stack list-deps --providers inference=remote::ollama
|
|
|
|
list-deps-from-config:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- name: Install dependencies
|
|
uses: ./.github/actions/setup-runner
|
|
|
|
- name: list-des from Config
|
|
env:
|
|
USE_COPY_NOT_MOUNT: "true"
|
|
LLAMA_STACK_DIR: "."
|
|
run: |
|
|
uv run llama stack list-deps src/llama_stack/distributions/ci-tests/build.yaml
|