Skip to content

Add CodeRabbit configuration for automated PR reviews #391

Add CodeRabbit configuration for automated PR reviews

Add CodeRabbit configuration for automated PR reviews #391

---
name: Integration tests
on:
pull_request:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
FLIGHTCTL_REF: v1.1.1
jobs:
integration-tests:
runs-on: "ubuntu-latest"
strategy:
matrix:
versions:
- ansible: ${{ vars.ANSIBLE_VERSION || 'stable-2.16' }}
python: ${{ vars.PYTHON_VERSION || '3.12' }}
steps:
- name: Checkout flightctl
uses: actions/checkout@v4
with:
repository: 'flightctl/flightctl'
ref: ${{ env.FLIGHTCTL_REF }}
- name: Setup dependencies for flightctl
uses: ./.github/actions/setup-dependencies
with:
setup_podman4: yes
- name: Free disk space (runner)
uses: jlumbroso/free-disk-space@v1.3.1
with:
tool-cache: false
large-packages: true
- name: Free disk space (podman)
run: podman system prune -af || true
- name: Start flightctl services
run: make deploy
- name: Deploy e2e extras
run: make deploy-e2e-extras
- name: Checkout collection
uses: actions/checkout@v4
with:
path: collection
- name: Write integration config
run: make write-integration-config
working-directory: ./collection
- name: Perform integration testing
uses: ansible-community/ansible-test-gh-action@release/v1
with:
ansible-core-version: ${{ matrix.versions.ansible }}
origin-python-version: ${{ matrix.versions.python }}
target-python-version: ${{ matrix.versions.python }}
testing-type: integration
collection-src-directory: ./collection
test-integration-downstream:
runs-on: "ubuntu-latest"
needs: integration-tests
strategy:
matrix:
versions:
- ansible: ${{ vars.ANSIBLE_VERSION || 'stable-2.16' }}
python: ${{ vars.PYTHON_VERSION || '3.12' }}
steps:
- name: Checkout flightctl
uses: actions/checkout@v4
with:
repository: 'flightctl/flightctl'
ref: ${{ env.FLIGHTCTL_REF }}
- name: Setup dependencies for flightctl
uses: ./.github/actions/setup-dependencies
with:
setup_podman4: yes
- name: Free disk space (runner)
uses: jlumbroso/free-disk-space@v1.3.1
with:
tool-cache: false
large-packages: true
- name: Free disk space (podman)
run: podman system prune -af || true
- name: Start flightctl services
run: make deploy
- name: Deploy e2e extras
run: make deploy-e2e-extras
- name: Checkout repository
uses: actions/checkout@v4
with:
path: collection
- name: Write integration config
run: make write-integration-config
working-directory: ./collection
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.versions.python }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install "ansible-core>=2.16,<2.17" ansible-lint
- name: Run downstream integration tests
run: |
cd ci
./downstream.sh -i
working-directory: ./collection