|
version: '3' |
|
|
|
tasks: |
|
clean: |
|
desc: clean up |
|
cmds: |
|
- task: clean-agents |
|
- task: clean-server |
|
|
|
lint: |
|
desc: lint-agent |
|
env: |
|
PYTHONPATH: "./agents/ten_packages/system/ten_runtime_python/lib:./agents/ten_packages/system/ten_runtime_python/interface:./agents/ten_packages/system/ten_ai_base/interface" |
|
cmds: |
|
- ./agents/scripts/pylint.sh |
|
|
|
install-tools: |
|
desc: install tools |
|
cmds: |
|
- pip install pylint |
|
|
|
build: |
|
desc: build |
|
cmds: |
|
- task: build-agent |
|
- task: build-server |
|
|
|
use: |
|
desc: use agent, default 'agents/examples/default' |
|
vars: |
|
AGENT: '{{.AGENT| default "agents/examples/default"}}' |
|
cmds: |
|
- ln -sf {{.USER_WORKING_DIR}}/{{.AGENT}}/manifest.json ./agents/ |
|
- ln -sf {{.USER_WORKING_DIR}}/{{.AGENT}}/property.json ./agents/ |
|
- task: build |
|
|
|
run-server: |
|
desc: run backend http server |
|
cmds: |
|
- source .env && /app/server/bin/api |
|
|
|
run-gd-server: |
|
desc: run tman dev http server for graph designer |
|
dir: ./agents |
|
cmds: |
|
- tman designer |
|
|
|
run: |
|
desc: run servers |
|
deps: |
|
- task: run-server |
|
- task: run-gd-server |
|
|
|
build-agent: |
|
desc: build agent |
|
dir: ./agents |
|
internal: true |
|
cmds: |
|
- ./scripts/install_deps_and_build.sh linux x64 && mv bin/main bin/worker |
|
|
|
build-server: |
|
desc: build server |
|
dir: ./server |
|
cmds: |
|
- go mod tidy && go mod download && go build -o bin/api main.go |
|
|
|
clean-agents: |
|
desc: clean up agents |
|
dir: ./agents |
|
internal: true |
|
cmds: |
|
- rm -rf manifest.json property.json manifest-lock.json bin/main bin/worker out .release ten_packages/system ten_packages/system/agora_rtc_sdk ten_packages/system/azure_speech_sdk ten_packages/system/nlohmann_json ten_packages/extension/agora_rtc ten_packages/extension/agora_rtm ten_packages/extension/agora_sess_ctrl ten_packages/extension/azure_tts ten_packages/addon_loader |
|
- find . -type d -name .pytest_cache -exec rm -rf {} \; || true |
|
- find . -type d -name __pycache__ -exec rm -rf {} \; || true |
|
- find . -type d -name .ten -exec rm -rf {} \; || true |
|
- find . -name .coverage -exec rm -f {} \; || true |
|
|
|
clean-server: |
|
desc: clean up server |
|
dir: ./server |
|
internal: true |
|
cmds: |
|
- rm -rf bin |
|
|
|
test: |
|
desc: run tests |
|
cmds: |
|
- task: test-agent-extensions |
|
- task: test-server |
|
|
|
test-server: |
|
desc: test server |
|
dir: ./server |
|
internal: true |
|
cmds: |
|
- go test -v ./... |
|
|
|
test-agent-extensions: |
|
desc: run standalone testing of extensions |
|
internal: true |
|
env: |
|
PYTHONPATH: "{{.USER_WORKING_DIR}}:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_runtime_python/lib:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_runtime_python/interface:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_ai_base/interface" |
|
vars: |
|
EXTENSIONS: |
|
sh: 'find agents/ten_packages/extension -type d -exec test -d "{}/tests" \; -print' |
|
cmds: |
|
- for: { var: EXTENSIONS } |
|
task: test-extension |
|
vars: |
|
EXTENSION: '{{ .ITEM }}' |
|
|
|
test-extension: |
|
desc: run standalone testing of one single extension |
|
vars: |
|
EXTENSION: '{{.EXTENSION| default "agents/ten_packages/extension/elevenlabs_tts_python"}}' |
|
env: |
|
PYTHONPATH: "{{.USER_WORKING_DIR}}:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_runtime_python/lib:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_runtime_python/interface:{{.USER_WORKING_DIR}}/agents/ten_packages/system/ten_ai_base/interface" |
|
dotenv: ['.env'] |
|
cmds: |
|
- cd {{.EXTENSION}} && tman -y install --standalone && ./tests/bin/start {{ .CLI_ARGS }} |
|
|