Skip to content

feat: gpt

feat: gpt #25

Workflow file for this run

# SOURCE: https://github.com/openai/openai-python/blob/aed1e43745cd6358b4bafd3a39b3dfeee5e31a03/.github/workflows/ci.yml
name: CI
# on:
# push:
# branches:
# - main
# pull_request:
on:
# https://docs.github.com/en/webhooks-and-events/webhooks/webhook-events-and-payloads#push
push:
branches:
- main
- feature/**
- '[0-9].*.x' # e.g., 4.14.x
- '[0-9][0-9].*.x' # e.g., 23.3.x
# https://docs.github.com/en/webhooks-and-events/webhooks/webhook-events-and-payloads#pull_request
pull_request:
# https://docs.github.com/en/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_dispatch
workflow_dispatch:
jobs:
lint:
strategy:
matrix:
setup:
- os: ubuntu-22.04
script_arguments: ''
python-version: ['3.10']
name: lint
runs-on: ${{ matrix.setup.os }}
if: github.repository == 'bossjones/goob_ai'
env:
OS: ${{ matrix.setup.os }}
PYTHON: '3.10'
steps:
- name: Set up Git repository
# uses: actions/checkout@main
uses: actions/checkout@v4
- name: Hash + Timestamp
shell: bash # use bash to run date command
run: echo "HASH=${{ runner.os }}-${{ runner.arch }}-Py${{ matrix.python-version }}-$(date -u "+%Y%m")" >> $GITHUB_ENV
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# - name: Set up Git repository
# uses: actions/checkout@main
- name: Install Rye
run: |
curl -sSf https://rye-up.com/get | bash
echo "$HOME/.rye/shims" >> $GITHUB_PATH
env:
RYE_VERSION: 0.33.0
RYE_INSTALL_OPTION: '--yes'
- name: Run tests and collect coverage
run: |
cp -f env.sample .env
rye config --set-bool behavior.use-uv=true
./scripts/retry -t 4 -- rye sync --all-features
rye run lint
# rye run typecheck
rye run python -c 'import goob_ai'
rye run test
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
with:
# token: ${{ secrets.CODECOV_TOKEN }}
flags: ${{ runner.os }},${{ runner.arch }},${{ matrix.python-version }}
verbose: true
directory: ./junit/
files: ./test-results.xml
# flags: smart-tests
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
- name: Upload Test Results
if: '!cancelled()'
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808
with:
name: test-results-${{ env.HASH }}
path: |
.coverage
tools\durations\${{ runner.os }}.json
junit/test-results.xml
retention-days: 1 # temporary, combined in aggregate below