publish
Some checks failed
Test Collection / Sanity Tests (Ansible devel) (push) Failing after 13s
Test Collection / Sanity Tests (Ansible stable-2.15) (push) Failing after 1m20s
Test Collection / Sanity Tests (Ansible stable-2.16) (push) Failing after 1m11s
Test Collection / Sanity Tests (Ansible stable-2.17) (push) Failing after 1m14s
Test Collection / Python Syntax Check (push) Successful in 7s
Test Collection / Build Collection (push) Failing after 21s
Test Collection / YAML and Ansible Lint (push) Successful in 12s
Test Collection / Documentation Check (push) Successful in 7s
Test Collection / Unit Tests (push) Successful in 7s
Some checks failed
Test Collection / Sanity Tests (Ansible devel) (push) Failing after 13s
Test Collection / Sanity Tests (Ansible stable-2.15) (push) Failing after 1m20s
Test Collection / Sanity Tests (Ansible stable-2.16) (push) Failing after 1m11s
Test Collection / Sanity Tests (Ansible stable-2.17) (push) Failing after 1m14s
Test Collection / Python Syntax Check (push) Successful in 7s
Test Collection / Build Collection (push) Failing after 21s
Test Collection / YAML and Ansible Lint (push) Successful in 12s
Test Collection / Documentation Check (push) Successful in 7s
Test Collection / Unit Tests (push) Successful in 7s
This commit is contained in:
182
.gitea/workflows/test.yml
Normal file
182
.gitea/workflows/test.yml
Normal file
@@ -0,0 +1,182 @@
|
||||
name: Test Collection
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main, master, develop]
|
||||
pull_request:
|
||||
branches: [main, master, develop]
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
sanity:
|
||||
name: Sanity Tests (Ansible ${{ matrix.ansible-version }})
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
ansible-version:
|
||||
- stable-2.15
|
||||
- stable-2.16
|
||||
- stable-2.17
|
||||
- devel
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install Ansible
|
||||
run: pip install https://github.com/ansible/ansible/archive/${{ matrix.ansible-version }}.tar.gz --disable-pip-version-check
|
||||
|
||||
- name: Install collection dependencies
|
||||
run: pip install -r requirements.txt
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Run sanity tests
|
||||
run: ansible-test sanity --docker -v --color
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
syntax:
|
||||
name: Python Syntax Check
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Check Python syntax
|
||||
run: |
|
||||
python -m py_compile plugins/modules/nsupdate_zone.py
|
||||
python -m py_compile plugins/module_utils/deps.py
|
||||
echo "✓ All Python files have valid syntax"
|
||||
|
||||
build:
|
||||
name: Build Collection
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install Ansible
|
||||
run: pip install ansible-core
|
||||
|
||||
- name: Build collection
|
||||
run: ansible-galaxy collection build
|
||||
|
||||
- name: Verify tarball
|
||||
run: |
|
||||
if [ -f valid-nsupdate_zone-*.tar.gz ]; then
|
||||
echo "✓ Collection built successfully"
|
||||
ls -lh valid-nsupdate_zone-*.tar.gz
|
||||
tar -tzf valid-nsupdate_zone-*.tar.gz | head -20
|
||||
else
|
||||
echo "✗ Collection build failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Upload collection artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: collection
|
||||
path: valid-nsupdate_zone-*.tar.gz
|
||||
retention-days: 7
|
||||
|
||||
lint:
|
||||
name: YAML and Ansible Lint
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
pip install ansible-core ansible-lint yamllint
|
||||
|
||||
- name: Run yamllint
|
||||
run: yamllint .
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
continue-on-error: true
|
||||
|
||||
- name: Run ansible-lint
|
||||
run: ansible-lint
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
continue-on-error: true
|
||||
|
||||
documentation:
|
||||
name: Documentation Check
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install Ansible
|
||||
run: pip install ansible-core
|
||||
|
||||
- name: Validate module documentation
|
||||
run: |
|
||||
ansible-doc valid.nsupdate_zone.nsupdate_zone
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
unit:
|
||||
name: Unit Tests
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
path: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install Ansible and dependencies
|
||||
run: |
|
||||
pip install ansible-core
|
||||
pip install -r requirements.txt
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
|
||||
- name: Run unit tests
|
||||
run: |
|
||||
if [ -d "tests/unit/plugins/modules" ] && [ "$(ls -A tests/unit/plugins/modules)" ]; then
|
||||
ansible-test units --docker -v --color
|
||||
else
|
||||
echo "⚠ No unit tests found - skipping"
|
||||
fi
|
||||
working-directory: ansible_collections/valid/nsupdate_zone
|
||||
continue-on-error: true
|
||||
Reference in New Issue
Block a user