# Ultralytics Continuous Integration (CI) GitHub Actions tests name: Ultralytics CI on: push: branches: [ main ] pull_request: branches: [ main ] # schedule: # - cron: '0 0 * * *' # runs at 00:00 UTC every day jobs: Tests: runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ ubuntu-latest ] python-version: [ 3.9 ] timeout-minutes: 60 steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v3 with: python-version: ${{ matrix.python-version }} - name: Get cache dir # https://github.com/actions/cache/blob/master/examples.md#multiple-oss-in-a-workflow id: pip-cache run: echo "::set-output name=dir::$(pip cache dir)" - name: Cache pip uses: actions/cache@v3 with: path: ${{ steps.pip-cache.outputs.dir }} key: ${{ runner.os }}-${{ matrix.python-version }}-pip-${{ hashFiles('requirements.txt') }} restore-keys: ${{ runner.os }}-${{ matrix.python-version }}-pip- - name: Install requirements run: | python -m pip install --upgrade pip wheel pip install torch torchvision --extra-index-url https://download.pytorch.org/whl/cpu # pip install ultralytics (production) pip install . - name: Check environment run: | echo "RUNNER_OS is ${{ runner.os }}" echo "GITHUB_EVENT_NAME is ${{ github.event_name }}" echo "GITHUB_WORKFLOW is ${{ github.workflow }}" echo "GITHUB_ACTOR is ${{ github.actor }}" echo "GITHUB_REPOSITORY is ${{ github.repository }}" echo "GITHUB_REPOSITORY_OWNER is ${{ github.repository_owner }}" python --version pip --version pip list - name: Test HUB training shell: python env: APIKEY: ${{ secrets.ULTRALYTICS_HUB_APIKEY }} run: | import os import ultralytics from ultralytics import hub, yolo key = os.environ['APIKEY'] print(ultralytics.__version__) # ultralytics.checks() # ultralytics.reset_model(key) # reset trained model # ultralytics.start(key) # train model