Skip to content

feat(llm-assistants): add LiteLLM gateway support for Claude Code (#63) #845

feat(llm-assistants): add LiteLLM gateway support for Claude Code (#63)

feat(llm-assistants): add LiteLLM gateway support for Claude Code (#63) #845

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
env:
CACHIX_NAME: hakula
jobs:
flake-check:
name: Nix Flake Check
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Setup Nix
uses: ./.github/actions/setup-nix
with:
cache_prefix: flake-check
cachix_name: ${{ env.CACHIX_NAME }}
cachix_skip_push: 'true'
- name: Run flake check
run: nix flake check --all-systems
build:
name: Build ${{ matrix.config.name }}
runs-on: ${{ matrix.config.runner }}
needs: flake-check
strategy:
fail-fast: false
matrix:
config:
- id: us-1
name: us-1 (x86_64-linux, CloudCone SC2)
runner: ubuntu-latest
target: .#nixosConfigurations.us-1.config.system.build.toplevel
- id: us-2
name: us-2 (x86_64-linux, CloudCone VPS)
runner: ubuntu-latest
target: .#nixosConfigurations.us-2.config.system.build.toplevel
- id: us-3
name: us-3 (x86_64-linux, CloudCone SC2)
runner: ubuntu-latest
target: .#nixosConfigurations.us-3.config.system.build.toplevel
- id: us-4
name: us-4 (x86_64-linux, DMIT)
runner: ubuntu-latest
target: .#nixosConfigurations.us-4.config.system.build.toplevel
- id: sg-1
name: sg-1 (x86_64-linux, Tencent Lighthouse)
runner: ubuntu-latest
target: .#nixosConfigurations.sg-1.config.system.build.toplevel
- id: macos
name: hakula-macbook (aarch64-darwin, macOS)
runner: macos-latest
target: .#darwinConfigurations.hakula-macbook.system
- id: generic-linux
name: hakula-linux (x86_64-linux, Generic Linux)
runner: ubuntu-latest
target: .#homeConfigurations.hakula-linux.activationPackage
- id: docker
name: hakula-devvm (x86_64-linux, Docker)
runner: ubuntu-latest
target: .#packages.x86_64-linux.hakula-devvm-docker
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Setup Nix
uses: ./.github/actions/setup-nix
with:
cache_prefix: ${{ matrix.config.id }}
cachix_name: ${{ env.CACHIX_NAME }}
cachix_auth_token: ${{ secrets.CACHIX_AUTH_TOKEN }}
cachix_skip_push: ${{ !(github.ref == 'refs/heads/main' || github.actor == 'hakula139') }}
- name: Build configuration
run: |
nix build ${{ matrix.config.target }} \
--print-build-logs \
--show-trace
- name: Pin critical store paths
if: >-
matrix.config.id == 'macos' &&
(github.ref == 'refs/heads/main' || github.actor == 'hakula139')
run: |
store_path=$(nix eval --raw '.#darwinConfigurations.hakula-macbook.pkgs.peertube.runner.outPath')
cachix push hakula "$store_path"
cachix pin hakula peertube-runner "$store_path" --keep-revisions 2
- name: Check system closure size
run: |
nix path-info -Sh ${{ matrix.config.target }}