feat: Add wait_until_ready() method for agent deployment polling (#56) #963
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches-ignore: | |
- "generated" | |
- "codegen/**" | |
- "integrated/**" | |
- "stl-preview-head/**" | |
- "stl-preview-base/**" | |
pull_request: | |
branches-ignore: | |
- "stl-preview-head/**" | |
- "stl-preview-base/**" | |
jobs: | |
lint: | |
timeout-minutes: 10 | |
name: lint | |
runs-on: ${{ github.repository == 'stainless-sdks/gradient-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} | |
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rye | |
run: | | |
curl -sSf https://rye.astral.sh/get | bash | |
echo "$HOME/.rye/shims" >> "$GITHUB_PATH" | |
env: | |
RYE_VERSION: "0.44.0" | |
RYE_INSTALL_OPTION: "--yes" | |
- name: Install dependencies | |
run: rye sync --all-features | |
- name: Run lints | |
run: ./scripts/lint | |
build: | |
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork | |
timeout-minutes: 10 | |
name: build | |
permissions: | |
contents: read | |
id-token: write | |
runs-on: ${{ github.repository == 'stainless-sdks/gradient-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rye | |
run: | | |
curl -sSf https://rye.astral.sh/get | bash | |
echo "$HOME/.rye/shims" >> "$GITHUB_PATH" | |
env: | |
RYE_VERSION: "0.44.0" | |
RYE_INSTALL_OPTION: "--yes" | |
- name: Install dependencies | |
run: rye sync --all-features | |
- name: Run build | |
run: rye build | |
- name: Get GitHub OIDC Token | |
if: github.repository == 'stainless-sdks/gradient-python' | |
id: github-oidc | |
uses: actions/github-script@v8 | |
with: | |
script: core.setOutput('github_token', await core.getIDToken()); | |
- name: Upload tarball | |
if: github.repository == 'stainless-sdks/gradient-python' | |
env: | |
URL: https://pkg.stainless.com/s | |
AUTH: ${{ steps.github-oidc.outputs.github_token }} | |
SHA: ${{ github.sha }} | |
run: ./scripts/utils/upload-artifact.sh | |
test: | |
timeout-minutes: 10 | |
name: test | |
runs-on: ${{ github.repository == 'stainless-sdks/gradient-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} | |
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rye | |
run: | | |
curl -sSf https://rye.astral.sh/get | bash | |
echo "$HOME/.rye/shims" >> "$GITHUB_PATH" | |
env: | |
RYE_VERSION: "0.44.0" | |
RYE_INSTALL_OPTION: "--yes" | |
- name: Bootstrap | |
run: ./scripts/bootstrap | |
- name: Run tests | |
run: ./scripts/test | |
smoke: | |
name: smoke | |
# Only run smoke tests on pushes to main repo (not forks) so that secrets can be accessed | |
if: github.repository == 'stainless-sdks/gradient-python' && github.event_name == 'push' | |
runs-on: ${{ github.repository == 'stainless-sdks/gradient-python' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rye | |
run: | | |
curl -sSf https://rye.astral.sh/get | bash | |
echo "$HOME/.rye/shims" >> "$GITHUB_PATH" | |
env: | |
RYE_VERSION: "0.44.0" | |
RYE_INSTALL_OPTION: "--yes" | |
- name: Bootstrap | |
run: ./scripts/bootstrap | |
- name: Run smoke tests | |
env: | |
DIGITALOCEAN_ACCESS_TOKEN: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }} | |
GRADIENT_MODEL_ACCESS_KEY: ${{ secrets.GRADIENT_MODEL_ACCESS_KEY }} | |
GRADIENT_AGENT_ACCESS_KEY: ${{ secrets.GRADIENT_AGENT_ACCESS_KEY }} | |
GRADIENT_AGENT_ENDPOINT: ${{ secrets.GRADIENT_AGENT_ENDPOINT }} | |
run: ./scripts/smoke |