Skip to content

Merge pull request #65 from airtai/remove-fastkafka-chat #10

Merge pull request #65 from airtai/remove-fastkafka-chat

Merge pull request #65 from airtai/remove-fastkafka-chat #10

Workflow file for this run

name: CI
on: [workflow_dispatch, push]
jobs:
mypy_static_analysis:
runs-on: ubuntu-latest
steps:
- uses: airtai/workflows/airt-mypy-check@main # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
bandit_static_analysis:
runs-on: ubuntu-latest
steps:
- uses: airtai/workflows/airt-bandit-check@main # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
semgrep_static_analysis:
runs-on: ubuntu-latest
steps:
- uses: airtai/workflows/airt-semgrep-check@main # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
test:
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
os: [ubuntu, windows]
version: ["3.8", "3.9", "3.10", "3.11"]
runs-on: ${{ matrix.os }}-latest
defaults:
run:
shell: bash
steps:
- name: Configure Pagefile
if: matrix.os == 'windows'
uses: al-cheb/configure-pagefile-action@v1.2 # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
with:
minimum-size: 8GB
maximum-size: 8GB
disk-root: "C:"
- name: Install quarto
uses: quarto-dev/quarto-actions/setup@v2 # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
- name: Prepare nbdev env
uses: fastai/workflows/nbdev-ci@master # nosemgrep: yaml.github-actions.security.third-party-action-not-pinned-to-commit-sha.third-party-action-not-pinned-to-commit-sha
with:
version: ${{ matrix.version }}
skip_test: true
- name: List pip deps
run: |
pip list
- name: Install testing deps
run: |
fastkafka docs install_deps
fastkafka testing install_deps
- name: Run nbdev tests
run: |
nbdev_test --timing --do_print --n_workers 1 --file_glob "*_CLI*" # Run CLI tests first one by one because of npm installation clashes with other tests
nbdev_test --timing --do_print --skip_file_glob "*_CLI*"
- name: Test building docs with nbdev-mkdocs
if: matrix.os != 'windows'
run: |
nbdev_mkdocs docs
if [ -f "mkdocs/site/index.html" ]; then
echo "docs built successfully."
else
echo "index page not found in rendered docs."
ls -la
ls -la mkdocs/site/
exit 1
fi
# https://github.com/marketplace/actions/alls-green#why
check: # This job does nothing and is only used for the branch protection
if: always()
needs:
- test
- mypy_static_analysis
- bandit_static_analysis
- semgrep_static_analysis
runs-on: ubuntu-latest
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1 # nosemgrep
with:
jobs: ${{ toJSON(needs) }}