Files
cgrates/.github/workflows/integration_tests.yaml
2025-11-17 18:22:16 +01:00

77 lines
2.2 KiB
YAML

name: integration
on:
push:
branches:
- 1.0
paths-ignore:
- 'docs/**'
- README.md
pull_request:
branches:
- 1.0
paths-ignore:
- 'docs/**'
- README.md
workflow_dispatch:
jobs:
# check-if-duplicate-action:
# # continue-on-error: true # Uncomment once integration is finished
# runs-on: ubuntu-latest
# outputs:
# should_skip: ${{ steps.skip_check.outputs.should_skip }}
# steps:
# - id: skip_check
# uses: fkirc/skip-duplicate-actions@v5
# with:
# concurrent_skipping: 'never'
# skip_after_successful_duplicate: 'true'
# paths_ignore: '["1.0/docs/**"]'
# paths: '["1.0/**.go", "1.0/*.sh", "1.0/.github", "1.0/data/ansible/conf/samples/**", "1.0/data/tariffplans"]'
integration-tests:
# needs: check-if-duplicate-action
# if: needs.check-if-duplicate-action.outputs.should_skip != 'true'
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Go
uses: actions/setup-go@v5
with:
go-version: "1.25.x"
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install Ansible
run: |
python -m pip install --upgrade pip
pip install ansible
- name: Run Ansible Playbook
run: |
ansible-playbook data/ansible/integration_tests/main.yaml -i localhost, -c local -e "ansible_user=$(whoami) cgrates_dir=$GITHUB_WORKSPACE cgrates_clone_repo=false install_go=false"
# - name: Set up tmate session for debugging
# uses: mxschmitt/action-tmate@v3
- name: Run migrator & services tests
continue-on-error: true
run: |
sudo env "PATH=$PATH" go test github.com/cgrates/cgrates/migrator -tags=integration
sudo env "PATH=$PATH" go test github.com/cgrates/cgrates/services -tags=integration
- name: Run flaky tests
continue-on-error: true
run: |
sudo env "PATH=$PATH" ./flaky_test.sh
- name: Run integration tests
run: |
sudo env "PATH=$PATH" ./integration_test.sh