From 6776863a052404eb7d7166d31b49f9d99adf2676 Mon Sep 17 00:00:00 2001 From: Daniil Koryto <56831513+Dankosik@users.noreply.github.com> Date: Fri, 13 Feb 2026 00:59:38 +0300 Subject: [PATCH] feat: add support for non-runnable documentation directories in examples - Introduced a new documentation-only directory `examples/dockerhub` for Docker Hub overview and release documentation. - Updated CI workflow to skip checks for non-runnable example directories, specifically `dockerhub`. - Added guidelines in AGENTS.md for handling non-runnable directories and updating relevant workflow configurations. --- .github/workflows/ci.yml | 16 ++++++++++++++++ AGENTS.md | 10 ++++++++++ 2 files changed, 26 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d8b8f8e..350e06b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,6 +20,7 @@ jobs: fail_count=0 allowed_sdk_langs=(csharp curl go java node python) + non_runnable_example_dirs=(dockerhub) fail() { echo "::error::$1" @@ -40,6 +41,16 @@ jobs: return 1 } + is_non_runnable_example_dir() { + local dir="$1" + for excluded in "${non_runnable_example_dirs[@]}"; do + if [[ "$excluded" == "$dir" ]]; then + return 0 + fi + done + return 1 + } + check_example_contract() { local dir="$1" [[ -f "$dir/README.md" ]] || fail "$dir is missing README.md" @@ -70,6 +81,11 @@ jobs: [[ -d "$top_example_dir" ]] || continue top_name="$(basename "$top_example_dir")" + if is_non_runnable_example_dir "$top_name"; then + echo "Skipping non-runnable examples directory: $top_example_dir" + continue + fi + if [[ "$top_name" == "agents" ]]; then for agent_example_dir in "$top_example_dir"/*; do [[ -d "$agent_example_dir" ]] || continue diff --git a/AGENTS.md b/AGENTS.md index aaff0c0..cd6deb9 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -28,6 +28,9 @@ Current production-style example directories: - `examples/agents/langchain-streaming-agent` - `examples/agents/langchain-structured-output-agent` +Support (non-runnable) docs directory under `examples/`: +- `examples/dockerhub` (Docker Hub overview/release docs; not an executable example) + Root documentation and policy files: - `README.md` - `AGENTS.md` @@ -43,6 +46,13 @@ Each example directory must include at minimum: - `.env.example` (required variables, no secrets) - Source files needed to run independently +Exception: +- `examples/dockerhub` is documentation-only and is excluded from runnable-example contract checks. +- If you add another non-runnable subdirectory under `examples/`, update: + - `.github/workflows/ci.yml` (`non_runnable_example_dirs`) + - `.github/workflows/docker-auto-tag.yml` (`paths-ignore`, if needed) + - `.github/scripts/auto-tag.sh` target paths/excludes (if release tagging should ignore it) + ## Build, Test, and Development Commands There is no single root build/test pipeline yet. Work from the specific example directory and follow its README. - `cd sdk//`: enter one SDK quickstart.