Ansible 14 Community Package RC1 — What's New and How to Test

Introduction

Ansible community package 14.0.0rc1 has been released for testing (June 2026). This is the first release candidate for the next major version, which depends on ansible-core 2.20. If you maintain playbooks, roles, or collections, now is the time to test before the final release.

Install the RC

# Install in a virtual environment (recommended)
python3 -m venv ansible14-test
source ansible14-test/bin/activate

# Install the release candidate
pip install ansible==14.0.0rc1

# Verify
ansible --version
# ansible [core 2.20.x]
# ansible-community 14.0.0rc1

What's New

ansible-core 2.20

Ansible 14 requires ansible-core 2.20, which brings:

  • Python 3.10+ minimum on the controller (Python 3.9 dropped)
  • Python 3.7+ on managed nodes (Python 3.6 dropped)
  • Deprecated features removed from ansible-core 2.18/2.19 cycle
  • Performance improvements in task execution and fact gathering
  • New skipped callback behavior (see deprecation section below)

Collection Updates

Major collection version bumps expected in Ansible 14:

CollectionExpected VersionNotable Changes
community.general10.xModule removals from 9.x deprecations
amazon.aws11.xAPI changes, new resources
ansible.netcommon9.xParamiko deprecation enforcement
community.docker5.xCompose v2 default
ansible.mysql6.xReplaces community.mysql

Breaking Changes to Watch

# ❌ Python 3.9 on controller — no longer supported
# Upgrade to Python 3.10+

# ❌ Paramiko as default for network_cli — deprecated path
# Switch to libssh (ansible-pylibssh)

# ❌ community.mysql — development moved to ansible.mysql
# Update requirements.yml:
#   - name: ansible.mysql  # not community.mysql

# ❌ skipped_reason in callback plugins — deprecated
# Use skip_reason instead (see below)

Test Your Playbooks

# Run your playbooks against the RC
ansible-playbook -i inventory site.yml --check

# Run with verbose to see deprecation warnings
ansible-playbook -i inventory site.yml -vv 2>&1 | grep -i deprecat

# Test specific roles
ansible-playbook test-playbook.yml --tags smoke-test

Automated Testing

# .github/workflows/test-ansible14.yml
name: Test Ansible 14 RC

on:
  workflow_dispatch:
  schedule:
    - cron: '0 6 * * 1'  # Weekly Monday

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python: ["3.11", "3.12", "3.13"]
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: ${{ matrix.python }}
      - run: pip install ansible==14.0.0rc1
      - run: ansible-playbook -i inventory/test site.yml --check
      - run: ansible-lint .

Upgrade Guide

Step 1: Check Python Version

python3 --version
# Must be 3.10+ on controller

# On managed nodes:
ansible all -m setup -a "filter=ansible_python_version"
# Must be 3.7+

Step 2: Update requirements.yml

# requirements.yml
collections:
  - name: ansible.mysql        # NOT community.mysql
    version: ">=5.0.0"
  - name: ansible.netcommon
    version: ">=9.0.0"
  - name: community.general
    version: ">=10.0.0"

Step 3: Fix Deprecation Warnings

# Run with Ansible 13 first, fix all deprecation warnings
ansible-playbook site.yml -vv 2>&1 | grep "DEPRECATION WARNING"

Step 4: Test with RC

pip install ansible==14.0.0rc1
ansible-playbook site.yml --check

Step 5: Report Issues

# If you find bugs, report them:
# https://github.com/ansible/ansible/issues
# https://forum.ansible.com/c/project/

Timeline

DateEvent
Jun 202614.0.0rc1 available for testing
Jun 2026Code freeze (no new features)
Jul 2026 (est.)14.0.0 final release

Should You Upgrade Now?

SituationRecommendation
Development/testing✅ Test with RC now
Staging environment✅ Deploy RC for validation
Production❌ Wait for 14.0.0 final
CI/CD matrix✅ Add RC as test target

Troubleshooting

IssueSolution
ModuleNotFoundErrorPython 3.10+ required on controller
community.mysql not foundReplaced by ansible.mysql
Deprecation warnings everywhereFix now — they become errors in next major
Collection version conflictsUpdate all collections to latest compatible
Network modules failMigrate from Paramiko to libssh

Conclusion

Ansible 14.0.0rc1 is your testing window. Install it in a virtualenv, run your playbooks with --check and -vv, fix deprecation warnings, and report bugs. The final release is expected in July 2026. Key actions: upgrade Python to 3.10+, switch from community.mysql to ansible.mysql, and migrate network connections from Paramiko to libssh.