diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index da62f85fc7ef16e66a4a01e151c5945ff2cfe32e..3c1417ae9fcc73e430c49841f0f3428ecc3350f9 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,7 +1,7 @@
 ---
 repos:
 - repo: https://github.com/ansible/ansible-lint.git
-  rev: v5.3.2
+  rev: v6.6.1
   hooks:
   - id: ansible-lint
     always_run: false
@@ -11,20 +11,20 @@ repos:
     entry: |
         env ANSIBLE_LIBRARY=./plugins/modules ANSIBLE_MODULE_UTILS=./plugins/module_utils ANSIBLE_DOC_FRAGMENT_PLUGINS=./plugins/doc_fragments ansible-lint
 - repo: https://github.com/adrienverge/yamllint.git
-  rev: v1.26.1
+  rev: v1.28.0
   hooks:
   - id: yamllint
     files: \.(yaml|yml)$
 - repo: https://github.com/pycqa/flake8
-  rev: 3.9.2
+  rev: 5.0.3
   hooks:
   - id: flake8
 - repo: https://github.com/pycqa/pydocstyle
-  rev: 6.1.1
+  rev: 6.0.0
   hooks:
   - id: pydocstyle
 - repo: https://github.com/pycqa/pylint
-  rev: v2.12.2
+  rev: v2.14.4
   hooks:
   - id: pylint
     args:
diff --git a/requirements-dev.txt b/requirements-dev.txt
index 0915965a4d3a2675e45c0ca95135fb9d3448c19f..f7fa4419e0891b7fd3be52ddbaccd7453464f7e5 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -1,10 +1,10 @@
 -r requirements-tests.txt
 ipdb==0.13.4
-pre-commit
-flake8==4.0.1
+pre-commit==2.20.0
+flake8==5.0.3
 flake8-bugbear==22.10.27
-pylint==2.13.7
-wrapt >= 1.14.0
+pylint==2.14.4
+wrapt == 1.14.0
 pydocstyle==6.0.0
-yamllint==1.26.3
-ansible-lint==5.3.2
+yamllint==1.28.0
+ansible-lint==6.6.1
diff --git a/requirements-tests.txt b/requirements-tests.txt
index 292e81c6dcea1c81f8b0dd16334c784f06c2c6bd..e6f74d6484debbccced6c56f90f70f038053e690 100644
--- a/requirements-tests.txt
+++ b/requirements-tests.txt
@@ -1,7 +1,8 @@
 -r requirements.txt
-pytest>=2.7
-pytest-sourceorder>=0.5
+pytest==7.1.3
+pytest-sourceorder==0.6.0
 pytest-split>=0.8.0
 pytest-custom_exit_code>=0.3.0
-pytest-testinfra>=5.0
+pytest-testinfra==6.8.0
+pytest-randomly==3.12.0
 pyyaml>=3