diff --git a/.github/workflows/build_publish_lambda_layer.yaml b/.github/workflows/build_publish_lambda_layer.yaml index 6739015a5..9a8a78942 100644 --- a/.github/workflows/build_publish_lambda_layer.yaml +++ b/.github/workflows/build_publish_lambda_layer.yaml @@ -23,7 +23,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-minor: ["10", "11", "12", "13"] + python-minor: ["10", "11", "12", "13", "14"] apm-env: ["lambda"] steps: - uses: actions/checkout@v6 @@ -80,6 +80,6 @@ jobs: with: artifact-name: solarwinds_apm_lambda.zip component-version: ${{ needs.get_apm_python_version.outputs.sw-apm-version }} - runtimes: "python3.10 python3.11 python3.12 python3.13" + runtimes: "python3.10 python3.11 python3.12 python3.13 python3.14" publish-dest: ${{ inputs.publish-dest }} secrets: inherit \ No newline at end of file diff --git a/.github/workflows/verify_install.yaml b/.github/workflows/verify_install.yaml index 2e98e18a9..5481e99aa 100644 --- a/.github/workflows/verify_install.yaml +++ b/.github/workflows/verify_install.yaml @@ -66,6 +66,12 @@ jobs: - py3.13-debian12 - py3.13-alpine3.19 - py3.13-alpine3.20 + - py3.14-amazon2023-arm64 + - py3.14-amazon2023-x86-64 + - py3.14-debian12 + - py3.14-debian13 + - py3.14-alpine3.22 + - py3.14-alpine3.23 arch: - x64 - arm64 @@ -110,6 +116,18 @@ jobs: image: python:3.13-alpine3.19 - hostname: py3.13-alpine3.20 image: python:3.13-alpine3.20 + - hostname: py3.14-amazon2023-arm64 + image: amazon/aws-lambda-python:3.14-arm64 + - hostname: py3.14-amazon2023-x86-64 + image: amazon/aws-lambda-python:3.14-x86_64 + - hostname: py3.14-debian12 + image: python:3.14-bookworm + - hostname: py3.14-debian13 + image: python:3.14-trixie + - hostname: py3.14-alpine3.22 + image: python:3.14-alpine3.22 + - hostname: py3.14-alpine3.23 + image: python:3.14-alpine3.23 exclude: # Note: JavaScript Actions (checkout) in Alpine only supported in x64 - hostname: py3.10-alpine3.13 @@ -130,11 +148,19 @@ jobs: arch: arm64 - hostname: py3.13-alpine3.20 arch: arm64 + - hostname: py3.14-alpine3.22 + arch: arm64 + - hostname: py3.14-alpine3.23 + arch: arm64 # Mutual excludes for arch-specific Amazon hosts - hostname: py3.13-amazon2023-arm64 arch: x64 - hostname: py3.13-amazon2023-x86-64 arch: arm64 + - hostname: py3.14-amazon2023-arm64 + arch: x64 + - hostname: py3.14-amazon2023-x86-64 + arch: arm64 container: image: "${{ matrix.image }}" options: --hostname "${{ matrix.hostname }}" diff --git a/.github/workflows/verify_install_macos.yaml b/.github/workflows/verify_install_macos.yaml index bf3a176c3..7b31e627e 100644 --- a/.github/workflows/verify_install_macos.yaml +++ b/.github/workflows/verify_install_macos.yaml @@ -49,6 +49,7 @@ jobs: - "3.11" - "3.12" - "3.13" + - "3.14" steps: - uses: actions/checkout@v6 - uses: actions/setup-python@v6 diff --git a/.github/workflows/verify_install_windows.yaml b/.github/workflows/verify_install_windows.yaml index 0f6adfb66..322c542c8 100644 --- a/.github/workflows/verify_install_windows.yaml +++ b/.github/workflows/verify_install_windows.yaml @@ -49,6 +49,7 @@ jobs: - "3.11" - "3.12" - "3.13" + - "3.14" steps: - uses: actions/checkout@v6 - uses: actions/setup-python@v6 diff --git a/tests/docker/install/docker-compose.yml b/tests/docker/install/docker-compose.yml index 0cdf8a33f..540c86e44 100755 --- a/tests/docker/install/docker-compose.yml +++ b/tests/docker/install/docker-compose.yml @@ -204,4 +204,50 @@ services: image: "python:3.13-alpine3.20" << : [*command-install-test, *workdir, *volumes-codebase] environment: - << : *envvars-install-test \ No newline at end of file + << : *envvars-install-test + + #-------------------------------------------------------------------- + # Python 3.14 + #-------------------------------------------------------------------- + + py3.14-install-amazon2023-arm64: + hostname: "py3.14-amazon2023-arm64" + image: "amazon/aws-lambda-python:3.14-arm64" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test + + py3.14-install-amazon2023-x86-64: + hostname: "py3.14-amazon2023-x86-64" + image: "amazon/aws-lambda-python:3.14-x86_64" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test + + py3.14-install-debian12: + hostname: "py3.14-debian12" + image: "python:3.14-bookworm" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test + + py3.14-install-debian13: + hostname: "py3.14-debian13" + image: "python:3.14-trixie" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test + + py3.14-install-alpine3.22: + hostname: "py3.14-alpine3.22" + image: "python:3.14-alpine3.22" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test + + py3.14-install-alpine3.23: + hostname: "py3.14-alpine3.23" + image: "python:3.14-alpine3.23" + << : [*command-install-test, *workdir, *volumes-codebase] + environment: + << : *envvars-install-test diff --git a/tox.ini b/tox.ini index e5a9291be..8199aaa28 100644 --- a/tox.ini +++ b/tox.ini @@ -3,7 +3,7 @@ skipsdist = True skip_missing_interpreters = True envlist = py3{9,10,11,12,13}-test - py3{9,10,11,12,13}-lambda + py3{9,10,11,12,13,14}-lambda py3{9,10,11,12,13}-lint ruff @@ -27,7 +27,7 @@ setenv = SW_APM_COLLECTOR = apm.collector.st-ssp.solarwinds.com SW_APM_SERVICE_KEY = foo-bar:service-key -[testenv:py3{9,10,11,12,13}-lambda] +[testenv:py3{9,10,11,12,13,14}-lambda] changedir = lambda/tests deps = {[testenv]deps}