Compare commits

...

16 Commits

Author SHA1 Message Date
  Xiaoyun Zhang dfb7602094
Update dotnet-build.yml 1 year ago
  XiaoYun Zhang 4a362b2696 udpate 1 year ago
  XiaoYun Zhang d4d1a580fa enable trust 1 year ago
  XiaoYun Zhang 057a28ffc6 Merge branch 'u/fix#4618' of https://github.com/microsoft/autogen into u/fix#4618 1 year ago
  XiaoYun Zhang e4768d98a2 check certs 1 year ago
  Ryan Sweet 3d21a9455b
Merge branch 'main' into u/fix#4618 1 year ago
  Xiaoyun Zhang 25f8cb756a
Merge branch 'main' into u/fix#4618 1 year ago
  XiaoYun Zhang df9d1d50af format 1 year ago
  XiaoYun Zhang 6b60a862ff prompt exception when on windows 1 year ago
  XiaoYun Zhang 274261840e add stop_when_shutdown 1 year ago
  XiaoYun Zhang 7045cf6e32 update 1 year ago
  XiaoYun Zhang ce4df8d0eb format 1 year ago
  XiaoYun Zhang bc06c92d0a extend to 15 seconds 1 year ago
  XiaoYun Zhang e174a69dd7 revert global.json 1 year ago
  XiaoYun Zhang 9b8d807699 update 1 year ago
  XiaoYun Zhang 513f8716ca enable windows on intergration test 1 year ago
5 changed files with 29 additions and 20 deletions
Split View
  1. +8
    -14
      .github/workflows/dotnet-build.yml
  2. +2
    -2
      dotnet/samples/Hello/HelloAgent/appsettings.json
  3. +2
    -2
      dotnet/test/Microsoft.AutoGen.Integration.Tests/HelloAppHostIntegrationTests.cs
  4. +2
    -2
      python/packages/autogen-core/samples/xlang/hello_python_agent/hello_python_agent.py
  5. +15
    -0
      python/packages/autogen-ext/src/autogen_ext/runtimes/grpc/_worker_runtime.py

+ 8
- 14
.github/workflows/dotnet-build.yml View File

@@ -84,10 +84,10 @@ jobs:
- name: Prepare python venv
run: |
source ${{ github.workspace }}/python/.venv/bin/activate
- name: Setup .NET 8.0
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '8.0.x'
global-json-file: dotnet/global.json
- name: Restore dependencies
run: |
# dotnet nuget add source --name dotnet-tool https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json --configfile NuGet.config
@@ -108,8 +108,7 @@ jobs:
strategy:
fail-fast: true
matrix:
os: [ ubuntu-latest]
version: [ net8.0 ]
os: [ ubuntu-latest, windows-latest ]
needs: build
defaults:
run:
@@ -127,20 +126,15 @@ jobs:
python-version: "3.11"
- run: uv sync --locked --all-extras
working-directory: ./python
- name: Prepare python venv
run: |
source ${{ github.workspace }}/python/.venv/bin/activate
- name: Setup .NET 9.0
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x'
- name: Install Temp Global.JSON
run: |
echo "{\"sdk\": {\"version\": \"9.0.101\"}}" > global.json
- name: Install .NET Aspire workload
run: dotnet workload install aspire
- name: Install dev certs
- name: Check dev certs when running on linux
run: dotnet --version && dotnet dev-certs https --trust
if: runner.os == 'Linux'
- name: Restore dependencies
run: |
dotnet restore -bl
@@ -149,9 +143,9 @@ jobs:
echo "Build AutoGen"
dotnet build --no-restore --configuration Release -bl /p:SignAssembly=true
- name: Integration Test
run: dotnet --version && dotnet test --no-build -bl --configuration Release --filter type=integration
- name: Restore the global.json
run: rm global.json && git checkout -- global.json
run: |
dotnet --version
dotnet test --no-build -bl --configuration Release --filter type=integration

aot-test: # this make sure the AutoGen.Core is aot compatible
strategy:


+ 2
- 2
dotnet/samples/Hello/HelloAgent/appsettings.json View File

@@ -1,9 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Warning",
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Orleans": "Warning"
}
}
}
}

+ 2
- 2
dotnet/test/Microsoft.AutoGen.Integration.Tests/HelloAppHostIntegrationTests.cs View File

@@ -42,8 +42,8 @@ public class HelloAppHostIntegrationTests(ITestOutputHelper testOutput)
await app.WaitForResource(ResourceName, TargetState).WaitAsync(timeout);
}
}
//sleep 5 seconds to make sure the app is running
await Task.Delay(5000);
//sleep 15 seconds to make sure the app is running
await Task.Delay(15000);
app.EnsureNoErrorsLogged();
app.EnsureLogContains("HelloAgents said Goodbye");
app.EnsureLogContains("Wild Hello from Python!");


+ 2
- 2
python/packages/autogen-core/samples/xlang/hello_python_agent/hello_python_agent.py View File

@@ -63,8 +63,8 @@ async def main() -> None:
topic_id=DefaultTopicId("agents.Output", "HelloAgents/python"),
sender=AgentId("HelloAgents", "python"),
)
await runtime.stop_when_signal()
# await runtime.stop_when_idle()
await runtime.stop_when_shutdown()


if __name__ == "__main__":


+ 15
- 0
python/packages/autogen-ext/src/autogen_ext/runtimes/grpc/_worker_runtime.py View File

@@ -3,6 +3,7 @@ import inspect
import json
import logging
import signal
import sys
import uuid
import warnings
from asyncio import Future, Task
@@ -299,8 +300,22 @@ class GrpcWorkerAgentRuntime(AgentRuntime):
except asyncio.CancelledError:
pass

async def stop_when_shutdown(self) -> None:
"""Stop the runtime when Ctrl+C or SIGTERM is received."""
try:
await self._read_task
except KeyboardInterrupt:
logger.info("Received exit signal, shutting down gracefully...")
await self.stop()

async def stop_when_signal(self, signals: Sequence[signal.Signals] = (signal.SIGTERM, signal.SIGINT)) -> None:
"""Stop the runtime when a signal is received."""

# check if it's running on linux or windows
if sys.platform == "win32":
raise NotImplementedError(
"Signal handling is not supported on Windows. Please use stop_when_shutdown instead."
)
loop = asyncio.get_running_loop()
shutdown_event = asyncio.Event()



Loading…
Cancel
Save