|
6 | 6 | - 'v*' |
7 | 7 | - 'python/v*' |
8 | 8 | - 'python/hdp-grok/v*' |
| 9 | + - 'python/hdp-langchain/v*' |
9 | 10 | - 'python/hdp-autogen/v*' |
10 | 11 | - 'python/hdp-physical/v*' |
11 | 12 | - 'node/hdp-autogen/v*' |
|
14 | 15 | env: |
15 | 16 | FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true |
16 | 17 |
|
| 18 | +permissions: |
| 19 | + contents: read |
| 20 | + |
17 | 21 | jobs: |
18 | 22 | # ── Node.js pipeline ────────────────────────────────────────────────────── |
19 | 23 |
|
@@ -539,6 +543,89 @@ jobs: |
539 | 543 | with: |
540 | 544 | packages-dir: dist/ |
541 | 545 |
|
| 546 | + # ── hdp-langchain (Python / LangChain) ─────────────────────────────────── |
| 547 | + |
| 548 | + test-hdp-langchain: |
| 549 | + name: Test hdp-langchain |
| 550 | + if: startsWith(github.ref, 'refs/tags/python/hdp-langchain/v') |
| 551 | + runs-on: ubuntu-latest |
| 552 | + strategy: |
| 553 | + matrix: |
| 554 | + python-version: ['3.10', '3.11', '3.12'] |
| 555 | + steps: |
| 556 | + - uses: actions/checkout@v5 |
| 557 | + |
| 558 | + - name: Set up Python ${{ matrix.python-version }} |
| 559 | + uses: actions/setup-python@v5 |
| 560 | + with: |
| 561 | + python-version: ${{ matrix.python-version }} |
| 562 | + |
| 563 | + - name: Install dependencies |
| 564 | + working-directory: packages/hdp-langchain |
| 565 | + run: pip install -e ".[dev]" |
| 566 | + |
| 567 | + - name: Run tests |
| 568 | + working-directory: packages/hdp-langchain |
| 569 | + run: pytest tests/ -v |
| 570 | + |
| 571 | + vet-hdp-langchain: |
| 572 | + name: Build & Vet hdp-langchain (ReleaseGuard) |
| 573 | + needs: test-hdp-langchain |
| 574 | + runs-on: ubuntu-latest |
| 575 | + steps: |
| 576 | + - uses: actions/checkout@v5 |
| 577 | + |
| 578 | + - name: Set up Python |
| 579 | + uses: actions/setup-python@v5 |
| 580 | + with: |
| 581 | + python-version: '3.12' |
| 582 | + |
| 583 | + - name: Install build tools |
| 584 | + run: pip install build |
| 585 | + |
| 586 | + - name: Build distribution |
| 587 | + working-directory: packages/hdp-langchain |
| 588 | + run: python -m build |
| 589 | + |
| 590 | + - name: Vet artifacts with ReleaseGuard |
| 591 | + uses: Helixar-AI/ReleaseGuard@94c067008f3ad516d4b61a6e7163d9d5518a4548 |
| 592 | + with: |
| 593 | + path: packages/hdp-langchain/dist |
| 594 | + config: packages/hdp-langchain/.releaseguard.yml |
| 595 | + sbom: 'true' |
| 596 | + fix: 'true' |
| 597 | + format: sarif |
| 598 | + artifact-name: releaseguard-evidence-hdp-langchain |
| 599 | + |
| 600 | + - name: Upload vetted distribution |
| 601 | + uses: actions/upload-artifact@v4 |
| 602 | + with: |
| 603 | + name: hdp-langchain-dist |
| 604 | + path: packages/hdp-langchain/dist/ |
| 605 | + retention-days: 1 |
| 606 | + |
| 607 | + publish-hdp-langchain: |
| 608 | + name: Publish hdp-langchain to PyPI |
| 609 | + needs: vet-hdp-langchain |
| 610 | + runs-on: ubuntu-latest |
| 611 | + permissions: |
| 612 | + contents: read |
| 613 | + id-token: write |
| 614 | + environment: |
| 615 | + name: pypi-hdp-langchain |
| 616 | + url: https://pypi.org/project/hdp-langchain/ |
| 617 | + steps: |
| 618 | + - name: Download vetted distribution |
| 619 | + uses: actions/download-artifact@v4 |
| 620 | + with: |
| 621 | + name: hdp-langchain-dist |
| 622 | + path: dist/ |
| 623 | + |
| 624 | + - name: Publish to PyPI |
| 625 | + uses: pypa/gh-action-pypi-publish@release/v1 |
| 626 | + with: |
| 627 | + packages-dir: dist/ |
| 628 | + |
542 | 629 | # ── hdp-autogen (Python / AutoGen) ──────────────────────────────────────── |
543 | 630 |
|
544 | 631 | test-hdp-autogen: |
|
0 commit comments