diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 7ca3e0fcf..cc7604f9e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -16,12 +16,12 @@ jobs: uses: psf/black@stable unit_testing: - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 needs: linting strategy: fail-fast: false matrix: - python-version: ["3.10", "3.11"] + python-version: ["3.13"] steps: @@ -39,7 +39,7 @@ jobs: virtualenvs-create: false - name: Install Python packages - run: poetry install + run: poetry install --no-root - name: Build and install collection run: | @@ -62,17 +62,17 @@ jobs: runs-on: ubuntu-latest needs: unit_testing env: - python-version: "3.12" + python-version: "3.13" strategy: fail-fast: false matrix: - include: - - VERSION: "v3.7" - NETBOX_DOCKER_VERSION: 2.7.0 + include: - VERSION: "v4.0" NETBOX_DOCKER_VERSION: 2.9.1 - VERSION: "v4.1" NETBOX_DOCKER_VERSION: 3.0.1 + - VERSION: "v4.2" + NETBOX_DOCKER_VERSION: 3.1.0 steps: @@ -101,7 +101,7 @@ jobs: virtualenvs-create: false - name: Install Python packages - run: poetry install + run: poetry install --no-root - name: Build and install collection run: | diff --git a/poetry.lock b/poetry.lock index c7df271e9..70a3a3990 100644 --- a/poetry.lock +++ b/poetry.lock @@ -13,136 +13,121 @@ files = [ [[package]] name = "aiohappyeyeballs" -version = "2.4.0" +version = "2.4.4" description = "Happy Eyeballs for asyncio" optional = false python-versions = ">=3.8" files = [ - {file = "aiohappyeyeballs-2.4.0-py3-none-any.whl", hash = "sha256:7ce92076e249169a13c2f49320d1967425eaf1f407522d707d59cac7628d62bd"}, - {file = "aiohappyeyeballs-2.4.0.tar.gz", hash = "sha256:55a1714f084e63d49639800f95716da97a1f173d46a16dfcfda0016abb93b6b2"}, + {file = "aiohappyeyeballs-2.4.4-py3-none-any.whl", hash = "sha256:a980909d50efcd44795c4afeca523296716d50cd756ddca6af8c65b996e27de8"}, + {file = "aiohappyeyeballs-2.4.4.tar.gz", hash = "sha256:5fdd7d87889c63183afc18ce9271f9b0a7d32c2303e394468dd45d514a757745"}, ] [[package]] name = "aiohttp" -version = "3.10.11" +version = "3.11.11" description = "Async http client/server framework (asyncio)" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "aiohttp-3.10.11-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5077b1a5f40ffa3ba1f40d537d3bec4383988ee51fbba6b74aa8fb1bc466599e"}, - {file = "aiohttp-3.10.11-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8d6a14a4d93b5b3c2891fca94fa9d41b2322a68194422bef0dd5ec1e57d7d298"}, - {file = "aiohttp-3.10.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ffbfde2443696345e23a3c597049b1dd43049bb65337837574205e7368472177"}, - {file = "aiohttp-3.10.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20b3d9e416774d41813bc02fdc0663379c01817b0874b932b81c7f777f67b217"}, - {file = "aiohttp-3.10.11-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b943011b45ee6bf74b22245c6faab736363678e910504dd7531a58c76c9015a"}, - {file = "aiohttp-3.10.11-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48bc1d924490f0d0b3658fe5c4b081a4d56ebb58af80a6729d4bd13ea569797a"}, - {file = "aiohttp-3.10.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e12eb3f4b1f72aaaf6acd27d045753b18101524f72ae071ae1c91c1cd44ef115"}, - {file = "aiohttp-3.10.11-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f14ebc419a568c2eff3c1ed35f634435c24ead2fe19c07426af41e7adb68713a"}, - {file = "aiohttp-3.10.11-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:72b191cdf35a518bfc7ca87d770d30941decc5aaf897ec8b484eb5cc8c7706f3"}, - {file = "aiohttp-3.10.11-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:5ab2328a61fdc86424ee540d0aeb8b73bbcad7351fb7cf7a6546fc0bcffa0038"}, - {file = "aiohttp-3.10.11-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:aa93063d4af05c49276cf14e419550a3f45258b6b9d1f16403e777f1addf4519"}, - {file = "aiohttp-3.10.11-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:30283f9d0ce420363c24c5c2421e71a738a2155f10adbb1a11a4d4d6d2715cfc"}, - {file = "aiohttp-3.10.11-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:e5358addc8044ee49143c546d2182c15b4ac3a60be01c3209374ace05af5733d"}, - {file = "aiohttp-3.10.11-cp310-cp310-win32.whl", hash = "sha256:e1ffa713d3ea7cdcd4aea9cddccab41edf6882fa9552940344c44e59652e1120"}, - {file = "aiohttp-3.10.11-cp310-cp310-win_amd64.whl", hash = "sha256:778cbd01f18ff78b5dd23c77eb82987ee4ba23408cbed233009fd570dda7e674"}, - {file = "aiohttp-3.10.11-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:80ff08556c7f59a7972b1e8919f62e9c069c33566a6d28586771711e0eea4f07"}, - {file = "aiohttp-3.10.11-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c8f96e9ee19f04c4914e4e7a42a60861066d3e1abf05c726f38d9d0a466e695"}, - {file = "aiohttp-3.10.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fb8601394d537da9221947b5d6e62b064c9a43e88a1ecd7414d21a1a6fba9c24"}, - {file = "aiohttp-3.10.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ea224cf7bc2d8856d6971cea73b1d50c9c51d36971faf1abc169a0d5f85a382"}, - {file = "aiohttp-3.10.11-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:db9503f79e12d5d80b3efd4d01312853565c05367493379df76d2674af881caa"}, - {file = "aiohttp-3.10.11-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0f449a50cc33f0384f633894d8d3cd020e3ccef81879c6e6245c3c375c448625"}, - {file = "aiohttp-3.10.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82052be3e6d9e0c123499127782a01a2b224b8af8c62ab46b3f6197035ad94e9"}, - {file = "aiohttp-3.10.11-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:20063c7acf1eec550c8eb098deb5ed9e1bb0521613b03bb93644b810986027ac"}, - {file = "aiohttp-3.10.11-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:489cced07a4c11488f47aab1f00d0c572506883f877af100a38f1fedaa884c3a"}, - {file = "aiohttp-3.10.11-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:ea9b3bab329aeaa603ed3bf605f1e2a6f36496ad7e0e1aa42025f368ee2dc07b"}, - {file = "aiohttp-3.10.11-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:ca117819d8ad113413016cb29774b3f6d99ad23c220069789fc050267b786c16"}, - {file = "aiohttp-3.10.11-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:2dfb612dcbe70fb7cdcf3499e8d483079b89749c857a8f6e80263b021745c730"}, - {file = "aiohttp-3.10.11-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f9b615d3da0d60e7d53c62e22b4fd1c70f4ae5993a44687b011ea3a2e49051b8"}, - {file = "aiohttp-3.10.11-cp311-cp311-win32.whl", hash = "sha256:29103f9099b6068bbdf44d6a3d090e0a0b2be6d3c9f16a070dd9d0d910ec08f9"}, - {file = "aiohttp-3.10.11-cp311-cp311-win_amd64.whl", hash = "sha256:236b28ceb79532da85d59aa9b9bf873b364e27a0acb2ceaba475dc61cffb6f3f"}, - {file = "aiohttp-3.10.11-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:7480519f70e32bfb101d71fb9a1f330fbd291655a4c1c922232a48c458c52710"}, - {file = "aiohttp-3.10.11-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f65267266c9aeb2287a6622ee2bb39490292552f9fbf851baabc04c9f84e048d"}, - {file = "aiohttp-3.10.11-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7400a93d629a0608dc1d6c55f1e3d6e07f7375745aaa8bd7f085571e4d1cee97"}, - {file = "aiohttp-3.10.11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f34b97e4b11b8d4eb2c3a4f975be626cc8af99ff479da7de49ac2c6d02d35725"}, - {file = "aiohttp-3.10.11-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e7b825da878464a252ccff2958838f9caa82f32a8dbc334eb9b34a026e2c636"}, - {file = "aiohttp-3.10.11-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f9f92a344c50b9667827da308473005f34767b6a2a60d9acff56ae94f895f385"}, - {file = "aiohttp-3.10.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc6f1ab987a27b83c5268a17218463c2ec08dbb754195113867a27b166cd6087"}, - {file = "aiohttp-3.10.11-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1dc0f4ca54842173d03322793ebcf2c8cc2d34ae91cc762478e295d8e361e03f"}, - {file = "aiohttp-3.10.11-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:7ce6a51469bfaacff146e59e7fb61c9c23006495d11cc24c514a455032bcfa03"}, - {file = "aiohttp-3.10.11-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:aad3cd91d484d065ede16f3cf15408254e2469e3f613b241a1db552c5eb7ab7d"}, - {file = "aiohttp-3.10.11-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:f4df4b8ca97f658c880fb4b90b1d1ec528315d4030af1ec763247ebfd33d8b9a"}, - {file = "aiohttp-3.10.11-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:2e4e18a0a2d03531edbc06c366954e40a3f8d2a88d2b936bbe78a0c75a3aab3e"}, - {file = "aiohttp-3.10.11-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6ce66780fa1a20e45bc753cda2a149daa6dbf1561fc1289fa0c308391c7bc0a4"}, - {file = "aiohttp-3.10.11-cp312-cp312-win32.whl", hash = "sha256:a919c8957695ea4c0e7a3e8d16494e3477b86f33067478f43106921c2fef15bb"}, - {file = "aiohttp-3.10.11-cp312-cp312-win_amd64.whl", hash = "sha256:b5e29706e6389a2283a91611c91bf24f218962717c8f3b4e528ef529d112ee27"}, - {file = "aiohttp-3.10.11-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:703938e22434d7d14ec22f9f310559331f455018389222eed132808cd8f44127"}, - {file = "aiohttp-3.10.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9bc50b63648840854e00084c2b43035a62e033cb9b06d8c22b409d56eb098413"}, - {file = "aiohttp-3.10.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5f0463bf8b0754bc744e1feb61590706823795041e63edf30118a6f0bf577461"}, - {file = "aiohttp-3.10.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6c6dec398ac5a87cb3a407b068e1106b20ef001c344e34154616183fe684288"}, - {file = "aiohttp-3.10.11-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bcaf2d79104d53d4dcf934f7ce76d3d155302d07dae24dff6c9fffd217568067"}, - {file = "aiohttp-3.10.11-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:25fd5470922091b5a9aeeb7e75be609e16b4fba81cdeaf12981393fb240dd10e"}, - {file = "aiohttp-3.10.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbde2ca67230923a42161b1f408c3992ae6e0be782dca0c44cb3206bf330dee1"}, - {file = "aiohttp-3.10.11-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:249c8ff8d26a8b41a0f12f9df804e7c685ca35a207e2410adbd3e924217b9006"}, - {file = "aiohttp-3.10.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:878ca6a931ee8c486a8f7b432b65431d095c522cbeb34892bee5be97b3481d0f"}, - {file = "aiohttp-3.10.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:8663f7777ce775f0413324be0d96d9730959b2ca73d9b7e2c2c90539139cbdd6"}, - {file = "aiohttp-3.10.11-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:6cd3f10b01f0c31481fba8d302b61603a2acb37b9d30e1d14e0f5a58b7b18a31"}, - {file = "aiohttp-3.10.11-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:4e8d8aad9402d3aa02fdc5ca2fe68bcb9fdfe1f77b40b10410a94c7f408b664d"}, - {file = "aiohttp-3.10.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:38e3c4f80196b4f6c3a85d134a534a56f52da9cb8d8e7af1b79a32eefee73a00"}, - {file = "aiohttp-3.10.11-cp313-cp313-win32.whl", hash = "sha256:fc31820cfc3b2863c6e95e14fcf815dc7afe52480b4dc03393c4873bb5599f71"}, - {file = "aiohttp-3.10.11-cp313-cp313-win_amd64.whl", hash = "sha256:4996ff1345704ffdd6d75fb06ed175938c133425af616142e7187f28dc75f14e"}, - {file = "aiohttp-3.10.11-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:74baf1a7d948b3d640badeac333af581a367ab916b37e44cf90a0334157cdfd2"}, - {file = "aiohttp-3.10.11-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:473aebc3b871646e1940c05268d451f2543a1d209f47035b594b9d4e91ce8339"}, - {file = "aiohttp-3.10.11-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c2f746a6968c54ab2186574e15c3f14f3e7f67aef12b761e043b33b89c5b5f95"}, - {file = "aiohttp-3.10.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d110cabad8360ffa0dec8f6ec60e43286e9d251e77db4763a87dcfe55b4adb92"}, - {file = "aiohttp-3.10.11-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e0099c7d5d7afff4202a0c670e5b723f7718810000b4abcbc96b064129e64bc7"}, - {file = "aiohttp-3.10.11-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0316e624b754dbbf8c872b62fe6dcb395ef20c70e59890dfa0de9eafccd2849d"}, - {file = "aiohttp-3.10.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a5f7ab8baf13314e6b2485965cbacb94afff1e93466ac4d06a47a81c50f9cca"}, - {file = "aiohttp-3.10.11-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c891011e76041e6508cbfc469dd1a8ea09bc24e87e4c204e05f150c4c455a5fa"}, - {file = "aiohttp-3.10.11-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:9208299251370ee815473270c52cd3f7069ee9ed348d941d574d1457d2c73e8b"}, - {file = "aiohttp-3.10.11-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:459f0f32c8356e8125f45eeff0ecf2b1cb6db1551304972702f34cd9e6c44658"}, - {file = "aiohttp-3.10.11-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:14cdc8c1810bbd4b4b9f142eeee23cda528ae4e57ea0923551a9af4820980e39"}, - {file = "aiohttp-3.10.11-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:971aa438a29701d4b34e4943e91b5e984c3ae6ccbf80dd9efaffb01bd0b243a9"}, - {file = "aiohttp-3.10.11-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:9a309c5de392dfe0f32ee57fa43ed8fc6ddf9985425e84bd51ed66bb16bce3a7"}, - {file = "aiohttp-3.10.11-cp38-cp38-win32.whl", hash = "sha256:9ec1628180241d906a0840b38f162a3215114b14541f1a8711c368a8739a9be4"}, - {file = "aiohttp-3.10.11-cp38-cp38-win_amd64.whl", hash = "sha256:9c6e0ffd52c929f985c7258f83185d17c76d4275ad22e90aa29f38e211aacbec"}, - {file = "aiohttp-3.10.11-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:cdc493a2e5d8dc79b2df5bec9558425bcd39aff59fc949810cbd0832e294b106"}, - {file = "aiohttp-3.10.11-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b3e70f24e7d0405be2348da9d5a7836936bf3a9b4fd210f8c37e8d48bc32eca6"}, - {file = "aiohttp-3.10.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:968b8fb2a5eee2770eda9c7b5581587ef9b96fbdf8dcabc6b446d35ccc69df01"}, - {file = "aiohttp-3.10.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deef4362af9493d1382ef86732ee2e4cbc0d7c005947bd54ad1a9a16dd59298e"}, - {file = "aiohttp-3.10.11-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:686b03196976e327412a1b094f4120778c7c4b9cff9bce8d2fdfeca386b89829"}, - {file = "aiohttp-3.10.11-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3bf6d027d9d1d34e1c2e1645f18a6498c98d634f8e373395221121f1c258ace8"}, - {file = "aiohttp-3.10.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:099fd126bf960f96d34a760e747a629c27fb3634da5d05c7ef4d35ef4ea519fc"}, - {file = "aiohttp-3.10.11-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c73c4d3dae0b4644bc21e3de546530531d6cdc88659cdeb6579cd627d3c206aa"}, - {file = "aiohttp-3.10.11-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0c5580f3c51eea91559db3facd45d72e7ec970b04528b4709b1f9c2555bd6d0b"}, - {file = "aiohttp-3.10.11-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:fdf6429f0caabfd8a30c4e2eaecb547b3c340e4730ebfe25139779b9815ba138"}, - {file = "aiohttp-3.10.11-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:d97187de3c276263db3564bb9d9fad9e15b51ea10a371ffa5947a5ba93ad6777"}, - {file = "aiohttp-3.10.11-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:0acafb350cfb2eba70eb5d271f55e08bd4502ec35e964e18ad3e7d34d71f7261"}, - {file = "aiohttp-3.10.11-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:c13ed0c779911c7998a58e7848954bd4d63df3e3575f591e321b19a2aec8df9f"}, - {file = "aiohttp-3.10.11-cp39-cp39-win32.whl", hash = "sha256:22b7c540c55909140f63ab4f54ec2c20d2635c0289cdd8006da46f3327f971b9"}, - {file = "aiohttp-3.10.11-cp39-cp39-win_amd64.whl", hash = "sha256:7b26b1551e481012575dab8e3727b16fe7dd27eb2711d2e63ced7368756268fb"}, - {file = "aiohttp-3.10.11.tar.gz", hash = "sha256:9dc2b8f3dcab2e39e0fa309c8da50c3b55e6f34ab25f1a71d3288f24924d33a7"}, + {file = "aiohttp-3.11.11-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a60804bff28662cbcf340a4d61598891f12eea3a66af48ecfdc975ceec21e3c8"}, + {file = "aiohttp-3.11.11-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4b4fa1cb5f270fb3eab079536b764ad740bb749ce69a94d4ec30ceee1b5940d5"}, + {file = "aiohttp-3.11.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:731468f555656767cda219ab42e033355fe48c85fbe3ba83a349631541715ba2"}, + {file = "aiohttp-3.11.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb23d8bb86282b342481cad4370ea0853a39e4a32a0042bb52ca6bdde132df43"}, + {file = "aiohttp-3.11.11-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f047569d655f81cb70ea5be942ee5d4421b6219c3f05d131f64088c73bb0917f"}, + {file = "aiohttp-3.11.11-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dd7659baae9ccf94ae5fe8bfaa2c7bc2e94d24611528395ce88d009107e00c6d"}, + {file = "aiohttp-3.11.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af01e42ad87ae24932138f154105e88da13ce7d202a6de93fafdafb2883a00ef"}, + {file = "aiohttp-3.11.11-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5854be2f3e5a729800bac57a8d76af464e160f19676ab6aea74bde18ad19d438"}, + {file = "aiohttp-3.11.11-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:6526e5fb4e14f4bbf30411216780c9967c20c5a55f2f51d3abd6de68320cc2f3"}, + {file = "aiohttp-3.11.11-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:85992ee30a31835fc482468637b3e5bd085fa8fe9392ba0bdcbdc1ef5e9e3c55"}, + {file = "aiohttp-3.11.11-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:88a12ad8ccf325a8a5ed80e6d7c3bdc247d66175afedbe104ee2aaca72960d8e"}, + {file = "aiohttp-3.11.11-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:0a6d3fbf2232e3a08c41eca81ae4f1dff3d8f1a30bae415ebe0af2d2458b8a33"}, + {file = "aiohttp-3.11.11-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:84a585799c58b795573c7fa9b84c455adf3e1d72f19a2bf498b54a95ae0d194c"}, + {file = "aiohttp-3.11.11-cp310-cp310-win32.whl", hash = "sha256:bfde76a8f430cf5c5584553adf9926534352251d379dcb266ad2b93c54a29745"}, + {file = "aiohttp-3.11.11-cp310-cp310-win_amd64.whl", hash = "sha256:0fd82b8e9c383af11d2b26f27a478640b6b83d669440c0a71481f7c865a51da9"}, + {file = "aiohttp-3.11.11-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:ba74ec819177af1ef7f59063c6d35a214a8fde6f987f7661f4f0eecc468a8f76"}, + {file = "aiohttp-3.11.11-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4af57160800b7a815f3fe0eba9b46bf28aafc195555f1824555fa2cfab6c1538"}, + {file = "aiohttp-3.11.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ffa336210cf9cd8ed117011085817d00abe4c08f99968deef0013ea283547204"}, + {file = "aiohttp-3.11.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:81b8fe282183e4a3c7a1b72f5ade1094ed1c6345a8f153506d114af5bf8accd9"}, + {file = "aiohttp-3.11.11-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3af41686ccec6a0f2bdc66686dc0f403c41ac2089f80e2214a0f82d001052c03"}, + {file = "aiohttp-3.11.11-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:70d1f9dde0e5dd9e292a6d4d00058737052b01f3532f69c0c65818dac26dc287"}, + {file = "aiohttp-3.11.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:249cc6912405917344192b9f9ea5cd5b139d49e0d2f5c7f70bdfaf6b4dbf3a2e"}, + {file = "aiohttp-3.11.11-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0eb98d90b6690827dcc84c246811feeb4e1eea683c0eac6caed7549be9c84665"}, + {file = "aiohttp-3.11.11-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:ec82bf1fda6cecce7f7b915f9196601a1bd1a3079796b76d16ae4cce6d0ef89b"}, + {file = "aiohttp-3.11.11-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:9fd46ce0845cfe28f108888b3ab17abff84ff695e01e73657eec3f96d72eef34"}, + {file = "aiohttp-3.11.11-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:bd176afcf8f5d2aed50c3647d4925d0db0579d96f75a31e77cbaf67d8a87742d"}, + {file = "aiohttp-3.11.11-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:ec2aa89305006fba9ffb98970db6c8221541be7bee4c1d027421d6f6df7d1ce2"}, + {file = "aiohttp-3.11.11-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:92cde43018a2e17d48bb09c79e4d4cb0e236de5063ce897a5e40ac7cb4878773"}, + {file = "aiohttp-3.11.11-cp311-cp311-win32.whl", hash = "sha256:aba807f9569455cba566882c8938f1a549f205ee43c27b126e5450dc9f83cc62"}, + {file = "aiohttp-3.11.11-cp311-cp311-win_amd64.whl", hash = "sha256:ae545f31489548c87b0cced5755cfe5a5308d00407000e72c4fa30b19c3220ac"}, + {file = "aiohttp-3.11.11-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e595c591a48bbc295ebf47cb91aebf9bd32f3ff76749ecf282ea7f9f6bb73886"}, + {file = "aiohttp-3.11.11-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:3ea1b59dc06396b0b424740a10a0a63974c725b1c64736ff788a3689d36c02d2"}, + {file = "aiohttp-3.11.11-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8811f3f098a78ffa16e0ea36dffd577eb031aea797cbdba81be039a4169e242c"}, + {file = "aiohttp-3.11.11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd7227b87a355ce1f4bf83bfae4399b1f5bb42e0259cb9405824bd03d2f4336a"}, + {file = "aiohttp-3.11.11-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d40f9da8cabbf295d3a9dae1295c69975b86d941bc20f0a087f0477fa0a66231"}, + {file = "aiohttp-3.11.11-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ffb3dc385f6bb1568aa974fe65da84723210e5d9707e360e9ecb51f59406cd2e"}, + {file = "aiohttp-3.11.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8f5f7515f3552d899c61202d99dcb17d6e3b0de777900405611cd747cecd1b8"}, + {file = "aiohttp-3.11.11-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3499c7ffbfd9c6a3d8d6a2b01c26639da7e43d47c7b4f788016226b1e711caa8"}, + {file = "aiohttp-3.11.11-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8e2bf8029dbf0810c7bfbc3e594b51c4cc9101fbffb583a3923aea184724203c"}, + {file = "aiohttp-3.11.11-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b6212a60e5c482ef90f2d788835387070a88d52cf6241d3916733c9176d39eab"}, + {file = "aiohttp-3.11.11-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:d119fafe7b634dbfa25a8c597718e69a930e4847f0b88e172744be24515140da"}, + {file = "aiohttp-3.11.11-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:6fba278063559acc730abf49845d0e9a9e1ba74f85f0ee6efd5803f08b285853"}, + {file = "aiohttp-3.11.11-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:92fc484e34b733704ad77210c7957679c5c3877bd1e6b6d74b185e9320cc716e"}, + {file = "aiohttp-3.11.11-cp312-cp312-win32.whl", hash = "sha256:9f5b3c1ed63c8fa937a920b6c1bec78b74ee09593b3f5b979ab2ae5ef60d7600"}, + {file = "aiohttp-3.11.11-cp312-cp312-win_amd64.whl", hash = "sha256:1e69966ea6ef0c14ee53ef7a3d68b564cc408121ea56c0caa2dc918c1b2f553d"}, + {file = "aiohttp-3.11.11-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:541d823548ab69d13d23730a06f97460f4238ad2e5ed966aaf850d7c369782d9"}, + {file = "aiohttp-3.11.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:929f3ed33743a49ab127c58c3e0a827de0664bfcda566108989a14068f820194"}, + {file = "aiohttp-3.11.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0882c2820fd0132240edbb4a51eb8ceb6eef8181db9ad5291ab3332e0d71df5f"}, + {file = "aiohttp-3.11.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b63de12e44935d5aca7ed7ed98a255a11e5cb47f83a9fded7a5e41c40277d104"}, + {file = "aiohttp-3.11.11-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aa54f8ef31d23c506910c21163f22b124facb573bff73930735cf9fe38bf7dff"}, + {file = "aiohttp-3.11.11-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a344d5dc18074e3872777b62f5f7d584ae4344cd6006c17ba12103759d407af3"}, + {file = "aiohttp-3.11.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b7fb429ab1aafa1f48578eb315ca45bd46e9c37de11fe45c7f5f4138091e2f1"}, + {file = "aiohttp-3.11.11-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c341c7d868750e31961d6d8e60ff040fb9d3d3a46d77fd85e1ab8e76c3e9a5c4"}, + {file = "aiohttp-3.11.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ed9ee95614a71e87f1a70bc81603f6c6760128b140bc4030abe6abaa988f1c3d"}, + {file = "aiohttp-3.11.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:de8d38f1c2810fa2a4f1d995a2e9c70bb8737b18da04ac2afbf3971f65781d87"}, + {file = "aiohttp-3.11.11-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:a9b7371665d4f00deb8f32208c7c5e652059b0fda41cf6dbcac6114a041f1cc2"}, + {file = "aiohttp-3.11.11-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:620598717fce1b3bd14dd09947ea53e1ad510317c85dda2c9c65b622edc96b12"}, + {file = "aiohttp-3.11.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:bf8d9bfee991d8acc72d060d53860f356e07a50f0e0d09a8dfedea1c554dd0d5"}, + {file = "aiohttp-3.11.11-cp313-cp313-win32.whl", hash = "sha256:9d73ee3725b7a737ad86c2eac5c57a4a97793d9f442599bea5ec67ac9f4bdc3d"}, + {file = "aiohttp-3.11.11-cp313-cp313-win_amd64.whl", hash = "sha256:c7a06301c2fb096bdb0bd25fe2011531c1453b9f2c163c8031600ec73af1cc99"}, + {file = "aiohttp-3.11.11-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:3e23419d832d969f659c208557de4a123e30a10d26e1e14b73431d3c13444c2e"}, + {file = "aiohttp-3.11.11-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:21fef42317cf02e05d3b09c028712e1d73a9606f02467fd803f7c1f39cc59add"}, + {file = "aiohttp-3.11.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1f21bb8d0235fc10c09ce1d11ffbd40fc50d3f08a89e4cf3a0c503dc2562247a"}, + {file = "aiohttp-3.11.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1642eceeaa5ab6c9b6dfeaaa626ae314d808188ab23ae196a34c9d97efb68350"}, + {file = "aiohttp-3.11.11-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2170816e34e10f2fd120f603e951630f8a112e1be3b60963a1f159f5699059a6"}, + {file = "aiohttp-3.11.11-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8be8508d110d93061197fd2d6a74f7401f73b6d12f8822bbcd6d74f2b55d71b1"}, + {file = "aiohttp-3.11.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4eed954b161e6b9b65f6be446ed448ed3921763cc432053ceb606f89d793927e"}, + {file = "aiohttp-3.11.11-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6c9af134da4bc9b3bd3e6a70072509f295d10ee60c697826225b60b9959acdd"}, + {file = "aiohttp-3.11.11-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:44167fc6a763d534a6908bdb2592269b4bf30a03239bcb1654781adf5e49caf1"}, + {file = "aiohttp-3.11.11-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:479b8c6ebd12aedfe64563b85920525d05d394b85f166b7873c8bde6da612f9c"}, + {file = "aiohttp-3.11.11-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:10b4ff0ad793d98605958089fabfa350e8e62bd5d40aa65cdc69d6785859f94e"}, + {file = "aiohttp-3.11.11-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:b540bd67cfb54e6f0865ceccd9979687210d7ed1a1cc8c01f8e67e2f1e883d28"}, + {file = "aiohttp-3.11.11-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1dac54e8ce2ed83b1f6b1a54005c87dfed139cf3f777fdc8afc76e7841101226"}, + {file = "aiohttp-3.11.11-cp39-cp39-win32.whl", hash = "sha256:568c1236b2fde93b7720f95a890741854c1200fba4a3471ff48b2934d2d93fd3"}, + {file = "aiohttp-3.11.11-cp39-cp39-win_amd64.whl", hash = "sha256:943a8b052e54dfd6439fd7989f67fc6a7f2138d0a2cf0a7de5f18aa4fe7eb3b1"}, + {file = "aiohttp-3.11.11.tar.gz", hash = "sha256:bb49c7f1e6ebf3821a42d81d494f538107610c3a705987f53068546b0e90303e"}, ] [package.dependencies] aiohappyeyeballs = ">=2.3.0" aiosignal = ">=1.1.2" -async-timeout = {version = ">=4.0,<6.0", markers = "python_version < \"3.11\""} attrs = ">=17.3.0" frozenlist = ">=1.1.1" multidict = ">=4.5,<7.0" -yarl = ">=1.12.0,<2.0" +propcache = ">=0.2.0" +yarl = ">=1.17.0,<2.0" [package.extras] speedups = ["Brotli", "aiodns (>=3.2.0)", "brotlicffi"] [[package]] name = "aiosignal" -version = "1.3.1" +version = "1.3.2" description = "aiosignal: a list of registered asynchronous callbacks" optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, - {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, + {file = "aiosignal-1.3.2-py2.py3-none-any.whl", hash = "sha256:45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5"}, + {file = "aiosignal-1.3.2.tar.gz", hash = "sha256:a8c255c66fafb1e499c9351d0bf32ff2d8a0321595ebac3b93713656d2436f54"}, ] [package.dependencies] @@ -172,13 +157,13 @@ files = [ [[package]] name = "ansible-core" -version = "2.17.7" +version = "2.18.1" description = "Radically simple IT automation" optional = false -python-versions = ">=3.10" +python-versions = ">=3.11" files = [ - {file = "ansible_core-2.17.7-py3-none-any.whl", hash = "sha256:64d4f0a006687a5621aa80dca54fd0c5ae75145b7aac8c1b8d7f07a1399c4705"}, - {file = "ansible_core-2.17.7.tar.gz", hash = "sha256:3aaab735d6c4e2d6239bc326800dc0ecda2a1490caa8455b41084ec0bc54dacf"}, + {file = "ansible_core-2.18.1-py3-none-any.whl", hash = "sha256:4a312e416e09c7271188d6b8e2b1062fc6834fefd6a1814d0e02fb8aadb3e1ba"}, + {file = "ansible_core-2.18.1.tar.gz", hash = "sha256:14cac1f92bbdae881cb0616eddeb17925e8cb507e486087975e724533d9de74f"}, ] [package.dependencies] @@ -204,25 +189,46 @@ pygments = ">=2.4.0" [[package]] name = "antsibull" -version = "0.64.0" +version = "0.67.0" +description = "The antsibull project has been renamed to antsibull-build" +optional = false +python-versions = ">=3.9" +files = [ + {file = "antsibull-0.67.0-py3-none-any.whl", hash = "sha256:ede7234d55398a3e132fd1ab5a4a93f2c7214a2a496108a01428aa8f7c8793d0"}, + {file = "antsibull-0.67.0.tar.gz", hash = "sha256:f3a1c46758bd1369510cc3a7046ecf67f5c94371a92f524c529b8b0ea2aba229"}, +] + +[package.dependencies] +antsibull-build = ">=0.67.0" + +[package.extras] +all = ["antsibull-build[all]"] +clipboard = ["antsibull-build[clipboard]"] + +[[package]] +name = "antsibull-build" +version = "0.69.0" description = "Tools for building the Ansible Distribution" optional = false python-versions = ">=3.9" files = [ - {file = "antsibull-0.64.0-py3-none-any.whl", hash = "sha256:afcd946bacd1775fec4435023ad71f50abc32bb0c6860feedbf43bfb34201cf0"}, - {file = "antsibull-0.64.0.tar.gz", hash = "sha256:227133ee70c31d6739ec7d9b468690951e6f168cb8f4ea2f968cdf15e4000eec"}, + {file = "antsibull_build-0.69.0-py3-none-any.whl", hash = "sha256:4ed583cad27d913d74528b1995fc3c84fd4fc241c48633ab22bf7d8f9f30c768"}, + {file = "antsibull_build-0.69.0.tar.gz", hash = "sha256:311d137b777d1318f7685838907c115d22366d288384f5e2e753343326eb60cb"}, ] [package.dependencies] aiofiles = "*" aiohttp = ">=3.0.0" -antsibull-changelog = ">=0.24.0" -antsibull-core = ">=2.0.0,<4.0.0" +antsibull-changelog = ">=0.31.0" +antsibull-core = ">=3.4.0,<4.0.0" +antsibull-docs-parser = ">=1.1.0,<2.0.0" +antsibull-fileutils = ">=1.0.0,<2.0.0" asyncio-pool = "*" build = "*" jinja2 = "*" packaging = ">=20.0" -pydantic = "<3" +pydantic = ">=2,<3" +pyyaml = "*" semantic-version = "*" twiggy = "*" typing-extensions = "*" @@ -239,83 +245,85 @@ typing = ["mypy", "types-aiofiles", "types-docutils", "types-pyyaml", "types-set [[package]] name = "antsibull-changelog" -version = "0.29.0" +version = "0.31.1" description = "Changelog tool for Ansible-core and Ansible collections" optional = false python-versions = ">=3.9.0" files = [ - {file = "antsibull_changelog-0.29.0-py3-none-any.whl", hash = "sha256:992533e66c908929a79f4881cb8e668b9f3e90e12bf16a8bcb7a9e43d4fb3b37"}, - {file = "antsibull_changelog-0.29.0.tar.gz", hash = "sha256:b86d7e8e1a4f5ea7022f016efde2693262efe8bdf78be7f1b6e26f9673a6c70e"}, + {file = "antsibull_changelog-0.31.1-py3-none-any.whl", hash = "sha256:4b51878ee037199e42e5212b53122e4a4ccc997a783bb73496f41c7238c452e7"}, + {file = "antsibull_changelog-0.31.1.tar.gz", hash = "sha256:e76fcc49969c29ae7b8615e7ea2b4ac275a19ff3afbf3d665f1457ab12493f84"}, ] [package.dependencies] +antsibull-docutils = ">=1.0.0,<2.0.0" +antsibull-fileutils = ">=1.0.0,<2.0.0" docutils = "*" packaging = "*" -pyyaml = "*" rstcheck = ">=3.0.0,<7.0.0" semantic-version = "*" [package.extras] codeqa = ["flake8 (>=3.8.0)", "pylint", "reuse"] coverage = ["coverage[toml]"] -dev = ["black (>=24)", "coverage[toml]", "flake8 (>=3.8.0)", "isort", "mypy", "nox", "pylint", "pyre-check (>=0.9.17)", "pytest", "pytest-cov", "pytest-error-for-skips", "reuse", "types-docutils", "types-pyyaml", "types-toml"] +dev = ["black (>=24)", "coverage[toml]", "flake8 (>=3.8.0)", "isort", "mypy", "nox", "pylint", "pytest", "pytest-cov", "pytest-error-for-skips", "reuse", "types-docutils", "types-pyyaml", "types-toml"] formatters = ["black (>=24)", "isort"] test = ["pytest", "pytest-cov", "pytest-error-for-skips"] toml = ["tomli"] -typing = ["mypy", "pyre-check (>=0.9.17)", "types-docutils", "types-pyyaml", "types-toml"] +typing = ["mypy", "types-docutils", "types-pyyaml", "types-toml"] [[package]] name = "antsibull-core" -version = "3.0.2" +version = "3.4.0" description = "Tools for building the Ansible Distribution" optional = false python-versions = ">=3.9" files = [ - {file = "antsibull_core-3.0.2-py3-none-any.whl", hash = "sha256:2cfebeffe242afecc3285b3c49f6610d6f21082b1e69cc16c1e1937abfa6d192"}, - {file = "antsibull_core-3.0.2.tar.gz", hash = "sha256:293679fc1b1e7178a761583db55f8e7b641d1d1777d99dde442bf5160ccd58b3"}, + {file = "antsibull_core-3.4.0-py3-none-any.whl", hash = "sha256:7d3368d1821d002612feb0fde7401c4df547149e661ad8157f2bb36764c6da28"}, + {file = "antsibull_core-3.4.0.tar.gz", hash = "sha256:7eebcccaac5446d3cc04de8be2908becc0a02bb2395b83791ff39ab211f54492"}, ] [package.dependencies] aiofiles = "*" aiohttp = ">=3.3.0" +antsibull-fileutils = ">=1.0.0,<2.0.0" build = "*" packaging = ">=20.0" perky = "*" pydantic = ">=2.0,<3.0" -pyyaml = "*" semantic-version = "*" twiggy = ">=0.5.0" [package.extras] codeqa = ["antsibull-changelog", "flake8 (>=6.0.0)", "pylint (>=2.15.7)", "reuse"] coverage = ["coverage[toml]"] -dev = ["antsibull-changelog", "asynctest", "black (>=24)", "coverage[toml]", "cryptography", "flake8 (>=6.0.0)", "isort", "mypy", "nox", "pylint (>=2.15.7)", "pyre-check (>=0.9.17)", "pytest", "pytest-asyncio (>=0.20)", "pytest-cov", "pytest-error-for-skips", "reuse", "types-aiofiles", "types-pyyaml", "typing-extensions"] +dev = ["antsibull-changelog", "asynctest", "black (>=24)", "coverage[toml]", "cryptography", "flake8 (>=6.0.0)", "isort", "mypy", "nox", "pylint (>=2.15.7)", "pyre-check (>=0.9.17,<0.9.23)", "pytest", "pytest-asyncio (>=0.20)", "pytest-cov", "pytest-error-for-skips", "reuse", "types-aiofiles", "typing-extensions"] formatters = ["black (>=24)", "isort"] test = ["asynctest", "cryptography", "pytest", "pytest-asyncio (>=0.20)", "pytest-cov", "pytest-error-for-skips"] -typing = ["mypy", "pyre-check (>=0.9.17)", "types-aiofiles", "types-pyyaml", "typing-extensions"] +typing = ["mypy", "pyre-check (>=0.9.17,<0.9.23)", "types-aiofiles", "typing-extensions"] [[package]] name = "antsibull-docs" -version = "2.13.1" +version = "2.16.2" description = "Tools for building Ansible documentation" optional = false python-versions = ">=3.9" files = [ - {file = "antsibull_docs-2.13.1-py3-none-any.whl", hash = "sha256:c2385536beedf22ef86afad8c7c50ba757690239eb81a56c7cddc80bc001ce6e"}, - {file = "antsibull_docs-2.13.1.tar.gz", hash = "sha256:32d679d14e23b27d705fa6d2011c3d1e27d90b601bc793ff2c60b0acf8cc4a63"}, + {file = "antsibull_docs-2.16.2-py3-none-any.whl", hash = "sha256:7a529d6cba2599843c4f483ef1eef2db518b9e4e4f612affc621f434f48caf5d"}, + {file = "antsibull_docs-2.16.2.tar.gz", hash = "sha256:144095f705f1a138f832fe94a07808405efcd8b974ec75cb7b129039a358d318"}, ] [package.dependencies] aiohttp = ">=3.0.0" ansible-pygments = "*" antsibull-changelog = ">=0.24.0" -antsibull-core = ">=2.1.0,<4.0.0" +antsibull-core = ">=3.4.0,<4.0.0" antsibull-docs-parser = ">=1.1.0,<2.0.0" +antsibull-fileutils = ">=1.0.0,<2.0.0" asyncio-pool = "*" docutils = "*" jinja2 = ">=3.0" packaging = ">=20.0" -pydantic = ">=1.0.0,<3.0.0" +pydantic = ">=2.0.0,<3.0.0" pyyaml = "*" rstcheck = ">=3.0.0,<7.0.0" semantic-version = "*" @@ -350,28 +358,59 @@ test = ["pytest", "pytest-cov", "pytest-error-for-skips", "pyyaml"] typing = ["mypy", "pyre-check (>=0.9.17)"] [[package]] -name = "astroid" -version = "3.2.4" -description = "An abstract syntax tree for Python with inference support." +name = "antsibull-docutils" +version = "1.1.0" +description = "Antsibull docutils helpers" optional = false -python-versions = ">=3.8.0" +python-versions = ">=3.9.0" files = [ - {file = "astroid-3.2.4-py3-none-any.whl", hash = "sha256:413658a61eeca6202a59231abb473f932038fbcbf1666587f66d482083413a25"}, - {file = "astroid-3.2.4.tar.gz", hash = "sha256:0e14202810b30da1b735827f78f5157be2bbd4a7a59b7707ca0bfc2fb4c0063a"}, + {file = "antsibull_docutils-1.1.0-py3-none-any.whl", hash = "sha256:922dac4c33089c12cf35a73b159ebe86fd29aeb4f697a97f78a7a444734afbd9"}, + {file = "antsibull_docutils-1.1.0.tar.gz", hash = "sha256:6fbeb4ebbd957099f98e85f2687d39fa98c9e2ff23745cf368328d0512b3861d"}, ] [package.dependencies] -typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} +docutils = "*" + +[package.extras] +codeqa = ["antsibull-changelog", "flake8 (>=3.8.0)", "pylint", "reuse"] +coverage = ["coverage[toml]"] +dev = ["antsibull-changelog", "black (>=24)", "coverage[toml]", "flake8 (>=3.8.0)", "isort", "mypy", "nox", "pylint", "pytest", "pytest-cov", "pytest-error-for-skips", "reuse", "types-docutils", "types-pyyaml", "types-toml"] +formatters = ["black (>=24)", "isort"] +test = ["pytest", "pytest-cov", "pytest-error-for-skips"] +typing = ["mypy", "types-docutils", "types-pyyaml", "types-toml"] [[package]] -name = "async-timeout" -version = "4.0.3" -description = "Timeout context manager for asyncio programs" +name = "antsibull-fileutils" +version = "1.1.0" +description = "Tools for building the Ansible Distribution" optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" +files = [ + {file = "antsibull_fileutils-1.1.0-py3-none-any.whl", hash = "sha256:558c517b41973b3716f2edc726bf04bc2bef5a0662ee609378f04a66d22d2e06"}, + {file = "antsibull_fileutils-1.1.0.tar.gz", hash = "sha256:69e35bc5d8025c52eac3660290e32b691e08b1d3603da1a5b20d16d75ec39f98"}, +] + +[package.dependencies] +aiofiles = "*" +pyyaml = "*" + +[package.extras] +codeqa = ["antsibull-changelog", "flake8 (>=6.0.0)", "pylint (>=2.15.7)", "reuse"] +coverage = ["coverage[toml]"] +dev = ["antsibull-changelog", "black (>=24)", "coverage[toml]", "flake8 (>=6.0.0)", "isort", "mypy", "nox", "pylint (>=2.15.7)", "pytest", "pytest-asyncio (>=0.20)", "pytest-cov", "pytest-error-for-skips", "reuse", "types-aiofiles", "types-pyyaml", "typing-extensions"] +formatters = ["black (>=24)", "isort"] +test = ["pytest", "pytest-asyncio (>=0.20)", "pytest-cov", "pytest-error-for-skips"] +typing = ["mypy", "types-aiofiles", "types-pyyaml", "typing-extensions"] + +[[package]] +name = "astroid" +version = "3.3.8" +description = "An abstract syntax tree for Python with inference support." +optional = false +python-versions = ">=3.9.0" files = [ - {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"}, - {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"}, + {file = "astroid-3.3.8-py3-none-any.whl", hash = "sha256:187ccc0c248bfbba564826c26f070494f7bc964fd286b6d9fff4420e55de828c"}, + {file = "astroid-3.3.8.tar.gz", hash = "sha256:a88c7994f914a4ea8572fac479459f4955eeccc877be3f2d959a33273b0cf40b"}, ] [[package]] @@ -387,19 +426,19 @@ files = [ [[package]] name = "attrs" -version = "24.2.0" +version = "24.3.0" description = "Classes Without Boilerplate" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "attrs-24.2.0-py3-none-any.whl", hash = "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"}, - {file = "attrs-24.2.0.tar.gz", hash = "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346"}, + {file = "attrs-24.3.0-py3-none-any.whl", hash = "sha256:ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308"}, + {file = "attrs-24.3.0.tar.gz", hash = "sha256:8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff"}, ] [package.extras] benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] @@ -420,33 +459,33 @@ dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] [[package]] name = "black" -version = "24.8.0" +version = "24.10.0" description = "The uncompromising code formatter." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "black-24.8.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:09cdeb74d494ec023ded657f7092ba518e8cf78fa8386155e4a03fdcc44679e6"}, - {file = "black-24.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:81c6742da39f33b08e791da38410f32e27d632260e599df7245cccee2064afeb"}, - {file = "black-24.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:707a1ca89221bc8a1a64fb5e15ef39cd755633daa672a9db7498d1c19de66a42"}, - {file = "black-24.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:d6417535d99c37cee4091a2f24eb2b6d5ec42b144d50f1f2e436d9fe1916fe1a"}, - {file = "black-24.8.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fb6e2c0b86bbd43dee042e48059c9ad7830abd5c94b0bc518c0eeec57c3eddc1"}, - {file = "black-24.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:837fd281f1908d0076844bc2b801ad2d369c78c45cf800cad7b61686051041af"}, - {file = "black-24.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:62e8730977f0b77998029da7971fa896ceefa2c4c4933fcd593fa599ecbf97a4"}, - {file = "black-24.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:72901b4913cbac8972ad911dc4098d5753704d1f3c56e44ae8dce99eecb0e3af"}, - {file = "black-24.8.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7c046c1d1eeb7aea9335da62472481d3bbf3fd986e093cffd35f4385c94ae368"}, - {file = "black-24.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:649f6d84ccbae73ab767e206772cc2d7a393a001070a4c814a546afd0d423aed"}, - {file = "black-24.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2b59b250fdba5f9a9cd9d0ece6e6d993d91ce877d121d161e4698af3eb9c1018"}, - {file = "black-24.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:6e55d30d44bed36593c3163b9bc63bf58b3b30e4611e4d88a0c3c239930ed5b2"}, - {file = "black-24.8.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:505289f17ceda596658ae81b61ebbe2d9b25aa78067035184ed0a9d855d18afd"}, - {file = "black-24.8.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b19c9ad992c7883ad84c9b22aaa73562a16b819c1d8db7a1a1a49fb7ec13c7d2"}, - {file = "black-24.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f13f7f386f86f8121d76599114bb8c17b69d962137fc70efe56137727c7047e"}, - {file = "black-24.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:f490dbd59680d809ca31efdae20e634f3fae27fba3ce0ba3208333b713bc3920"}, - {file = "black-24.8.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eab4dd44ce80dea27dc69db40dab62d4ca96112f87996bca68cd75639aeb2e4c"}, - {file = "black-24.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3c4285573d4897a7610054af5a890bde7c65cb466040c5f0c8b732812d7f0e5e"}, - {file = "black-24.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9e84e33b37be070ba135176c123ae52a51f82306def9f7d063ee302ecab2cf47"}, - {file = "black-24.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:73bbf84ed136e45d451a260c6b73ed674652f90a2b3211d6a35e78054563a9bb"}, - {file = "black-24.8.0-py3-none-any.whl", hash = "sha256:972085c618ee94f402da1af548a4f218c754ea7e5dc70acb168bfaca4c2542ed"}, - {file = "black-24.8.0.tar.gz", hash = "sha256:2500945420b6784c38b9ee885af039f5e7471ef284ab03fa35ecdde4688cd83f"}, + {file = "black-24.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e6668650ea4b685440857138e5fe40cde4d652633b1bdffc62933d0db4ed9812"}, + {file = "black-24.10.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1c536fcf674217e87b8cc3657b81809d3c085d7bf3ef262ead700da345bfa6ea"}, + {file = "black-24.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:649fff99a20bd06c6f727d2a27f401331dc0cc861fb69cde910fe95b01b5928f"}, + {file = "black-24.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:fe4d6476887de70546212c99ac9bd803d90b42fc4767f058a0baa895013fbb3e"}, + {file = "black-24.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5a2221696a8224e335c28816a9d331a6c2ae15a2ee34ec857dcf3e45dbfa99ad"}, + {file = "black-24.10.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f9da3333530dbcecc1be13e69c250ed8dfa67f43c4005fb537bb426e19200d50"}, + {file = "black-24.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4007b1393d902b48b36958a216c20c4482f601569d19ed1df294a496eb366392"}, + {file = "black-24.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:394d4ddc64782e51153eadcaaca95144ac4c35e27ef9b0a42e121ae7e57a9175"}, + {file = "black-24.10.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b5e39e0fae001df40f95bd8cc36b9165c5e2ea88900167bddf258bacef9bbdc3"}, + {file = "black-24.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d37d422772111794b26757c5b55a3eade028aa3fde43121ab7b673d050949d65"}, + {file = "black-24.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:14b3502784f09ce2443830e3133dacf2c0110d45191ed470ecb04d0f5f6fcb0f"}, + {file = "black-24.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:30d2c30dc5139211dda799758559d1b049f7f14c580c409d6ad925b74a4208a8"}, + {file = "black-24.10.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:1cbacacb19e922a1d75ef2b6ccaefcd6e93a2c05ede32f06a21386a04cedb981"}, + {file = "black-24.10.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1f93102e0c5bb3907451063e08b9876dbeac810e7da5a8bfb7aeb5a9ef89066b"}, + {file = "black-24.10.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ddacb691cdcdf77b96f549cf9591701d8db36b2f19519373d60d31746068dbf2"}, + {file = "black-24.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:680359d932801c76d2e9c9068d05c6b107f2584b2a5b88831c83962eb9984c1b"}, + {file = "black-24.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:17374989640fbca88b6a448129cd1745c5eb8d9547b464f281b251dd00155ccd"}, + {file = "black-24.10.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:63f626344343083322233f175aaf372d326de8436f5928c042639a4afbbf1d3f"}, + {file = "black-24.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfa1d0cb6200857f1923b602f978386a3a2758a65b52e0950299ea014be6800"}, + {file = "black-24.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:2cd9c95431d94adc56600710f8813ee27eea544dd118d45896bb734e9d7a0dc7"}, + {file = "black-24.10.0-py3-none-any.whl", hash = "sha256:3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d"}, + {file = "black-24.10.0.tar.gz", hash = "sha256:846ea64c97afe3bc677b761787993be4991810ecc7a4a937816dd6bddedc4875"}, ] [package.dependencies] @@ -455,32 +494,28 @@ mypy-extensions = ">=0.4.3" packaging = ">=22.0" pathspec = ">=0.9.0" platformdirs = ">=2" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} [package.extras] colorama = ["colorama (>=0.4.3)"] -d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"] +d = ["aiohttp (>=3.10)"] jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "build" -version = "1.2.2" +version = "1.2.2.post1" description = "A simple, correct Python build frontend" optional = false python-versions = ">=3.8" files = [ - {file = "build-1.2.2-py3-none-any.whl", hash = "sha256:277ccc71619d98afdd841a0e96ac9fe1593b823af481d3b0cea748e8894e0613"}, - {file = "build-1.2.2.tar.gz", hash = "sha256:119b2fb462adef986483438377a13b2f42064a2a3a4161f24a0cca698a07ac8c"}, + {file = "build-1.2.2.post1-py3-none-any.whl", hash = "sha256:1d61c0887fa860c01971625baae8bdd338e517b836a2f70dd1f7aa3a6b2fc5b5"}, + {file = "build-1.2.2.post1.tar.gz", hash = "sha256:b36993e92ca9375a219c99e606a122ff365a760a2d4bba0caa09bd5278b608b7"}, ] [package.dependencies] colorama = {version = "*", markers = "os_name == \"nt\""} -importlib-metadata = {version = ">=4.6", markers = "python_full_version < \"3.10.2\""} packaging = ">=19.1" pyproject_hooks = "*" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} [package.extras] docs = ["furo (>=2023.08.17)", "sphinx (>=7.0,<8.0)", "sphinx-argparse-cli (>=1.5)", "sphinx-autodoc-typehints (>=1.10)", "sphinx-issues (>=3.0.0)"] @@ -491,13 +526,13 @@ virtualenv = ["virtualenv (>=20.0.35)"] [[package]] name = "certifi" -version = "2024.8.30" +version = "2024.12.14" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2024.8.30-py3-none-any.whl", hash = "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8"}, - {file = "certifi-2024.8.30.tar.gz", hash = "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9"}, + {file = "certifi-2024.12.14-py3-none-any.whl", hash = "sha256:1275f7a45be9464efc1173084eaa30f866fe2e47d389406136d332ed4967ec56"}, + {file = "certifi-2024.12.14.tar.gz", hash = "sha256:b650d30f370c2b724812bee08008be0c4163b163ddaec3f2546c1caf65f191db"}, ] [[package]] @@ -581,112 +616,114 @@ pycparser = "*" [[package]] name = "charset-normalizer" -version = "3.3.2" +version = "3.4.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false -python-versions = ">=3.7.0" -files = [ - {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, +python-versions = ">=3.7" +files = [ + {file = "charset_normalizer-3.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win32.whl", hash = "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win32.whl", hash = "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win32.whl", hash = "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win32.whl", hash = "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win32.whl", hash = "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win32.whl", hash = "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win32.whl", hash = "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765"}, + {file = "charset_normalizer-3.4.1-py3-none-any.whl", hash = "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85"}, + {file = "charset_normalizer-3.4.1.tar.gz", hash = "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3"}, ] [[package]] name = "click" -version = "8.1.7" +version = "8.1.8" description = "Composable command line interface toolkit" optional = false python-versions = ">=3.7" files = [ - {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, - {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, + {file = "click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2"}, + {file = "click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a"}, ] [package.dependencies] @@ -720,63 +757,83 @@ files = [ [[package]] name = "coverage" -version = "7.3.2" +version = "7.6.1" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d872145f3a3231a5f20fd48500274d7df222e291d90baa2026cc5152b7ce86bf"}, - {file = "coverage-7.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:310b3bb9c91ea66d59c53fa4989f57d2436e08f18fb2f421a1b0b6b8cc7fffda"}, - {file = "coverage-7.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f47d39359e2c3779c5331fc740cf4bce6d9d680a7b4b4ead97056a0ae07cb49a"}, - {file = "coverage-7.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aa72dbaf2c2068404b9870d93436e6d23addd8bbe9295f49cbca83f6e278179c"}, - {file = "coverage-7.3.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:beaa5c1b4777f03fc63dfd2a6bd820f73f036bfb10e925fce067b00a340d0f3f"}, - {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:dbc1b46b92186cc8074fee9d9fbb97a9dd06c6cbbef391c2f59d80eabdf0faa6"}, - {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:315a989e861031334d7bee1f9113c8770472db2ac484e5b8c3173428360a9148"}, - {file = "coverage-7.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:d1bc430677773397f64a5c88cb522ea43175ff16f8bfcc89d467d974cb2274f9"}, - {file = "coverage-7.3.2-cp310-cp310-win32.whl", hash = "sha256:a889ae02f43aa45032afe364c8ae84ad3c54828c2faa44f3bfcafecb5c96b02f"}, - {file = "coverage-7.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:c0ba320de3fb8c6ec16e0be17ee1d3d69adcda99406c43c0409cb5c41788a611"}, - {file = "coverage-7.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ac8c802fa29843a72d32ec56d0ca792ad15a302b28ca6203389afe21f8fa062c"}, - {file = "coverage-7.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:89a937174104339e3a3ffcf9f446c00e3a806c28b1841c63edb2b369310fd074"}, - {file = "coverage-7.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e267e9e2b574a176ddb983399dec325a80dbe161f1a32715c780b5d14b5f583a"}, - {file = "coverage-7.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2443cbda35df0d35dcfb9bf8f3c02c57c1d6111169e3c85fc1fcc05e0c9f39a3"}, - {file = "coverage-7.3.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4175e10cc8dda0265653e8714b3174430b07c1dca8957f4966cbd6c2b1b8065a"}, - {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf38419fb1a347aaf63481c00f0bdc86889d9fbf3f25109cf96c26b403fda1"}, - {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:5c913b556a116b8d5f6ef834038ba983834d887d82187c8f73dec21049abd65c"}, - {file = "coverage-7.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1981f785239e4e39e6444c63a98da3a1db8e971cb9ceb50a945ba6296b43f312"}, - {file = "coverage-7.3.2-cp311-cp311-win32.whl", hash = "sha256:43668cabd5ca8258f5954f27a3aaf78757e6acf13c17604d89648ecc0cc66640"}, - {file = "coverage-7.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10c39c0452bf6e694511c901426d6b5ac005acc0f78ff265dbe36bf81f808a2"}, - {file = "coverage-7.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:4cbae1051ab791debecc4a5dcc4a1ff45fc27b91b9aee165c8a27514dd160836"}, - {file = "coverage-7.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12d15ab5833a997716d76f2ac1e4b4d536814fc213c85ca72756c19e5a6b3d63"}, - {file = "coverage-7.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c7bba973ebee5e56fe9251300c00f1579652587a9f4a5ed8404b15a0471f216"}, - {file = "coverage-7.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fe494faa90ce6381770746077243231e0b83ff3f17069d748f645617cefe19d4"}, - {file = "coverage-7.3.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6e9589bd04d0461a417562649522575d8752904d35c12907d8c9dfeba588faf"}, - {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d51ac2a26f71da1b57f2dc81d0e108b6ab177e7d30e774db90675467c847bbdf"}, - {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:99b89d9f76070237975b315b3d5f4d6956ae354a4c92ac2388a5695516e47c84"}, - {file = "coverage-7.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fa28e909776dc69efb6ed975a63691bc8172b64ff357e663a1bb06ff3c9b589a"}, - {file = "coverage-7.3.2-cp312-cp312-win32.whl", hash = "sha256:289fe43bf45a575e3ab10b26d7b6f2ddb9ee2dba447499f5401cfb5ecb8196bb"}, - {file = "coverage-7.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:7dbc3ed60e8659bc59b6b304b43ff9c3ed858da2839c78b804973f613d3e92ed"}, - {file = "coverage-7.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f94b734214ea6a36fe16e96a70d941af80ff3bfd716c141300d95ebc85339738"}, - {file = "coverage-7.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:af3d828d2c1cbae52d34bdbb22fcd94d1ce715d95f1a012354a75e5913f1bda2"}, - {file = "coverage-7.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:630b13e3036e13c7adc480ca42fa7afc2a5d938081d28e20903cf7fd687872e2"}, - {file = "coverage-7.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c9eacf273e885b02a0273bb3a2170f30e2d53a6d53b72dbe02d6701b5296101c"}, - {file = "coverage-7.3.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8f17966e861ff97305e0801134e69db33b143bbfb36436efb9cfff6ec7b2fd9"}, - {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b4275802d16882cf9c8b3d057a0839acb07ee9379fa2749eca54efbce1535b82"}, - {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:72c0cfa5250f483181e677ebc97133ea1ab3eb68645e494775deb6a7f6f83901"}, - {file = "coverage-7.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cb536f0dcd14149425996821a168f6e269d7dcd2c273a8bff8201e79f5104e76"}, - {file = "coverage-7.3.2-cp38-cp38-win32.whl", hash = "sha256:307adb8bd3abe389a471e649038a71b4eb13bfd6b7dd9a129fa856f5c695cf92"}, - {file = "coverage-7.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:88ed2c30a49ea81ea3b7f172e0269c182a44c236eb394718f976239892c0a27a"}, - {file = "coverage-7.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b631c92dfe601adf8f5ebc7fc13ced6bb6e9609b19d9a8cd59fa47c4186ad1ce"}, - {file = "coverage-7.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d3d9df4051c4a7d13036524b66ecf7a7537d14c18a384043f30a303b146164e9"}, - {file = "coverage-7.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7363d3b6a1119ef05015959ca24a9afc0ea8a02c687fe7e2d557705375c01f"}, - {file = "coverage-7.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f11cc3c967a09d3695d2a6f03fb3e6236622b93be7a4b5dc09166a861be6d25"}, - {file = "coverage-7.3.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:149de1d2401ae4655c436a3dced6dd153f4c3309f599c3d4bd97ab172eaf02d9"}, - {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:3a4006916aa6fee7cd38db3bfc95aa9c54ebb4ffbfc47c677c8bba949ceba0a6"}, - {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9028a3871280110d6e1aa2df1afd5ef003bab5fb1ef421d6dc748ae1c8ef2ebc"}, - {file = "coverage-7.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9f805d62aec8eb92bab5b61c0f07329275b6f41c97d80e847b03eb894f38d083"}, - {file = "coverage-7.3.2-cp39-cp39-win32.whl", hash = "sha256:d1c88ec1a7ff4ebca0219f5b1ef863451d828cccf889c173e1253aa84b1e07ce"}, - {file = "coverage-7.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b4767da59464bb593c07afceaddea61b154136300881844768037fd5e859353f"}, - {file = "coverage-7.3.2-pp38.pp39.pp310-none-any.whl", hash = "sha256:ae97af89f0fbf373400970c0a21eef5aa941ffeed90aee43650b81f7d7f47637"}, - {file = "coverage-7.3.2.tar.gz", hash = "sha256:be32ad29341b0170e795ca590e1c07e81fc061cb5b10c74ce7203491484404ef"}, + {file = "coverage-7.6.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b06079abebbc0e89e6163b8e8f0e16270124c154dc6e4a47b413dd538859af16"}, + {file = "coverage-7.6.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cf4b19715bccd7ee27b6b120e7e9dd56037b9c0681dcc1adc9ba9db3d417fa36"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61c0abb4c85b095a784ef23fdd4aede7a2628478e7baba7c5e3deba61070a02"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fd21f6ae3f08b41004dfb433fa895d858f3f5979e7762d052b12aef444e29afc"}, + {file = "coverage-7.6.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f59d57baca39b32db42b83b2a7ba6f47ad9c394ec2076b084c3f029b7afca23"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a1ac0ae2b8bd743b88ed0502544847c3053d7171a3cff9228af618a068ed9c34"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e6a08c0be454c3b3beb105c0596ebdc2371fab6bb90c0c0297f4e58fd7e1012c"}, + {file = "coverage-7.6.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f5796e664fe802da4f57a168c85359a8fbf3eab5e55cd4e4569fbacecc903959"}, + {file = "coverage-7.6.1-cp310-cp310-win32.whl", hash = "sha256:7bb65125fcbef8d989fa1dd0e8a060999497629ca5b0efbca209588a73356232"}, + {file = "coverage-7.6.1-cp310-cp310-win_amd64.whl", hash = "sha256:3115a95daa9bdba70aea750db7b96b37259a81a709223c8448fa97727d546fe0"}, + {file = "coverage-7.6.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7dea0889685db8550f839fa202744652e87c60015029ce3f60e006f8c4462c93"}, + {file = "coverage-7.6.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ed37bd3c3b063412f7620464a9ac1314d33100329f39799255fb8d3027da50d3"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d85f5e9a5f8b73e2350097c3756ef7e785f55bd71205defa0bfdaf96c31616ff"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bc572be474cafb617672c43fe989d6e48d3c83af02ce8de73fff1c6bb3c198d"}, + {file = "coverage-7.6.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c0420b573964c760df9e9e86d1a9a622d0d27f417e1a949a8a66dd7bcee7bc6"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1f4aa8219db826ce6be7099d559f8ec311549bfc4046f7f9fe9b5cea5c581c56"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:fc5a77d0c516700ebad189b587de289a20a78324bc54baee03dd486f0855d234"}, + {file = "coverage-7.6.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b48f312cca9621272ae49008c7f613337c53fadca647d6384cc129d2996d1133"}, + {file = "coverage-7.6.1-cp311-cp311-win32.whl", hash = "sha256:1125ca0e5fd475cbbba3bb67ae20bd2c23a98fac4e32412883f9bcbaa81c314c"}, + {file = "coverage-7.6.1-cp311-cp311-win_amd64.whl", hash = "sha256:8ae539519c4c040c5ffd0632784e21b2f03fc1340752af711f33e5be83a9d6c6"}, + {file = "coverage-7.6.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:95cae0efeb032af8458fc27d191f85d1717b1d4e49f7cb226cf526ff28179778"}, + {file = "coverage-7.6.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5621a9175cf9d0b0c84c2ef2b12e9f5f5071357c4d2ea6ca1cf01814f45d2391"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:260933720fdcd75340e7dbe9060655aff3af1f0c5d20f46b57f262ab6c86a5e8"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07e2ca0ad381b91350c0ed49d52699b625aab2b44b65e1b4e02fa9df0e92ad2d"}, + {file = "coverage-7.6.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c44fee9975f04b33331cb8eb272827111efc8930cfd582e0320613263ca849ca"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:877abb17e6339d96bf08e7a622d05095e72b71f8afd8a9fefc82cf30ed944163"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:3e0cadcf6733c09154b461f1ca72d5416635e5e4ec4e536192180d34ec160f8a"}, + {file = "coverage-7.6.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c3c02d12f837d9683e5ab2f3d9844dc57655b92c74e286c262e0fc54213c216d"}, + {file = "coverage-7.6.1-cp312-cp312-win32.whl", hash = "sha256:e05882b70b87a18d937ca6768ff33cc3f72847cbc4de4491c8e73880766718e5"}, + {file = "coverage-7.6.1-cp312-cp312-win_amd64.whl", hash = "sha256:b5d7b556859dd85f3a541db6a4e0167b86e7273e1cdc973e5b175166bb634fdb"}, + {file = "coverage-7.6.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a4acd025ecc06185ba2b801f2de85546e0b8ac787cf9d3b06e7e2a69f925b106"}, + {file = "coverage-7.6.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a6d3adcf24b624a7b778533480e32434a39ad8fa30c315208f6d3e5542aeb6e9"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0c212c49b6c10e6951362f7c6df3329f04c2b1c28499563d4035d964ab8e08c"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6e81d7a3e58882450ec4186ca59a3f20a5d4440f25b1cff6f0902ad890e6748a"}, + {file = "coverage-7.6.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78b260de9790fd81e69401c2dc8b17da47c8038176a79092a89cb2b7d945d060"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a78d169acd38300060b28d600344a803628c3fd585c912cacc9ea8790fe96862"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2c09f4ce52cb99dd7505cd0fc8e0e37c77b87f46bc9c1eb03fe3bc9991085388"}, + {file = "coverage-7.6.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6878ef48d4227aace338d88c48738a4258213cd7b74fd9a3d4d7582bb1d8a155"}, + {file = "coverage-7.6.1-cp313-cp313-win32.whl", hash = "sha256:44df346d5215a8c0e360307d46ffaabe0f5d3502c8a1cefd700b34baf31d411a"}, + {file = "coverage-7.6.1-cp313-cp313-win_amd64.whl", hash = "sha256:8284cf8c0dd272a247bc154eb6c95548722dce90d098c17a883ed36e67cdb129"}, + {file = "coverage-7.6.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:d3296782ca4eab572a1a4eca686d8bfb00226300dcefdf43faa25b5242ab8a3e"}, + {file = "coverage-7.6.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:502753043567491d3ff6d08629270127e0c31d4184c4c8d98f92c26f65019962"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a89ecca80709d4076b95f89f308544ec8f7b4727e8a547913a35f16717856cb"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a318d68e92e80af8b00fa99609796fdbcdfef3629c77c6283566c6f02c6d6704"}, + {file = "coverage-7.6.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13b0a73a0896988f053e4fbb7de6d93388e6dd292b0d87ee51d106f2c11b465b"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4421712dbfc5562150f7554f13dde997a2e932a6b5f352edcce948a815efee6f"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:166811d20dfea725e2e4baa71fffd6c968a958577848d2131f39b60043400223"}, + {file = "coverage-7.6.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:225667980479a17db1048cb2bf8bfb39b8e5be8f164b8f6628b64f78a72cf9d3"}, + {file = "coverage-7.6.1-cp313-cp313t-win32.whl", hash = "sha256:170d444ab405852903b7d04ea9ae9b98f98ab6d7e63e1115e82620807519797f"}, + {file = "coverage-7.6.1-cp313-cp313t-win_amd64.whl", hash = "sha256:b9f222de8cded79c49bf184bdbc06630d4c58eec9459b939b4a690c82ed05657"}, + {file = "coverage-7.6.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6db04803b6c7291985a761004e9060b2bca08da6d04f26a7f2294b8623a0c1a0"}, + {file = "coverage-7.6.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:f1adfc8ac319e1a348af294106bc6a8458a0f1633cc62a1446aebc30c5fa186a"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a95324a9de9650a729239daea117df21f4b9868ce32e63f8b650ebe6cef5595b"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b43c03669dc4618ec25270b06ecd3ee4fa94c7f9b3c14bae6571ca00ef98b0d3"}, + {file = "coverage-7.6.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8929543a7192c13d177b770008bc4e8119f2e1f881d563fc6b6305d2d0ebe9de"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:a09ece4a69cf399510c8ab25e0950d9cf2b42f7b3cb0374f95d2e2ff594478a6"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:9054a0754de38d9dbd01a46621636689124d666bad1936d76c0341f7d71bf569"}, + {file = "coverage-7.6.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0dbde0f4aa9a16fa4d754356a8f2e36296ff4d83994b2c9d8398aa32f222f989"}, + {file = "coverage-7.6.1-cp38-cp38-win32.whl", hash = "sha256:da511e6ad4f7323ee5702e6633085fb76c2f893aaf8ce4c51a0ba4fc07580ea7"}, + {file = "coverage-7.6.1-cp38-cp38-win_amd64.whl", hash = "sha256:3f1156e3e8f2872197af3840d8ad307a9dd18e615dc64d9ee41696f287c57ad8"}, + {file = "coverage-7.6.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:abd5fd0db5f4dc9289408aaf34908072f805ff7792632250dcb36dc591d24255"}, + {file = "coverage-7.6.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:547f45fa1a93154bd82050a7f3cddbc1a7a4dd2a9bf5cb7d06f4ae29fe94eaf8"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:645786266c8f18a931b65bfcefdbf6952dd0dea98feee39bd188607a9d307ed2"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9e0b2df163b8ed01d515807af24f63de04bebcecbd6c3bfeff88385789fdf75a"}, + {file = "coverage-7.6.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:609b06f178fe8e9f89ef676532760ec0b4deea15e9969bf754b37f7c40326dbc"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:702855feff378050ae4f741045e19a32d57d19f3e0676d589df0575008ea5004"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:2bdb062ea438f22d99cba0d7829c2ef0af1d768d1e4a4f528087224c90b132cb"}, + {file = "coverage-7.6.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:9c56863d44bd1c4fe2abb8a4d6f5371d197f1ac0ebdee542f07f35895fc07f36"}, + {file = "coverage-7.6.1-cp39-cp39-win32.whl", hash = "sha256:6e2cd258d7d927d09493c8df1ce9174ad01b381d4729a9d8d4e38670ca24774c"}, + {file = "coverage-7.6.1-cp39-cp39-win_amd64.whl", hash = "sha256:06a737c882bd26d0d6ee7269b20b12f14a8704807a01056c80bb881a4b2ce6ca"}, + {file = "coverage-7.6.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:e9a6e0eb86070e8ccaedfbd9d38fec54864f3125ab95419970575b42af7541df"}, + {file = "coverage-7.6.1.tar.gz", hash = "sha256:953510dfb7b12ab69d20135a0662397f077c59b1e6379a768e97c59d852ee51d"}, ] [package.extras] @@ -784,80 +841,80 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "43.0.1" +version = "44.0.0" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false -python-versions = ">=3.7" -files = [ - {file = "cryptography-43.0.1-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:8385d98f6a3bf8bb2d65a73e17ed87a3ba84f6991c155691c51112075f9ffc5d"}, - {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:27e613d7077ac613e399270253259d9d53872aaf657471473ebfc9a52935c062"}, - {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68aaecc4178e90719e95298515979814bda0cbada1256a4485414860bd7ab962"}, - {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:de41fd81a41e53267cb020bb3a7212861da53a7d39f863585d13ea11049cf277"}, - {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f98bf604c82c416bc829e490c700ca1553eafdf2912a91e23a79d97d9801372a"}, - {file = "cryptography-43.0.1-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:61ec41068b7b74268fa86e3e9e12b9f0c21fcf65434571dbb13d954bceb08042"}, - {file = "cryptography-43.0.1-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:014f58110f53237ace6a408b5beb6c427b64e084eb451ef25a28308270086494"}, - {file = "cryptography-43.0.1-cp37-abi3-win32.whl", hash = "sha256:2bd51274dcd59f09dd952afb696bf9c61a7a49dfc764c04dd33ef7a6b502a1e2"}, - {file = "cryptography-43.0.1-cp37-abi3-win_amd64.whl", hash = "sha256:666ae11966643886c2987b3b721899d250855718d6d9ce41b521252a17985f4d"}, - {file = "cryptography-43.0.1-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:ac119bb76b9faa00f48128b7f5679e1d8d437365c5d26f1c2c3f0da4ce1b553d"}, - {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1bbcce1a551e262dfbafb6e6252f1ae36a248e615ca44ba302df077a846a8806"}, - {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58d4e9129985185a06d849aa6df265bdd5a74ca6e1b736a77959b498e0505b85"}, - {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:d03a475165f3134f773d1388aeb19c2d25ba88b6a9733c5c590b9ff7bbfa2e0c"}, - {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:511f4273808ab590912a93ddb4e3914dfd8a388fed883361b02dea3791f292e1"}, - {file = "cryptography-43.0.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:80eda8b3e173f0f247f711eef62be51b599b5d425c429b5d4ca6a05e9e856baa"}, - {file = "cryptography-43.0.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:38926c50cff6f533f8a2dae3d7f19541432610d114a70808f0926d5aaa7121e4"}, - {file = "cryptography-43.0.1-cp39-abi3-win32.whl", hash = "sha256:a575913fb06e05e6b4b814d7f7468c2c660e8bb16d8d5a1faf9b33ccc569dd47"}, - {file = "cryptography-43.0.1-cp39-abi3-win_amd64.whl", hash = "sha256:d75601ad10b059ec832e78823b348bfa1a59f6b8d545db3a24fd44362a1564cb"}, - {file = "cryptography-43.0.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:ea25acb556320250756e53f9e20a4177515f012c9eaea17eb7587a8c4d8ae034"}, - {file = "cryptography-43.0.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c1332724be35d23a854994ff0b66530119500b6053d0bd3363265f7e5e77288d"}, - {file = "cryptography-43.0.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:fba1007b3ef89946dbbb515aeeb41e30203b004f0b4b00e5e16078b518563289"}, - {file = "cryptography-43.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5b43d1ea6b378b54a1dc99dd8a2b5be47658fe9a7ce0a58ff0b55f4b43ef2b84"}, - {file = "cryptography-43.0.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:88cce104c36870d70c49c7c8fd22885875d950d9ee6ab54df2745f83ba0dc365"}, - {file = "cryptography-43.0.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:9d3cdb25fa98afdd3d0892d132b8d7139e2c087da1712041f6b762e4f807cc96"}, - {file = "cryptography-43.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e710bf40870f4db63c3d7d929aa9e09e4e7ee219e703f949ec4073b4294f6172"}, - {file = "cryptography-43.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7c05650fe8023c5ed0d46793d4b7d7e6cd9c04e68eabe5b0aeea836e37bdcec2"}, - {file = "cryptography-43.0.1.tar.gz", hash = "sha256:203e92a75716d8cfb491dc47c79e17d0d9207ccffcbcb35f598fbe463ae3444d"}, +python-versions = "!=3.9.0,!=3.9.1,>=3.7" +files = [ + {file = "cryptography-44.0.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:84111ad4ff3f6253820e6d3e58be2cc2a00adb29335d4cacb5ab4d4d34f2a123"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b15492a11f9e1b62ba9d73c210e2416724633167de94607ec6069ef724fad092"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:831c3c4d0774e488fdc83a1923b49b9957d33287de923d58ebd3cec47a0ae43f"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:761817a3377ef15ac23cd7834715081791d4ec77f9297ee694ca1ee9c2c7e5eb"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:3c672a53c0fb4725a29c303be906d3c1fa99c32f58abe008a82705f9ee96f40b"}, + {file = "cryptography-44.0.0-cp37-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:4ac4c9f37eba52cb6fbeaf5b59c152ea976726b865bd4cf87883a7e7006cc543"}, + {file = "cryptography-44.0.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ed3534eb1090483c96178fcb0f8893719d96d5274dfde98aa6add34614e97c8e"}, + {file = "cryptography-44.0.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:f3f6fdfa89ee2d9d496e2c087cebef9d4fcbb0ad63c40e821b39f74bf48d9c5e"}, + {file = "cryptography-44.0.0-cp37-abi3-win32.whl", hash = "sha256:eb33480f1bad5b78233b0ad3e1b0be21e8ef1da745d8d2aecbb20671658b9053"}, + {file = "cryptography-44.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:abc998e0c0eee3c8a1904221d3f67dcfa76422b23620173e28c11d3e626c21bd"}, + {file = "cryptography-44.0.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:660cb7312a08bc38be15b696462fa7cc7cd85c3ed9c576e81f4dc4d8b2b31591"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1923cb251c04be85eec9fda837661c67c1049063305d6be5721643c22dd4e2b7"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:404fdc66ee5f83a1388be54300ae978b2efd538018de18556dde92575e05defc"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:c5eb858beed7835e5ad1faba59e865109f3e52b3783b9ac21e7e47dc5554e289"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f53c2c87e0fb4b0c00fa9571082a057e37690a8f12233306161c8f4b819960b7"}, + {file = "cryptography-44.0.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:9e6fc8a08e116fb7c7dd1f040074c9d7b51d74a8ea40d4df2fc7aa08b76b9e6c"}, + {file = "cryptography-44.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d2436114e46b36d00f8b72ff57e598978b37399d2786fd39793c36c6d5cb1c64"}, + {file = "cryptography-44.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a01956ddfa0a6790d594f5b34fc1bfa6098aca434696a03cfdbe469b8ed79285"}, + {file = "cryptography-44.0.0-cp39-abi3-win32.whl", hash = "sha256:eca27345e1214d1b9f9490d200f9db5a874479be914199194e746c893788d417"}, + {file = "cryptography-44.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:708ee5f1bafe76d041b53a4f95eb28cdeb8d18da17e597d46d7833ee59b97ede"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:37d76e6863da3774cd9db5b409a9ecfd2c71c981c38788d3fcfaf177f447b731"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:f677e1268c4e23420c3acade68fac427fffcb8d19d7df95ed7ad17cdef8404f4"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f5e7cb1e5e56ca0933b4873c0220a78b773b24d40d186b6738080b73d3d0a756"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_34_aarch64.whl", hash = "sha256:8b3e6eae66cf54701ee7d9c83c30ac0a1e3fa17be486033000f2a73a12ab507c"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-manylinux_2_34_x86_64.whl", hash = "sha256:be4ce505894d15d5c5037167ffb7f0ae90b7be6f2a98f9a5c3442395501c32fa"}, + {file = "cryptography-44.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:62901fb618f74d7d81bf408c8719e9ec14d863086efe4185afd07c352aee1d2c"}, + {file = "cryptography-44.0.0.tar.gz", hash = "sha256:cd4e834f340b4293430701e772ec543b0fbe6c2dea510a5286fe0acabe153a02"}, ] [package.dependencies] cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} [package.extras] -docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] -docstest = ["pyenchant (>=1.6.11)", "readme-renderer", "sphinxcontrib-spelling (>=4.0.1)"] -nox = ["nox"] -pep8test = ["check-sdist", "click", "mypy", "ruff"] -sdist = ["build"] +docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=3.0.0)"] +docstest = ["pyenchant (>=3)", "readme-renderer (>=30.0)", "sphinxcontrib-spelling (>=7.3.1)"] +nox = ["nox (>=2024.4.15)", "nox[uv] (>=2024.3.2)"] +pep8test = ["check-sdist", "click (>=8.0.1)", "mypy (>=1.4)", "ruff (>=0.3.6)"] +sdist = ["build (>=1.0.0)"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "cryptography-vectors (==43.0.1)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi (>=2024)", "cryptography-vectors (==44.0.0)", "pretend (>=0.7)", "pytest (>=7.4.0)", "pytest-benchmark (>=4.0)", "pytest-cov (>=2.10.1)", "pytest-xdist (>=3.5.0)"] test-randomorder = ["pytest-randomly"] [[package]] name = "deepdiff" -version = "8.0.1" +version = "8.1.1" description = "Deep Difference and Search of any Python object/data. Recreate objects by adding adding deltas to each other." optional = false python-versions = ">=3.8" files = [ - {file = "deepdiff-8.0.1-py3-none-any.whl", hash = "sha256:42e99004ce603f9a53934c634a57b04ad5900e0d8ed0abb15e635767489cbc05"}, - {file = "deepdiff-8.0.1.tar.gz", hash = "sha256:245599a4586ab59bb599ca3517a9c42f3318ff600ded5e80a3432693c8ec3c4b"}, + {file = "deepdiff-8.1.1-py3-none-any.whl", hash = "sha256:b0231fa3afb0f7184e82535f2b4a36636442ed21e94a0cf3aaa7982157e7ebca"}, + {file = "deepdiff-8.1.1.tar.gz", hash = "sha256:dd7bc7d5c8b51b5b90f01b0e2fe23c801fd8b4c6a7ee7e31c5a3c3663fcc7ceb"}, ] [package.dependencies] -orderly-set = "5.2.2" +orderly-set = ">=5.2.3,<6" [package.extras] -cli = ["click (==8.1.7)", "pyyaml (==6.0.1)"] +cli = ["click (==8.1.7)", "pyyaml (==6.0.2)"] optimize = ["orjson"] [[package]] name = "dill" -version = "0.3.8" +version = "0.3.9" description = "serialize all of Python" optional = false python-versions = ">=3.8" files = [ - {file = "dill-0.3.8-py3-none-any.whl", hash = "sha256:c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"}, - {file = "dill-0.3.8.tar.gz", hash = "sha256:3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca"}, + {file = "dill-0.3.9-py3-none-any.whl", hash = "sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a"}, + {file = "dill-0.3.9.tar.gz", hash = "sha256:81aa267dddf68cbfe8029c42ca9ec6a4ab3b22371d1c450abc54422577b4512c"}, ] [package.extras] @@ -875,20 +932,6 @@ files = [ {file = "docutils-0.21.2.tar.gz", hash = "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f"}, ] -[[package]] -name = "exceptiongroup" -version = "1.2.2" -description = "Backport of PEP 654 (exception groups)" -optional = false -python-versions = ">=3.7" -files = [ - {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"}, - {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"}, -] - -[package.extras] -test = ["pytest (>=6)"] - [[package]] name = "execnet" version = "2.1.1" @@ -905,101 +948,119 @@ testing = ["hatch", "pre-commit", "pytest", "tox"] [[package]] name = "frozenlist" -version = "1.4.1" +version = "1.5.0" description = "A list-like structure which implements collections.abc.MutableSequence" optional = false python-versions = ">=3.8" files = [ - {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f9aa1878d1083b276b0196f2dfbe00c9b7e752475ed3b682025ff20c1c1f51ac"}, - {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:29acab3f66f0f24674b7dc4736477bcd4bc3ad4b896f5f45379a67bce8b96868"}, - {file = "frozenlist-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:74fb4bee6880b529a0c6560885fce4dc95936920f9f20f53d99a213f7bf66776"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:590344787a90ae57d62511dd7c736ed56b428f04cd8c161fcc5e7232c130c69a"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:068b63f23b17df8569b7fdca5517edef76171cf3897eb68beb01341131fbd2ad"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c849d495bf5154cd8da18a9eb15db127d4dba2968d88831aff6f0331ea9bd4c"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9750cc7fe1ae3b1611bb8cfc3f9ec11d532244235d75901fb6b8e42ce9229dfe"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9b2de4cf0cdd5bd2dee4c4f63a653c61d2408055ab77b151c1957f221cabf2a"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0633c8d5337cb5c77acbccc6357ac49a1770b8c487e5b3505c57b949b4b82e98"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:27657df69e8801be6c3638054e202a135c7f299267f1a55ed3a598934f6c0d75"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:f9a3ea26252bd92f570600098783d1371354d89d5f6b7dfd87359d669f2109b5"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:4f57dab5fe3407b6c0c1cc907ac98e8a189f9e418f3b6e54d65a718aaafe3950"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e02a0e11cf6597299b9f3bbd3f93d79217cb90cfd1411aec33848b13f5c656cc"}, - {file = "frozenlist-1.4.1-cp310-cp310-win32.whl", hash = "sha256:a828c57f00f729620a442881cc60e57cfcec6842ba38e1b19fd3e47ac0ff8dc1"}, - {file = "frozenlist-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:f56e2333dda1fe0f909e7cc59f021eba0d2307bc6f012a1ccf2beca6ba362439"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a0cb6f11204443f27a1628b0e460f37fb30f624be6051d490fa7d7e26d4af3d0"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b46c8ae3a8f1f41a0d2ef350c0b6e65822d80772fe46b653ab6b6274f61d4a49"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fde5bd59ab5357e3853313127f4d3565fc7dad314a74d7b5d43c22c6a5ed2ced"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:722e1124aec435320ae01ee3ac7bec11a5d47f25d0ed6328f2273d287bc3abb0"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2471c201b70d58a0f0c1f91261542a03d9a5e088ed3dc6c160d614c01649c106"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c757a9dd70d72b076d6f68efdbb9bc943665ae954dad2801b874c8c69e185068"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f146e0911cb2f1da549fc58fc7bcd2b836a44b79ef871980d605ec392ff6b0d2"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f9c515e7914626b2a2e1e311794b4c35720a0be87af52b79ff8e1429fc25f19"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c302220494f5c1ebeb0912ea782bcd5e2f8308037b3c7553fad0e48ebad6ad82"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:442acde1e068288a4ba7acfe05f5f343e19fac87bfc96d89eb886b0363e977ec"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:1b280e6507ea8a4fa0c0a7150b4e526a8d113989e28eaaef946cc77ffd7efc0a"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:fe1a06da377e3a1062ae5fe0926e12b84eceb8a50b350ddca72dc85015873f74"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:db9e724bebd621d9beca794f2a4ff1d26eed5965b004a97f1f1685a173b869c2"}, - {file = "frozenlist-1.4.1-cp311-cp311-win32.whl", hash = "sha256:e774d53b1a477a67838a904131c4b0eef6b3d8a651f8b138b04f748fccfefe17"}, - {file = "frozenlist-1.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:fb3c2db03683b5767dedb5769b8a40ebb47d6f7f45b1b3e3b4b51ec8ad9d9825"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1979bc0aeb89b33b588c51c54ab0161791149f2461ea7c7c946d95d5f93b56ae"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cc7b01b3754ea68a62bd77ce6020afaffb44a590c2289089289363472d13aedb"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9c92be9fd329ac801cc420e08452b70e7aeab94ea4233a4804f0915c14eba9b"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3894db91f5a489fc8fa6a9991820f368f0b3cbdb9cd8849547ccfab3392d86"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ba60bb19387e13597fb059f32cd4d59445d7b18b69a745b8f8e5db0346f33480"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8aefbba5f69d42246543407ed2461db31006b0f76c4e32dfd6f42215a2c41d09"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780d3a35680ced9ce682fbcf4cb9c2bad3136eeff760ab33707b71db84664e3a"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9acbb16f06fe7f52f441bb6f413ebae6c37baa6ef9edd49cdd567216da8600cd"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:23b701e65c7b36e4bf15546a89279bd4d8675faabc287d06bbcfac7d3c33e1e6"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3e0153a805a98f5ada7e09826255ba99fb4f7524bb81bf6b47fb702666484ae1"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:dd9b1baec094d91bf36ec729445f7769d0d0cf6b64d04d86e45baf89e2b9059b"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:1a4471094e146b6790f61b98616ab8e44f72661879cc63fa1049d13ef711e71e"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5667ed53d68d91920defdf4035d1cdaa3c3121dc0b113255124bcfada1cfa1b8"}, - {file = "frozenlist-1.4.1-cp312-cp312-win32.whl", hash = "sha256:beee944ae828747fd7cb216a70f120767fc9f4f00bacae8543c14a6831673f89"}, - {file = "frozenlist-1.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:64536573d0a2cb6e625cf309984e2d873979709f2cf22839bf2d61790b448ad5"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:20b51fa3f588ff2fe658663db52a41a4f7aa6c04f6201449c6c7c476bd255c0d"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:410478a0c562d1a5bcc2f7ea448359fcb050ed48b3c6f6f4f18c313a9bdb1826"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c6321c9efe29975232da3bd0af0ad216800a47e93d763ce64f291917a381b8eb"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48f6a4533887e189dae092f1cf981f2e3885175f7a0f33c91fb5b7b682b6bab6"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6eb73fa5426ea69ee0e012fb59cdc76a15b1283d6e32e4f8dc4482ec67d1194d"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fbeb989b5cc29e8daf7f976b421c220f1b8c731cbf22b9130d8815418ea45887"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:32453c1de775c889eb4e22f1197fe3bdfe457d16476ea407472b9442e6295f7a"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693945278a31f2086d9bf3df0fe8254bbeaef1fe71e1351c3bd730aa7d31c41b"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1d0ce09d36d53bbbe566fe296965b23b961764c0bcf3ce2fa45f463745c04701"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3a670dc61eb0d0eb7080890c13de3066790f9049b47b0de04007090807c776b0"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:dca69045298ce5c11fd539682cff879cc1e664c245d1c64da929813e54241d11"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a06339f38e9ed3a64e4c4e43aec7f59084033647f908e4259d279a52d3757d09"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b7f2f9f912dca3934c1baec2e4585a674ef16fe00218d833856408c48d5beee7"}, - {file = "frozenlist-1.4.1-cp38-cp38-win32.whl", hash = "sha256:e7004be74cbb7d9f34553a5ce5fb08be14fb33bc86f332fb71cbe5216362a497"}, - {file = "frozenlist-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:5a7d70357e7cee13f470c7883a063aae5fe209a493c57d86eb7f5a6f910fae09"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bfa4a17e17ce9abf47a74ae02f32d014c5e9404b6d9ac7f729e01562bbee601e"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b7e3ed87d4138356775346e6845cccbe66cd9e207f3cd11d2f0b9fd13681359d"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c99169d4ff810155ca50b4da3b075cbde79752443117d89429595c2e8e37fed8"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edb678da49d9f72c9f6c609fbe41a5dfb9a9282f9e6a2253d5a91e0fc382d7c0"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6db4667b187a6742b33afbbaf05a7bc551ffcf1ced0000a571aedbb4aa42fc7b"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55fdc093b5a3cb41d420884cdaf37a1e74c3c37a31f46e66286d9145d2063bd0"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82e8211d69a4f4bc360ea22cd6555f8e61a1bd211d1d5d39d3d228b48c83a897"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89aa2c2eeb20957be2d950b85974b30a01a762f3308cd02bb15e1ad632e22dc7"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d3e0c25a2350080e9319724dede4f31f43a6c9779be48021a7f4ebde8b2d742"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7268252af60904bf52c26173cbadc3a071cece75f873705419c8681f24d3edea"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:0c250a29735d4f15321007fb02865f0e6b6a41a6b88f1f523ca1596ab5f50bd5"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:96ec70beabbd3b10e8bfe52616a13561e58fe84c0101dd031dc78f250d5128b9"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:23b2d7679b73fe0e5a4560b672a39f98dfc6f60df63823b0a9970525325b95f6"}, - {file = "frozenlist-1.4.1-cp39-cp39-win32.whl", hash = "sha256:a7496bfe1da7fb1a4e1cc23bb67c58fab69311cc7d32b5a99c2007b4b2a0e932"}, - {file = "frozenlist-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:e6a20a581f9ce92d389a8c7d7c3dd47c81fd5d6e655c8dddf341e14aa48659d0"}, - {file = "frozenlist-1.4.1-py3-none-any.whl", hash = "sha256:04ced3e6a46b4cfffe20f9ae482818e34eba9b5fb0ce4056e4cc9b6e212d09b7"}, - {file = "frozenlist-1.4.1.tar.gz", hash = "sha256:c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b"}, + {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5b6a66c18b5b9dd261ca98dffcb826a525334b2f29e7caa54e182255c5f6a65a"}, + {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d1b3eb7b05ea246510b43a7e53ed1653e55c2121019a97e60cad7efb881a97bb"}, + {file = "frozenlist-1.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:15538c0cbf0e4fa11d1e3a71f823524b0c46299aed6e10ebb4c2089abd8c3bec"}, + {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e79225373c317ff1e35f210dd5f1344ff31066ba8067c307ab60254cd3a78ad5"}, + {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9272fa73ca71266702c4c3e2d4a28553ea03418e591e377a03b8e3659d94fa76"}, + {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:498524025a5b8ba81695761d78c8dd7382ac0b052f34e66939c42df860b8ff17"}, + {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92b5278ed9d50fe610185ecd23c55d8b307d75ca18e94c0e7de328089ac5dcba"}, + {file = "frozenlist-1.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f3c8c1dacd037df16e85227bac13cca58c30da836c6f936ba1df0c05d046d8d"}, + {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f2ac49a9bedb996086057b75bf93538240538c6d9b38e57c82d51f75a73409d2"}, + {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e66cc454f97053b79c2ab09c17fbe3c825ea6b4de20baf1be28919460dd7877f"}, + {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:5a3ba5f9a0dfed20337d3e966dc359784c9f96503674c2faf015f7fe8e96798c"}, + {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:6321899477db90bdeb9299ac3627a6a53c7399c8cd58d25da094007402b039ab"}, + {file = "frozenlist-1.5.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:76e4753701248476e6286f2ef492af900ea67d9706a0155335a40ea21bf3b2f5"}, + {file = "frozenlist-1.5.0-cp310-cp310-win32.whl", hash = "sha256:977701c081c0241d0955c9586ffdd9ce44f7a7795df39b9151cd9a6fd0ce4cfb"}, + {file = "frozenlist-1.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:189f03b53e64144f90990d29a27ec4f7997d91ed3d01b51fa39d2dbe77540fd4"}, + {file = "frozenlist-1.5.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:fd74520371c3c4175142d02a976aee0b4cb4a7cc912a60586ffd8d5929979b30"}, + {file = "frozenlist-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2f3f7a0fbc219fb4455264cae4d9f01ad41ae6ee8524500f381de64ffaa077d5"}, + {file = "frozenlist-1.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f47c9c9028f55a04ac254346e92977bf0f166c483c74b4232bee19a6697e4778"}, + {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0996c66760924da6e88922756d99b47512a71cfd45215f3570bf1e0b694c206a"}, + {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a2fe128eb4edeabe11896cb6af88fca5346059f6c8d807e3b910069f39157869"}, + {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1a8ea951bbb6cacd492e3948b8da8c502a3f814f5d20935aae74b5df2b19cf3d"}, + {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de537c11e4aa01d37db0d403b57bd6f0546e71a82347a97c6a9f0dcc532b3a45"}, + {file = "frozenlist-1.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c2623347b933fcb9095841f1cc5d4ff0b278addd743e0e966cb3d460278840d"}, + {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cee6798eaf8b1416ef6909b06f7dc04b60755206bddc599f52232606e18179d3"}, + {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:f5f9da7f5dbc00a604fe74aa02ae7c98bcede8a3b8b9666f9f86fc13993bc71a"}, + {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:90646abbc7a5d5c7c19461d2e3eeb76eb0b204919e6ece342feb6032c9325ae9"}, + {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:bdac3c7d9b705d253b2ce370fde941836a5f8b3c5c2b8fd70940a3ea3af7f4f2"}, + {file = "frozenlist-1.5.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03d33c2ddbc1816237a67f66336616416e2bbb6beb306e5f890f2eb22b959cdf"}, + {file = "frozenlist-1.5.0-cp311-cp311-win32.whl", hash = "sha256:237f6b23ee0f44066219dae14c70ae38a63f0440ce6750f868ee08775073f942"}, + {file = "frozenlist-1.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:0cc974cc93d32c42e7b0f6cf242a6bd941c57c61b618e78b6c0a96cb72788c1d"}, + {file = "frozenlist-1.5.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:31115ba75889723431aa9a4e77d5f398f5cf976eea3bdf61749731f62d4a4a21"}, + {file = "frozenlist-1.5.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7437601c4d89d070eac8323f121fcf25f88674627505334654fd027b091db09d"}, + {file = "frozenlist-1.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7948140d9f8ece1745be806f2bfdf390127cf1a763b925c4a805c603df5e697e"}, + {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feeb64bc9bcc6b45c6311c9e9b99406660a9c05ca8a5b30d14a78555088b0b3a"}, + {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:683173d371daad49cffb8309779e886e59c2f369430ad28fe715f66d08d4ab1a"}, + {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7d57d8f702221405a9d9b40f9da8ac2e4a1a8b5285aac6100f3393675f0a85ee"}, + {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30c72000fbcc35b129cb09956836c7d7abf78ab5416595e4857d1cae8d6251a6"}, + {file = "frozenlist-1.5.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:000a77d6034fbad9b6bb880f7ec073027908f1b40254b5d6f26210d2dab1240e"}, + {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5d7f5a50342475962eb18b740f3beecc685a15b52c91f7d975257e13e029eca9"}, + {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:87f724d055eb4785d9be84e9ebf0f24e392ddfad00b3fe036e43f489fafc9039"}, + {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:6e9080bb2fb195a046e5177f10d9d82b8a204c0736a97a153c2466127de87784"}, + {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:9b93d7aaa36c966fa42efcaf716e6b3900438632a626fb09c049f6a2f09fc631"}, + {file = "frozenlist-1.5.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:52ef692a4bc60a6dd57f507429636c2af8b6046db8b31b18dac02cbc8f507f7f"}, + {file = "frozenlist-1.5.0-cp312-cp312-win32.whl", hash = "sha256:29d94c256679247b33a3dc96cce0f93cbc69c23bf75ff715919332fdbb6a32b8"}, + {file = "frozenlist-1.5.0-cp312-cp312-win_amd64.whl", hash = "sha256:8969190d709e7c48ea386db202d708eb94bdb29207a1f269bab1196ce0dcca1f"}, + {file = "frozenlist-1.5.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:7a1a048f9215c90973402e26c01d1cff8a209e1f1b53f72b95c13db61b00f953"}, + {file = "frozenlist-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dd47a5181ce5fcb463b5d9e17ecfdb02b678cca31280639255ce9d0e5aa67af0"}, + {file = "frozenlist-1.5.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1431d60b36d15cda188ea222033eec8e0eab488f39a272461f2e6d9e1a8e63c2"}, + {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6482a5851f5d72767fbd0e507e80737f9c8646ae7fd303def99bfe813f76cf7f"}, + {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:44c49271a937625619e862baacbd037a7ef86dd1ee215afc298a417ff3270608"}, + {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:12f78f98c2f1c2429d42e6a485f433722b0061d5c0b0139efa64f396efb5886b"}, + {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ce3aa154c452d2467487765e3adc730a8c153af77ad84096bc19ce19a2400840"}, + {file = "frozenlist-1.5.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b7dc0c4338e6b8b091e8faf0db3168a37101943e687f373dce00959583f7439"}, + {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:45e0896250900b5aa25180f9aec243e84e92ac84bd4a74d9ad4138ef3f5c97de"}, + {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:561eb1c9579d495fddb6da8959fd2a1fca2c6d060d4113f5844b433fc02f2641"}, + {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:df6e2f325bfee1f49f81aaac97d2aa757c7646534a06f8f577ce184afe2f0a9e"}, + {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:140228863501b44b809fb39ec56b5d4071f4d0aa6d216c19cbb08b8c5a7eadb9"}, + {file = "frozenlist-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7707a25d6a77f5d27ea7dc7d1fc608aa0a478193823f88511ef5e6b8a48f9d03"}, + {file = "frozenlist-1.5.0-cp313-cp313-win32.whl", hash = "sha256:31a9ac2b38ab9b5a8933b693db4939764ad3f299fcaa931a3e605bc3460e693c"}, + {file = "frozenlist-1.5.0-cp313-cp313-win_amd64.whl", hash = "sha256:11aabdd62b8b9c4b84081a3c246506d1cddd2dd93ff0ad53ede5defec7886b28"}, + {file = "frozenlist-1.5.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:dd94994fc91a6177bfaafd7d9fd951bc8689b0a98168aa26b5f543868548d3ca"}, + {file = "frozenlist-1.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:2d0da8bbec082bf6bf18345b180958775363588678f64998c2b7609e34719b10"}, + {file = "frozenlist-1.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:73f2e31ea8dd7df61a359b731716018c2be196e5bb3b74ddba107f694fbd7604"}, + {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:828afae9f17e6de596825cf4228ff28fbdf6065974e5ac1410cecc22f699d2b3"}, + {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1577515d35ed5649d52ab4319db757bb881ce3b2b796d7283e6634d99ace307"}, + {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2150cc6305a2c2ab33299453e2968611dacb970d2283a14955923062c8d00b10"}, + {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a72b7a6e3cd2725eff67cd64c8f13335ee18fc3c7befc05aed043d24c7b9ccb9"}, + {file = "frozenlist-1.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c16d2fa63e0800723139137d667e1056bee1a1cf7965153d2d104b62855e9b99"}, + {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:17dcc32fc7bda7ce5875435003220a457bcfa34ab7924a49a1c19f55b6ee185c"}, + {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:97160e245ea33d8609cd2b8fd997c850b56db147a304a262abc2b3be021a9171"}, + {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:f1e6540b7fa044eee0bb5111ada694cf3dc15f2b0347ca125ee9ca984d5e9e6e"}, + {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:91d6c171862df0a6c61479d9724f22efb6109111017c87567cfeb7b5d1449fdf"}, + {file = "frozenlist-1.5.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:c1fac3e2ace2eb1052e9f7c7db480818371134410e1f5c55d65e8f3ac6d1407e"}, + {file = "frozenlist-1.5.0-cp38-cp38-win32.whl", hash = "sha256:b97f7b575ab4a8af9b7bc1d2ef7f29d3afee2226bd03ca3875c16451ad5a7723"}, + {file = "frozenlist-1.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:374ca2dabdccad8e2a76d40b1d037f5bd16824933bf7bcea3e59c891fd4a0923"}, + {file = "frozenlist-1.5.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:9bbcdfaf4af7ce002694a4e10a0159d5a8d20056a12b05b45cea944a4953f972"}, + {file = "frozenlist-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1893f948bf6681733aaccf36c5232c231e3b5166d607c5fa77773611df6dc336"}, + {file = "frozenlist-1.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2b5e23253bb709ef57a8e95e6ae48daa9ac5f265637529e4ce6b003a37b2621f"}, + {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f253985bb515ecd89629db13cb58d702035ecd8cfbca7d7a7e29a0e6d39af5f"}, + {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:04a5c6babd5e8fb7d3c871dc8b321166b80e41b637c31a995ed844a6139942b6"}, + {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9fe0f1c29ba24ba6ff6abf688cb0b7cf1efab6b6aa6adc55441773c252f7411"}, + {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:226d72559fa19babe2ccd920273e767c96a49b9d3d38badd7c91a0fdeda8ea08"}, + {file = "frozenlist-1.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15b731db116ab3aedec558573c1a5eec78822b32292fe4f2f0345b7f697745c2"}, + {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:366d8f93e3edfe5a918c874702f78faac300209a4d5bf38352b2c1bdc07a766d"}, + {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:1b96af8c582b94d381a1c1f51ffaedeb77c821c690ea5f01da3d70a487dd0a9b"}, + {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:c03eff4a41bd4e38415cbed054bbaff4a075b093e2394b6915dca34a40d1e38b"}, + {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:50cf5e7ee9b98f22bdecbabf3800ae78ddcc26e4a435515fc72d97903e8488e0"}, + {file = "frozenlist-1.5.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1e76bfbc72353269c44e0bc2cfe171900fbf7f722ad74c9a7b638052afe6a00c"}, + {file = "frozenlist-1.5.0-cp39-cp39-win32.whl", hash = "sha256:666534d15ba8f0fda3f53969117383d5dc021266b3c1a42c9ec4855e4b58b9d3"}, + {file = "frozenlist-1.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:5c28f4b5dbef8a0d8aad0d4de24d1e9e981728628afaf4ea0792f5d0939372f0"}, + {file = "frozenlist-1.5.0-py3-none-any.whl", hash = "sha256:d994863bba198a4a518b467bb971c56e1db3f180a25c6cf7bb1949c267f748c3"}, + {file = "frozenlist-1.5.0.tar.gz", hash = "sha256:81d5af29e61b9c8348e876d442253723928dce6433e0e76cd925cd83f1b4b817"}, ] [[package]] name = "idna" -version = "3.8" +version = "3.10" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.6" files = [ - {file = "idna-3.8-py3-none-any.whl", hash = "sha256:050b4e5baadcd44d760cedbd2b8e639f2ff89bbc7a5730fcc662954303377aac"}, - {file = "idna-3.8.tar.gz", hash = "sha256:d838c2c0ed6fced7693d5e8ab8e734d5f8fda53a039c0164afb0b82e771e3603"}, + {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, + {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, ] +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + [[package]] name = "imagesize" version = "1.4.1" @@ -1013,32 +1074,36 @@ files = [ [[package]] name = "importlib-metadata" -version = "8.4.0" +version = "8.5.0" description = "Read metadata from Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-8.4.0-py3-none-any.whl", hash = "sha256:66f342cc6ac9818fc6ff340576acd24d65ba0b3efabb2b4ac08b598965a4a2f1"}, - {file = "importlib_metadata-8.4.0.tar.gz", hash = "sha256:9a547d3bc3608b025f93d403fdd1aae741c24fbb8314df4b155675742ce303c5"}, + {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, + {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, ] [package.dependencies] -zipp = ">=0.5" +zipp = ">=3.20" [package.extras] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +enabler = ["pytest-enabler (>=2.2)"] perf = ["ipython"] -test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] +test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] +type = ["pytest-mypy"] [[package]] name = "importlib-resources" -version = "6.4.4" +version = "6.5.2" description = "Read resources from Python packages" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "importlib_resources-6.4.4-py3-none-any.whl", hash = "sha256:dda242603d1c9cd836c3368b1174ed74cb4049ecd209e7a1a0104620c18c5c11"}, - {file = "importlib_resources-6.4.4.tar.gz", hash = "sha256:20600c8b7361938dc0bb2d5ec0297802e575df486f5a544fa414da65e13721f7"}, + {file = "importlib_resources-6.5.2-py3-none-any.whl", hash = "sha256:789cfdc3ed28c78b67a06acb8126751ced69a3d5f79c095a98298cd8a760ccec"}, + {file = "importlib_resources-6.5.2.tar.gz", hash = "sha256:185f87adef5bcc288449d98fb4fba07cea78bc036455dd44c5fc4a2fe78fed2c"}, ] [package.extras] @@ -1076,13 +1141,13 @@ colors = ["colorama (>=0.4.6)"] [[package]] name = "jinja2" -version = "3.1.4" +version = "3.1.5" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" files = [ - {file = "jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d"}, - {file = "jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369"}, + {file = "jinja2-3.1.5-py3-none-any.whl", hash = "sha256:aba0f4dc9ed8013c424088f68a5c226f7d6097ed89b246d7749c2ec4175c6adb"}, + {file = "jinja2-3.1.5.tar.gz", hash = "sha256:8fefff8dc3034e27bb80d67c671eb8a9bc424c0ef4c0826edbff304cceff43bb"}, ] [package.dependencies] @@ -1128,71 +1193,72 @@ testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] [[package]] name = "markupsafe" -version = "2.1.5" +version = "3.0.2" description = "Safely add untrusted strings to HTML/XML markup." optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, - {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, + {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, ] [[package]] @@ -1235,101 +1301,103 @@ test = ["pytest (<5.4)", "pytest-cov"] [[package]] name = "multidict" -version = "6.0.5" +version = "6.1.0" description = "multidict implementation" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:228b644ae063c10e7f324ab1ab6b548bdf6f8b47f3ec234fef1093bc2735e5f9"}, - {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:896ebdcf62683551312c30e20614305f53125750803b614e9e6ce74a96232604"}, - {file = "multidict-6.0.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:411bf8515f3be9813d06004cac41ccf7d1cd46dfe233705933dd163b60e37600"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d147090048129ce3c453f0292e7697d333db95e52616b3793922945804a433c"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:215ed703caf15f578dca76ee6f6b21b7603791ae090fbf1ef9d865571039ade5"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c6390cf87ff6234643428991b7359b5f59cc15155695deb4eda5c777d2b880f"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21fd81c4ebdb4f214161be351eb5bcf385426bf023041da2fd9e60681f3cebae"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3cc2ad10255f903656017363cd59436f2111443a76f996584d1077e43ee51182"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6939c95381e003f54cd4c5516740faba40cf5ad3eeff460c3ad1d3e0ea2549bf"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:220dd781e3f7af2c2c1053da9fa96d9cf3072ca58f057f4c5adaaa1cab8fc442"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:766c8f7511df26d9f11cd3a8be623e59cca73d44643abab3f8c8c07620524e4a"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:fe5d7785250541f7f5019ab9cba2c71169dc7d74d0f45253f8313f436458a4ef"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c1c1496e73051918fcd4f58ff2e0f2f3066d1c76a0c6aeffd9b45d53243702cc"}, - {file = "multidict-6.0.5-cp310-cp310-win32.whl", hash = "sha256:7afcdd1fc07befad18ec4523a782cde4e93e0a2bf71239894b8d61ee578c1319"}, - {file = "multidict-6.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:99f60d34c048c5c2fabc766108c103612344c46e35d4ed9ae0673d33c8fb26e8"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f285e862d2f153a70586579c15c44656f888806ed0e5b56b64489afe4a2dbfba"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:53689bb4e102200a4fafa9de9c7c3c212ab40a7ab2c8e474491914d2305f187e"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:612d1156111ae11d14afaf3a0669ebf6c170dbb735e510a7438ffe2369a847fd"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7be7047bd08accdb7487737631d25735c9a04327911de89ff1b26b81745bd4e3"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de170c7b4fe6859beb8926e84f7d7d6c693dfe8e27372ce3b76f01c46e489fcf"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04bde7a7b3de05732a4eb39c94574db1ec99abb56162d6c520ad26f83267de29"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85f67aed7bb647f93e7520633d8f51d3cbc6ab96957c71272b286b2f30dc70ed"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425bf820055005bfc8aa9a0b99ccb52cc2f4070153e34b701acc98d201693733"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d3eb1ceec286eba8220c26f3b0096cf189aea7057b6e7b7a2e60ed36b373b77f"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7901c05ead4b3fb75113fb1dd33eb1253c6d3ee37ce93305acd9d38e0b5f21a4"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:e0e79d91e71b9867c73323a3444724d496c037e578a0e1755ae159ba14f4f3d1"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:29bfeb0dff5cb5fdab2023a7a9947b3b4af63e9c47cae2a10ad58394b517fddc"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e030047e85cbcedbfc073f71836d62dd5dadfbe7531cae27789ff66bc551bd5e"}, - {file = "multidict-6.0.5-cp311-cp311-win32.whl", hash = "sha256:2f4848aa3baa109e6ab81fe2006c77ed4d3cd1e0ac2c1fbddb7b1277c168788c"}, - {file = "multidict-6.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:2faa5ae9376faba05f630d7e5e6be05be22913782b927b19d12b8145968a85ea"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:51d035609b86722963404f711db441cf7134f1889107fb171a970c9701f92e1e"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cbebcd5bcaf1eaf302617c114aa67569dd3f090dd0ce8ba9e35e9985b41ac35b"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ffc42c922dbfddb4a4c3b438eb056828719f07608af27d163191cb3e3aa6cc5"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ceb3b7e6a0135e092de86110c5a74e46bda4bd4fbfeeb3a3bcec79c0f861e450"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:79660376075cfd4b2c80f295528aa6beb2058fd289f4c9252f986751a4cd0496"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e4428b29611e989719874670fd152b6625500ad6c686d464e99f5aaeeaca175a"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d84a5c3a5f7ce6db1f999fb9438f686bc2e09d38143f2d93d8406ed2dd6b9226"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:76c0de87358b192de7ea9649beb392f107dcad9ad27276324c24c91774ca5271"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:79a6d2ba910adb2cbafc95dad936f8b9386e77c84c35bc0add315b856d7c3abb"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:92d16a3e275e38293623ebf639c471d3e03bb20b8ebb845237e0d3664914caef"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:fb616be3538599e797a2017cccca78e354c767165e8858ab5116813146041a24"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:14c2976aa9038c2629efa2c148022ed5eb4cb939e15ec7aace7ca932f48f9ba6"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:435a0984199d81ca178b9ae2c26ec3d49692d20ee29bc4c11a2a8d4514c67eda"}, - {file = "multidict-6.0.5-cp312-cp312-win32.whl", hash = "sha256:9fe7b0653ba3d9d65cbe7698cca585bf0f8c83dbbcc710db9c90f478e175f2d5"}, - {file = "multidict-6.0.5-cp312-cp312-win_amd64.whl", hash = "sha256:01265f5e40f5a17f8241d52656ed27192be03bfa8764d88e8220141d1e4b3556"}, - {file = "multidict-6.0.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:19fe01cea168585ba0f678cad6f58133db2aa14eccaf22f88e4a6dccadfad8b3"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6bf7a982604375a8d49b6cc1b781c1747f243d91b81035a9b43a2126c04766f5"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:107c0cdefe028703fb5dafe640a409cb146d44a6ae201e55b35a4af8e95457dd"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:403c0911cd5d5791605808b942c88a8155c2592e05332d2bf78f18697a5fa15e"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aeaf541ddbad8311a87dd695ed9642401131ea39ad7bc8cf3ef3967fd093b626"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4972624066095e52b569e02b5ca97dbd7a7ddd4294bf4e7247d52635630dd83"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d946b0a9eb8aaa590df1fe082cee553ceab173e6cb5b03239716338629c50c7a"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b55358304d7a73d7bdf5de62494aaf70bd33015831ffd98bc498b433dfe5b10c"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:a3145cb08d8625b2d3fee1b2d596a8766352979c9bffe5d7833e0503d0f0b5e5"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:d65f25da8e248202bd47445cec78e0025c0fe7582b23ec69c3b27a640dd7a8e3"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c9bf56195c6bbd293340ea82eafd0071cb3d450c703d2c93afb89f93b8386ccc"}, - {file = "multidict-6.0.5-cp37-cp37m-win32.whl", hash = "sha256:69db76c09796b313331bb7048229e3bee7928eb62bab5e071e9f7fcc4879caee"}, - {file = "multidict-6.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:fce28b3c8a81b6b36dfac9feb1de115bab619b3c13905b419ec71d03a3fc1423"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:76f067f5121dcecf0d63a67f29080b26c43c71a98b10c701b0677e4a065fbd54"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b82cc8ace10ab5bd93235dfaab2021c70637005e1ac787031f4d1da63d493c1d"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5cb241881eefd96b46f89b1a056187ea8e9ba14ab88ba632e68d7a2ecb7aadf7"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8e94e6912639a02ce173341ff62cc1201232ab86b8a8fcc05572741a5dc7d93"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09a892e4a9fb47331da06948690ae38eaa2426de97b4ccbfafbdcbe5c8f37ff8"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55205d03e8a598cfc688c71ca8ea5f66447164efff8869517f175ea632c7cb7b"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37b15024f864916b4951adb95d3a80c9431299080341ab9544ed148091b53f50"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2a1dee728b52b33eebff5072817176c172050d44d67befd681609b4746e1c2e"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:edd08e6f2f1a390bf137080507e44ccc086353c8e98c657e666c017718561b89"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:60d698e8179a42ec85172d12f50b1668254628425a6bd611aba022257cac1386"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:3d25f19500588cbc47dc19081d78131c32637c25804df8414463ec908631e453"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:4cc0ef8b962ac7a5e62b9e826bd0cd5040e7d401bc45a6835910ed699037a461"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:eca2e9d0cc5a889850e9bbd68e98314ada174ff6ccd1129500103df7a94a7a44"}, - {file = "multidict-6.0.5-cp38-cp38-win32.whl", hash = "sha256:4a6a4f196f08c58c59e0b8ef8ec441d12aee4125a7d4f4fef000ccb22f8d7241"}, - {file = "multidict-6.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:0275e35209c27a3f7951e1ce7aaf93ce0d163b28948444bec61dd7badc6d3f8c"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e7be68734bd8c9a513f2b0cfd508802d6609da068f40dc57d4e3494cefc92929"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1d9ea7a7e779d7a3561aade7d596649fbecfa5c08a7674b11b423783217933f9"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ea1456df2a27c73ce51120fa2f519f1bea2f4a03a917f4a43c8707cf4cbbae1a"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf590b134eb70629e350691ecca88eac3e3b8b3c86992042fb82e3cb1830d5e1"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5c0631926c4f58e9a5ccce555ad7747d9a9f8b10619621f22f9635f069f6233e"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dce1c6912ab9ff5f179eaf6efe7365c1f425ed690b03341911bf4939ef2f3046"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0868d64af83169e4d4152ec612637a543f7a336e4a307b119e98042e852ad9c"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:141b43360bfd3bdd75f15ed811850763555a251e38b2405967f8e25fb43f7d40"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7df704ca8cf4a073334e0427ae2345323613e4df18cc224f647f251e5e75a527"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6214c5a5571802c33f80e6c84713b2c79e024995b9c5897f794b43e714daeec9"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:cd6c8fca38178e12c00418de737aef1261576bd1b6e8c6134d3e729a4e858b38"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:e02021f87a5b6932fa6ce916ca004c4d441509d33bbdbeca70d05dff5e9d2479"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ebd8d160f91a764652d3e51ce0d2956b38efe37c9231cd82cfc0bed2e40b581c"}, - {file = "multidict-6.0.5-cp39-cp39-win32.whl", hash = "sha256:04da1bb8c8dbadf2a18a452639771951c662c5ad03aefe4884775454be322c9b"}, - {file = "multidict-6.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:d6f6d4f185481c9669b9447bf9d9cf3b95a0e9df9d169bbc17e363b7d5487755"}, - {file = "multidict-6.0.5-py3-none-any.whl", hash = "sha256:0d63c74e3d7ab26de115c49bffc92cc77ed23395303d496eae515d4204a625e7"}, - {file = "multidict-6.0.5.tar.gz", hash = "sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da"}, + {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3380252550e372e8511d49481bd836264c009adb826b23fefcc5dd3c69692f60"}, + {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:99f826cbf970077383d7de805c0681799491cb939c25450b9b5b3ced03ca99f1"}, + {file = "multidict-6.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a114d03b938376557927ab23f1e950827c3b893ccb94b62fd95d430fd0e5cf53"}, + {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1c416351ee6271b2f49b56ad7f308072f6f44b37118d69c2cad94f3fa8a40d5"}, + {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6b5d83030255983181005e6cfbac1617ce9746b219bc2aad52201ad121226581"}, + {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3e97b5e938051226dc025ec80980c285b053ffb1e25a3db2a3aa3bc046bf7f56"}, + {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d618649d4e70ac6efcbba75be98b26ef5078faad23592f9b51ca492953012429"}, + {file = "multidict-6.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10524ebd769727ac77ef2278390fb0068d83f3acb7773792a5080f2b0abf7748"}, + {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:ff3827aef427c89a25cc96ded1759271a93603aba9fb977a6d264648ebf989db"}, + {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:06809f4f0f7ab7ea2cabf9caca7d79c22c0758b58a71f9d32943ae13c7ace056"}, + {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:f179dee3b863ab1c59580ff60f9d99f632f34ccb38bf67a33ec6b3ecadd0fd76"}, + {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:aaed8b0562be4a0876ee3b6946f6869b7bcdb571a5d1496683505944e268b160"}, + {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3c8b88a2ccf5493b6c8da9076fb151ba106960a2df90c2633f342f120751a9e7"}, + {file = "multidict-6.1.0-cp310-cp310-win32.whl", hash = "sha256:4a9cb68166a34117d6646c0023c7b759bf197bee5ad4272f420a0141d7eb03a0"}, + {file = "multidict-6.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:20b9b5fbe0b88d0bdef2012ef7dee867f874b72528cf1d08f1d59b0e3850129d"}, + {file = "multidict-6.1.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3efe2c2cb5763f2f1b275ad2bf7a287d3f7ebbef35648a9726e3b69284a4f3d6"}, + {file = "multidict-6.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c7053d3b0353a8b9de430a4f4b4268ac9a4fb3481af37dfe49825bf45ca24156"}, + {file = "multidict-6.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:27e5fc84ccef8dfaabb09d82b7d179c7cf1a3fbc8a966f8274fcb4ab2eb4cadb"}, + {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e2b90b43e696f25c62656389d32236e049568b39320e2735d51f08fd362761b"}, + {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d83a047959d38a7ff552ff94be767b7fd79b831ad1cd9920662db05fec24fe72"}, + {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d1a9dd711d0877a1ece3d2e4fea11a8e75741ca21954c919406b44e7cf971304"}, + {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec2abea24d98246b94913b76a125e855eb5c434f7c46546046372fe60f666351"}, + {file = "multidict-6.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4867cafcbc6585e4b678876c489b9273b13e9fff9f6d6d66add5e15d11d926cb"}, + {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b48204e8d955c47c55b72779802b219a39acc3ee3d0116d5080c388970b76e3"}, + {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:d8fff389528cad1618fb4b26b95550327495462cd745d879a8c7c2115248e399"}, + {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:a7a9541cd308eed5e30318430a9c74d2132e9a8cb46b901326272d780bf2d423"}, + {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:da1758c76f50c39a2efd5e9859ce7d776317eb1dd34317c8152ac9251fc574a3"}, + {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c943a53e9186688b45b323602298ab727d8865d8c9ee0b17f8d62d14b56f0753"}, + {file = "multidict-6.1.0-cp311-cp311-win32.whl", hash = "sha256:90f8717cb649eea3504091e640a1b8568faad18bd4b9fcd692853a04475a4b80"}, + {file = "multidict-6.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:82176036e65644a6cc5bd619f65f6f19781e8ec2e5330f51aa9ada7504cc1926"}, + {file = "multidict-6.1.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b04772ed465fa3cc947db808fa306d79b43e896beb677a56fb2347ca1a49c1fa"}, + {file = "multidict-6.1.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6180c0ae073bddeb5a97a38c03f30c233e0a4d39cd86166251617d1bbd0af436"}, + {file = "multidict-6.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:071120490b47aa997cca00666923a83f02c7fbb44f71cf7f136df753f7fa8761"}, + {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50b3a2710631848991d0bf7de077502e8994c804bb805aeb2925a981de58ec2e"}, + {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b58c621844d55e71c1b7f7c498ce5aa6985d743a1a59034c57a905b3f153c1ef"}, + {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55b6d90641869892caa9ca42ff913f7ff1c5ece06474fbd32fb2cf6834726c95"}, + {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b820514bfc0b98a30e3d85462084779900347e4d49267f747ff54060cc33925"}, + {file = "multidict-6.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10a9b09aba0c5b48c53761b7c720aaaf7cf236d5fe394cd399c7ba662d5f9966"}, + {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1e16bf3e5fc9f44632affb159d30a437bfe286ce9e02754759be5536b169b305"}, + {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:76f364861c3bfc98cbbcbd402d83454ed9e01a5224bb3a28bf70002a230f73e2"}, + {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:820c661588bd01a0aa62a1283f20d2be4281b086f80dad9e955e690c75fb54a2"}, + {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:0e5f362e895bc5b9e67fe6e4ded2492d8124bdf817827f33c5b46c2fe3ffaca6"}, + {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3ec660d19bbc671e3a6443325f07263be452c453ac9e512f5eb935e7d4ac28b3"}, + {file = "multidict-6.1.0-cp312-cp312-win32.whl", hash = "sha256:58130ecf8f7b8112cdb841486404f1282b9c86ccb30d3519faf301b2e5659133"}, + {file = "multidict-6.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:188215fc0aafb8e03341995e7c4797860181562380f81ed0a87ff455b70bf1f1"}, + {file = "multidict-6.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d569388c381b24671589335a3be6e1d45546c2988c2ebe30fdcada8457a31008"}, + {file = "multidict-6.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:052e10d2d37810b99cc170b785945421141bf7bb7d2f8799d431e7db229c385f"}, + {file = "multidict-6.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f90c822a402cb865e396a504f9fc8173ef34212a342d92e362ca498cad308e28"}, + {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b225d95519a5bf73860323e633a664b0d85ad3d5bede6d30d95b35d4dfe8805b"}, + {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:23bfd518810af7de1116313ebd9092cb9aa629beb12f6ed631ad53356ed6b86c"}, + {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c09fcfdccdd0b57867577b719c69e347a436b86cd83747f179dbf0cc0d4c1f3"}, + {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf6bea52ec97e95560af5ae576bdac3aa3aae0b6758c6efa115236d9e07dae44"}, + {file = "multidict-6.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57feec87371dbb3520da6192213c7d6fc892d5589a93db548331954de8248fd2"}, + {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0c3f390dc53279cbc8ba976e5f8035eab997829066756d811616b652b00a23a3"}, + {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:59bfeae4b25ec05b34f1956eaa1cb38032282cd4dfabc5056d0a1ec4d696d3aa"}, + {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:b2f59caeaf7632cc633b5cf6fc449372b83bbdf0da4ae04d5be36118e46cc0aa"}, + {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:37bb93b2178e02b7b618893990941900fd25b6b9ac0fa49931a40aecdf083fe4"}, + {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4e9f48f58c2c523d5a06faea47866cd35b32655c46b443f163d08c6d0ddb17d6"}, + {file = "multidict-6.1.0-cp313-cp313-win32.whl", hash = "sha256:3a37ffb35399029b45c6cc33640a92bef403c9fd388acce75cdc88f58bd19a81"}, + {file = "multidict-6.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:e9aa71e15d9d9beaad2c6b9319edcdc0a49a43ef5c0a4c8265ca9ee7d6c67774"}, + {file = "multidict-6.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:db7457bac39421addd0c8449933ac32d8042aae84a14911a757ae6ca3eef1392"}, + {file = "multidict-6.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d094ddec350a2fb899fec68d8353c78233debde9b7d8b4beeafa70825f1c281a"}, + {file = "multidict-6.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5845c1fd4866bb5dd3125d89b90e57ed3138241540897de748cdf19de8a2fca2"}, + {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9079dfc6a70abe341f521f78405b8949f96db48da98aeb43f9907f342f627cdc"}, + {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3914f5aaa0f36d5d60e8ece6a308ee1c9784cd75ec8151062614657a114c4478"}, + {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c08be4f460903e5a9d0f76818db3250f12e9c344e79314d1d570fc69d7f4eae4"}, + {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d093be959277cb7dee84b801eb1af388b6ad3ca6a6b6bf1ed7585895789d027d"}, + {file = "multidict-6.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3702ea6872c5a2a4eeefa6ffd36b042e9773f05b1f37ae3ef7264b1163c2dcf6"}, + {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:2090f6a85cafc5b2db085124d752757c9d251548cedabe9bd31afe6363e0aff2"}, + {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:f67f217af4b1ff66c68a87318012de788dd95fcfeb24cc889011f4e1c7454dfd"}, + {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:189f652a87e876098bbc67b4da1049afb5f5dfbaa310dd67c594b01c10388db6"}, + {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:6bb5992037f7a9eff7991ebe4273ea7f51f1c1c511e6a2ce511d0e7bdb754492"}, + {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:ac10f4c2b9e770c4e393876e35a7046879d195cd123b4f116d299d442b335bcd"}, + {file = "multidict-6.1.0-cp38-cp38-win32.whl", hash = "sha256:e27bbb6d14416713a8bd7aaa1313c0fc8d44ee48d74497a0ff4c3a1b6ccb5167"}, + {file = "multidict-6.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:22f3105d4fb15c8f57ff3959a58fcab6ce36814486500cd7485651230ad4d4ef"}, + {file = "multidict-6.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4e18b656c5e844539d506a0a06432274d7bd52a7487e6828c63a63d69185626c"}, + {file = "multidict-6.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a185f876e69897a6f3325c3f19f26a297fa058c5e456bfcff8015e9a27e83ae1"}, + {file = "multidict-6.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ab7c4ceb38d91570a650dba194e1ca87c2b543488fe9309b4212694174fd539c"}, + {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e617fb6b0b6953fffd762669610c1c4ffd05632c138d61ac7e14ad187870669c"}, + {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:16e5f4bf4e603eb1fdd5d8180f1a25f30056f22e55ce51fb3d6ad4ab29f7d96f"}, + {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f4c035da3f544b1882bac24115f3e2e8760f10a0107614fc9839fd232200b875"}, + {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:957cf8e4b6e123a9eea554fa7ebc85674674b713551de587eb318a2df3e00255"}, + {file = "multidict-6.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:483a6aea59cb89904e1ceabd2b47368b5600fb7de78a6e4a2c2987b2d256cf30"}, + {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:87701f25a2352e5bf7454caa64757642734da9f6b11384c1f9d1a8e699758057"}, + {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:682b987361e5fd7a139ed565e30d81fd81e9629acc7d925a205366877d8c8657"}, + {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ce2186a7df133a9c895dea3331ddc5ddad42cdd0d1ea2f0a51e5d161e4762f28"}, + {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:9f636b730f7e8cb19feb87094949ba54ee5357440b9658b2a32a5ce4bce53972"}, + {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:73eae06aa53af2ea5270cc066dcaf02cc60d2994bbb2c4ef5764949257d10f43"}, + {file = "multidict-6.1.0-cp39-cp39-win32.whl", hash = "sha256:1ca0083e80e791cffc6efce7660ad24af66c8d4079d2a750b29001b53ff59ada"}, + {file = "multidict-6.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:aa466da5b15ccea564bdab9c89175c762bc12825f4659c11227f515cee76fa4a"}, + {file = "multidict-6.1.0-py3-none-any.whl", hash = "sha256:48e171e52d1c4d33888e529b999e5900356b9ae588c2f09a52dcefb158b27506"}, + {file = "multidict-6.1.0.tar.gz", hash = "sha256:22ae2ebf9b0c69d206c003e2f6a914ea33f0a932d4aa16f236afc049d9958f4a"}, ] [[package]] @@ -1345,24 +1413,24 @@ files = [ [[package]] name = "orderly-set" -version = "5.2.2" +version = "5.2.3" description = "Orderly set" optional = false python-versions = ">=3.8" files = [ - {file = "orderly_set-5.2.2-py3-none-any.whl", hash = "sha256:f7a37c95a38c01cdfe41c3ffb62925a318a2286ea0a41790c057fc802aec54da"}, - {file = "orderly_set-5.2.2.tar.gz", hash = "sha256:52a18b86aaf3f5d5a498bbdb27bf3253a4e5c57ab38e5b7a56fa00115cd28448"}, + {file = "orderly_set-5.2.3-py3-none-any.whl", hash = "sha256:d357cedcf67f4ebff0d4cbd5b0997e98eeb65dd24fdf5c990a501ae9e82c7d34"}, + {file = "orderly_set-5.2.3.tar.gz", hash = "sha256:571ed97c5a5fca7ddeb6b2d26c19aca896b0ed91f334d9c109edd2f265fb3017"}, ] [[package]] name = "packaging" -version = "24.1" +version = "24.2" description = "Core utilities for Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, - {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, + {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, + {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, ] [[package]] @@ -1378,24 +1446,24 @@ files = [ [[package]] name = "perky" -version = "0.9.2" +version = "0.9.3" description = "A simple, Pythonic file format. Same interface as the" optional = false python-versions = ">=3.6" files = [ - {file = "perky-0.9.2-py3-none-any.whl", hash = "sha256:bd1a3e2ebeedc611dcba6e01d6bf3fab872782e606bee4acbdceae7b19877192"}, - {file = "perky-0.9.2.tar.gz", hash = "sha256:02e5ebe84c5beaff6c8254497c75793b7dbaca903941c82035958ddb1bb66178"}, + {file = "perky-0.9.3-py3-none-any.whl", hash = "sha256:ebe0c58ee35951b1b878d5acb98bda4aa3e2067cd397baf1a3721f7f7da5acd4"}, + {file = "perky-0.9.3.tar.gz", hash = "sha256:ae847c4ff1f5e2bde74097eb7a29a1411bc22912142ba4c8cf08d77789823f08"}, ] [[package]] name = "platformdirs" -version = "4.3.2" +version = "4.3.6" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.8" files = [ - {file = "platformdirs-4.3.2-py3-none-any.whl", hash = "sha256:eb1c8582560b34ed4ba105009a4badf7f6f85768b30126f351328507b2beb617"}, - {file = "platformdirs-4.3.2.tar.gz", hash = "sha256:9e5e27a08aa095dd127b9f2e764d74254f482fef22b0970773bfba79d091ab8c"}, + {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, + {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, ] [package.extras] @@ -1420,109 +1488,93 @@ testing = ["pytest", "pytest-benchmark"] [[package]] name = "propcache" -version = "0.2.0" +version = "0.2.1" description = "Accelerated property cache" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "propcache-0.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c5869b8fd70b81835a6f187c5fdbe67917a04d7e52b6e7cc4e5fe39d55c39d58"}, - {file = "propcache-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:952e0d9d07609d9c5be361f33b0d6d650cd2bae393aabb11d9b719364521984b"}, - {file = "propcache-0.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:33ac8f098df0585c0b53009f039dfd913b38c1d2edafed0cedcc0c32a05aa110"}, - {file = "propcache-0.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:97e48e8875e6c13909c800fa344cd54cc4b2b0db1d5f911f840458a500fde2c2"}, - {file = "propcache-0.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:388f3217649d6d59292b722d940d4d2e1e6a7003259eb835724092a1cca0203a"}, - {file = "propcache-0.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f571aea50ba5623c308aa146eb650eebf7dbe0fd8c5d946e28343cb3b5aad577"}, - {file = "propcache-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3dfafb44f7bb35c0c06eda6b2ab4bfd58f02729e7c4045e179f9a861b07c9850"}, - {file = "propcache-0.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a3ebe9a75be7ab0b7da2464a77bb27febcb4fab46a34f9288f39d74833db7f61"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d2f0d0f976985f85dfb5f3d685697ef769faa6b71993b46b295cdbbd6be8cc37"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:a3dc1a4b165283bd865e8f8cb5f0c64c05001e0718ed06250d8cac9bec115b48"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:9e0f07b42d2a50c7dd2d8675d50f7343d998c64008f1da5fef888396b7f84630"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:e63e3e1e0271f374ed489ff5ee73d4b6e7c60710e1f76af5f0e1a6117cd26394"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:56bb5c98f058a41bb58eead194b4db8c05b088c93d94d5161728515bd52b052b"}, - {file = "propcache-0.2.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:7665f04d0c7f26ff8bb534e1c65068409bf4687aa2534faf7104d7182debb336"}, - {file = "propcache-0.2.0-cp310-cp310-win32.whl", hash = "sha256:7cf18abf9764746b9c8704774d8b06714bcb0a63641518a3a89c7f85cc02c2ad"}, - {file = "propcache-0.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:cfac69017ef97db2438efb854edf24f5a29fd09a536ff3a992b75990720cdc99"}, - {file = "propcache-0.2.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:63f13bf09cc3336eb04a837490b8f332e0db41da66995c9fd1ba04552e516354"}, - {file = "propcache-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:608cce1da6f2672a56b24a015b42db4ac612ee709f3d29f27a00c943d9e851de"}, - {file = "propcache-0.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:466c219deee4536fbc83c08d09115249db301550625c7fef1c5563a584c9bc87"}, - {file = "propcache-0.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc2db02409338bf36590aa985a461b2c96fce91f8e7e0f14c50c5fcc4f229016"}, - {file = "propcache-0.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a6ed8db0a556343d566a5c124ee483ae113acc9a557a807d439bcecc44e7dfbb"}, - {file = "propcache-0.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:91997d9cb4a325b60d4e3f20967f8eb08dfcb32b22554d5ef78e6fd1dda743a2"}, - {file = "propcache-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c7dde9e533c0a49d802b4f3f218fa9ad0a1ce21f2c2eb80d5216565202acab4"}, - {file = "propcache-0.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffcad6c564fe6b9b8916c1aefbb37a362deebf9394bd2974e9d84232e3e08504"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:97a58a28bcf63284e8b4d7b460cbee1edaab24634e82059c7b8c09e65284f178"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:945db8ee295d3af9dbdbb698cce9bbc5c59b5c3fe328bbc4387f59a8a35f998d"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:39e104da444a34830751715f45ef9fc537475ba21b7f1f5b0f4d71a3b60d7fe2"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:c5ecca8f9bab618340c8e848d340baf68bcd8ad90a8ecd7a4524a81c1764b3db"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:c436130cc779806bdf5d5fae0d848713105472b8566b75ff70048c47d3961c5b"}, - {file = "propcache-0.2.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:191db28dc6dcd29d1a3e063c3be0b40688ed76434622c53a284e5427565bbd9b"}, - {file = "propcache-0.2.0-cp311-cp311-win32.whl", hash = "sha256:5f2564ec89058ee7c7989a7b719115bdfe2a2fb8e7a4543b8d1c0cc4cf6478c1"}, - {file = "propcache-0.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:6e2e54267980349b723cff366d1e29b138b9a60fa376664a157a342689553f71"}, - {file = "propcache-0.2.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:2ee7606193fb267be4b2e3b32714f2d58cad27217638db98a60f9efb5efeccc2"}, - {file = "propcache-0.2.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:91ee8fc02ca52e24bcb77b234f22afc03288e1dafbb1f88fe24db308910c4ac7"}, - {file = "propcache-0.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2e900bad2a8456d00a113cad8c13343f3b1f327534e3589acc2219729237a2e8"}, - {file = "propcache-0.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f52a68c21363c45297aca15561812d542f8fc683c85201df0bebe209e349f793"}, - {file = "propcache-0.2.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e41d67757ff4fbc8ef2af99b338bfb955010444b92929e9e55a6d4dcc3c4f09"}, - {file = "propcache-0.2.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a64e32f8bd94c105cc27f42d3b658902b5bcc947ece3c8fe7bc1b05982f60e89"}, - {file = "propcache-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:55346705687dbd7ef0d77883ab4f6fabc48232f587925bdaf95219bae072491e"}, - {file = "propcache-0.2.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00181262b17e517df2cd85656fcd6b4e70946fe62cd625b9d74ac9977b64d8d9"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6994984550eaf25dd7fc7bd1b700ff45c894149341725bb4edc67f0ffa94efa4"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:56295eb1e5f3aecd516d91b00cfd8bf3a13991de5a479df9e27dd569ea23959c"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:439e76255daa0f8151d3cb325f6dd4a3e93043e6403e6491813bcaaaa8733887"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:f6475a1b2ecb310c98c28d271a30df74f9dd436ee46d09236a6b750a7599ce57"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:3444cdba6628accf384e349014084b1cacd866fbb88433cd9d279d90a54e0b23"}, - {file = "propcache-0.2.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4a9d9b4d0a9b38d1c391bb4ad24aa65f306c6f01b512e10a8a34a2dc5675d348"}, - {file = "propcache-0.2.0-cp312-cp312-win32.whl", hash = "sha256:69d3a98eebae99a420d4b28756c8ce6ea5a29291baf2dc9ff9414b42676f61d5"}, - {file = "propcache-0.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:ad9c9b99b05f163109466638bd30ada1722abb01bbb85c739c50b6dc11f92dc3"}, - {file = "propcache-0.2.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ecddc221a077a8132cf7c747d5352a15ed763b674c0448d811f408bf803d9ad7"}, - {file = "propcache-0.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0e53cb83fdd61cbd67202735e6a6687a7b491c8742dfc39c9e01e80354956763"}, - {file = "propcache-0.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:92fe151145a990c22cbccf9ae15cae8ae9eddabfc949a219c9f667877e40853d"}, - {file = "propcache-0.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6a21ef516d36909931a2967621eecb256018aeb11fc48656e3257e73e2e247a"}, - {file = "propcache-0.2.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3f88a4095e913f98988f5b338c1d4d5d07dbb0b6bad19892fd447484e483ba6b"}, - {file = "propcache-0.2.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a5b3bb545ead161be780ee85a2b54fdf7092815995661947812dde94a40f6fb"}, - {file = "propcache-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:67aeb72e0f482709991aa91345a831d0b707d16b0257e8ef88a2ad246a7280bf"}, - {file = "propcache-0.2.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c997f8c44ec9b9b0bcbf2d422cc00a1d9b9c681f56efa6ca149a941e5560da2"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:2a66df3d4992bc1d725b9aa803e8c5a66c010c65c741ad901e260ece77f58d2f"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:3ebbcf2a07621f29638799828b8d8668c421bfb94c6cb04269130d8de4fb7136"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:1235c01ddaa80da8235741e80815ce381c5267f96cc49b1477fdcf8c047ef325"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3947483a381259c06921612550867b37d22e1df6d6d7e8361264b6d037595f44"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:d5bed7f9805cc29c780f3aee05de3262ee7ce1f47083cfe9f77471e9d6777e83"}, - {file = "propcache-0.2.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e4a91d44379f45f5e540971d41e4626dacd7f01004826a18cb048e7da7e96544"}, - {file = "propcache-0.2.0-cp313-cp313-win32.whl", hash = "sha256:f902804113e032e2cdf8c71015651c97af6418363bea8d78dc0911d56c335032"}, - {file = "propcache-0.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:8f188cfcc64fb1266f4684206c9de0e80f54622c3f22a910cbd200478aeae61e"}, - {file = "propcache-0.2.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:53d1bd3f979ed529f0805dd35ddaca330f80a9a6d90bc0121d2ff398f8ed8861"}, - {file = "propcache-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:83928404adf8fb3d26793665633ea79b7361efa0287dfbd372a7e74311d51ee6"}, - {file = "propcache-0.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:77a86c261679ea5f3896ec060be9dc8e365788248cc1e049632a1be682442063"}, - {file = "propcache-0.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:218db2a3c297a3768c11a34812e63b3ac1c3234c3a086def9c0fee50d35add1f"}, - {file = "propcache-0.2.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7735e82e3498c27bcb2d17cb65d62c14f1100b71723b68362872bca7d0913d90"}, - {file = "propcache-0.2.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:20a617c776f520c3875cf4511e0d1db847a076d720714ae35ffe0df3e440be68"}, - {file = "propcache-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:67b69535c870670c9f9b14a75d28baa32221d06f6b6fa6f77a0a13c5a7b0a5b9"}, - {file = "propcache-0.2.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4569158070180c3855e9c0791c56be3ceeb192defa2cdf6a3f39e54319e56b89"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:db47514ffdbd91ccdc7e6f8407aac4ee94cc871b15b577c1c324236b013ddd04"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_armv7l.whl", hash = "sha256:2a60ad3e2553a74168d275a0ef35e8c0a965448ffbc3b300ab3a5bb9956c2162"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:662dd62358bdeaca0aee5761de8727cfd6861432e3bb828dc2a693aa0471a563"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:25a1f88b471b3bc911d18b935ecb7115dff3a192b6fef46f0bfaf71ff4f12418"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:f60f0ac7005b9f5a6091009b09a419ace1610e163fa5deaba5ce3484341840e7"}, - {file = "propcache-0.2.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:74acd6e291f885678631b7ebc85d2d4aec458dd849b8c841b57ef04047833bed"}, - {file = "propcache-0.2.0-cp38-cp38-win32.whl", hash = "sha256:d9b6ddac6408194e934002a69bcaadbc88c10b5f38fb9307779d1c629181815d"}, - {file = "propcache-0.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:676135dcf3262c9c5081cc8f19ad55c8a64e3f7282a21266d05544450bffc3a5"}, - {file = "propcache-0.2.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:25c8d773a62ce0451b020c7b29a35cfbc05de8b291163a7a0f3b7904f27253e6"}, - {file = "propcache-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:375a12d7556d462dc64d70475a9ee5982465fbb3d2b364f16b86ba9135793638"}, - {file = "propcache-0.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1ec43d76b9677637a89d6ab86e1fef70d739217fefa208c65352ecf0282be957"}, - {file = "propcache-0.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f45eec587dafd4b2d41ac189c2156461ebd0c1082d2fe7013571598abb8505d1"}, - {file = "propcache-0.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bc092ba439d91df90aea38168e11f75c655880c12782facf5cf9c00f3d42b562"}, - {file = "propcache-0.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fa1076244f54bb76e65e22cb6910365779d5c3d71d1f18b275f1dfc7b0d71b4d"}, - {file = "propcache-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:682a7c79a2fbf40f5dbb1eb6bfe2cd865376deeac65acf9beb607505dced9e12"}, - {file = "propcache-0.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8e40876731f99b6f3c897b66b803c9e1c07a989b366c6b5b475fafd1f7ba3fb8"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:363ea8cd3c5cb6679f1c2f5f1f9669587361c062e4899fce56758efa928728f8"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:140fbf08ab3588b3468932974a9331aff43c0ab8a2ec2c608b6d7d1756dbb6cb"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:e70fac33e8b4ac63dfc4c956fd7d85a0b1139adcfc0d964ce288b7c527537fea"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:b33d7a286c0dc1a15f5fc864cc48ae92a846df287ceac2dd499926c3801054a6"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:f6d5749fdd33d90e34c2efb174c7e236829147a2713334d708746e94c4bde40d"}, - {file = "propcache-0.2.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:22aa8f2272d81d9317ff5756bb108021a056805ce63dd3630e27d042c8092798"}, - {file = "propcache-0.2.0-cp39-cp39-win32.whl", hash = "sha256:73e4b40ea0eda421b115248d7e79b59214411109a5bc47d0d48e4c73e3b8fcf9"}, - {file = "propcache-0.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:9517d5e9e0731957468c29dbfd0f976736a0e55afaea843726e887f36fe017df"}, - {file = "propcache-0.2.0-py3-none-any.whl", hash = "sha256:2ccc28197af5313706511fab3a8b66dcd6da067a1331372c82ea1cb74285e036"}, - {file = "propcache-0.2.0.tar.gz", hash = "sha256:df81779732feb9d01e5d513fad0122efb3d53bbc75f61b2a4f29a020bc985e70"}, + {file = "propcache-0.2.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6b3f39a85d671436ee3d12c017f8fdea38509e4f25b28eb25877293c98c243f6"}, + {file = "propcache-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d51fbe4285d5db5d92a929e3e21536ea3dd43732c5b177c7ef03f918dff9f2"}, + {file = "propcache-0.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6445804cf4ec763dc70de65a3b0d9954e868609e83850a47ca4f0cb64bd79fea"}, + {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9479aa06a793c5aeba49ce5c5692ffb51fcd9a7016e017d555d5e2b0045d212"}, + {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d9631c5e8b5b3a0fda99cb0d29c18133bca1e18aea9effe55adb3da1adef80d3"}, + {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3156628250f46a0895f1f36e1d4fbe062a1af8718ec3ebeb746f1d23f0c5dc4d"}, + {file = "propcache-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b6fb63ae352e13748289f04f37868099e69dba4c2b3e271c46061e82c745634"}, + {file = "propcache-0.2.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:887d9b0a65404929641a9fabb6452b07fe4572b269d901d622d8a34a4e9043b2"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a96dc1fa45bd8c407a0af03b2d5218392729e1822b0c32e62c5bf7eeb5fb3958"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:a7e65eb5c003a303b94aa2c3852ef130230ec79e349632d030e9571b87c4698c"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:999779addc413181912e984b942fbcc951be1f5b3663cd80b2687758f434c583"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:19a0f89a7bb9d8048d9c4370c9c543c396e894c76be5525f5e1ad287f1750ddf"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1ac2f5fe02fa75f56e1ad473f1175e11f475606ec9bd0be2e78e4734ad575034"}, + {file = "propcache-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:574faa3b79e8ebac7cb1d7930f51184ba1ccf69adfdec53a12f319a06030a68b"}, + {file = "propcache-0.2.1-cp310-cp310-win32.whl", hash = "sha256:03ff9d3f665769b2a85e6157ac8b439644f2d7fd17615a82fa55739bc97863f4"}, + {file = "propcache-0.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:2d3af2e79991102678f53e0dbf4c35de99b6b8b58f29a27ca0325816364caaba"}, + {file = "propcache-0.2.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1ffc3cca89bb438fb9c95c13fc874012f7b9466b89328c3c8b1aa93cdcfadd16"}, + {file = "propcache-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f174bbd484294ed9fdf09437f889f95807e5f229d5d93588d34e92106fbf6717"}, + {file = "propcache-0.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:70693319e0b8fd35dd863e3e29513875eb15c51945bf32519ef52927ca883bc3"}, + {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b480c6a4e1138e1aa137c0079b9b6305ec6dcc1098a8ca5196283e8a49df95a9"}, + {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d27b84d5880f6d8aa9ae3edb253c59d9f6642ffbb2c889b78b60361eed449787"}, + {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:857112b22acd417c40fa4595db2fe28ab900c8c5fe4670c7989b1c0230955465"}, + {file = "propcache-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf6c4150f8c0e32d241436526f3c3f9cbd34429492abddbada2ffcff506c51af"}, + {file = "propcache-0.2.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66d4cfda1d8ed687daa4bc0274fcfd5267873db9a5bc0418c2da19273040eeb7"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c2f992c07c0fca81655066705beae35fc95a2fa7366467366db627d9f2ee097f"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:4a571d97dbe66ef38e472703067021b1467025ec85707d57e78711c085984e54"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:bb6178c241278d5fe853b3de743087be7f5f4c6f7d6d22a3b524d323eecec505"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:ad1af54a62ffe39cf34db1aa6ed1a1873bd548f6401db39d8e7cd060b9211f82"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:e7048abd75fe40712005bcfc06bb44b9dfcd8e101dda2ecf2f5aa46115ad07ca"}, + {file = "propcache-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:160291c60081f23ee43d44b08a7e5fb76681221a8e10b3139618c5a9a291b84e"}, + {file = "propcache-0.2.1-cp311-cp311-win32.whl", hash = "sha256:819ce3b883b7576ca28da3861c7e1a88afd08cc8c96908e08a3f4dd64a228034"}, + {file = "propcache-0.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:edc9fc7051e3350643ad929df55c451899bb9ae6d24998a949d2e4c87fb596d3"}, + {file = "propcache-0.2.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:081a430aa8d5e8876c6909b67bd2d937bfd531b0382d3fdedb82612c618bc41a"}, + {file = "propcache-0.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d2ccec9ac47cf4e04897619c0e0c1a48c54a71bdf045117d3a26f80d38ab1fb0"}, + {file = "propcache-0.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:14d86fe14b7e04fa306e0c43cdbeebe6b2c2156a0c9ce56b815faacc193e320d"}, + {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:049324ee97bb67285b49632132db351b41e77833678432be52bdd0289c0e05e4"}, + {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1cd9a1d071158de1cc1c71a26014dcdfa7dd3d5f4f88c298c7f90ad6f27bb46d"}, + {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98110aa363f1bb4c073e8dcfaefd3a5cea0f0834c2aab23dda657e4dab2f53b5"}, + {file = "propcache-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:647894f5ae99c4cf6bb82a1bb3a796f6e06af3caa3d32e26d2350d0e3e3faf24"}, + {file = "propcache-0.2.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bfd3223c15bebe26518d58ccf9a39b93948d3dcb3e57a20480dfdd315356baff"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d71264a80f3fcf512eb4f18f59423fe82d6e346ee97b90625f283df56aee103f"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:e73091191e4280403bde6c9a52a6999d69cdfde498f1fdf629105247599b57ec"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:3935bfa5fede35fb202c4b569bb9c042f337ca4ff7bd540a0aa5e37131659348"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:f508b0491767bb1f2b87fdfacaba5f7eddc2f867740ec69ece6d1946d29029a6"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:1672137af7c46662a1c2be1e8dc78cb6d224319aaa40271c9257d886be4363a6"}, + {file = "propcache-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:b74c261802d3d2b85c9df2dfb2fa81b6f90deeef63c2db9f0e029a3cac50b518"}, + {file = "propcache-0.2.1-cp312-cp312-win32.whl", hash = "sha256:d09c333d36c1409d56a9d29b3a1b800a42c76a57a5a8907eacdbce3f18768246"}, + {file = "propcache-0.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:c214999039d4f2a5b2073ac506bba279945233da8c786e490d411dfc30f855c1"}, + {file = "propcache-0.2.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aca405706e0b0a44cc6bfd41fbe89919a6a56999157f6de7e182a990c36e37bc"}, + {file = "propcache-0.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:12d1083f001ace206fe34b6bdc2cb94be66d57a850866f0b908972f90996b3e9"}, + {file = "propcache-0.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d93f3307ad32a27bda2e88ec81134b823c240aa3abb55821a8da553eed8d9439"}, + {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ba278acf14471d36316159c94a802933d10b6a1e117b8554fe0d0d9b75c9d536"}, + {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4e6281aedfca15301c41f74d7005e6e3f4ca143584ba696ac69df4f02f40d629"}, + {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5b750a8e5a1262434fb1517ddf64b5de58327f1adc3524a5e44c2ca43305eb0b"}, + {file = "propcache-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf72af5e0fb40e9babf594308911436c8efde3cb5e75b6f206c34ad18be5c052"}, + {file = "propcache-0.2.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b2d0a12018b04f4cb820781ec0dffb5f7c7c1d2a5cd22bff7fb055a2cb19ebce"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e800776a79a5aabdb17dcc2346a7d66d0777e942e4cd251defeb084762ecd17d"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:4160d9283bd382fa6c0c2b5e017acc95bc183570cd70968b9202ad6d8fc48dce"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:30b43e74f1359353341a7adb783c8f1b1c676367b011709f466f42fda2045e95"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:58791550b27d5488b1bb52bc96328456095d96206a250d28d874fafe11b3dfaf"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0f022d381747f0dfe27e99d928e31bc51a18b65bb9e481ae0af1380a6725dd1f"}, + {file = "propcache-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:297878dc9d0a334358f9b608b56d02e72899f3b8499fc6044133f0d319e2ec30"}, + {file = "propcache-0.2.1-cp313-cp313-win32.whl", hash = "sha256:ddfab44e4489bd79bda09d84c430677fc7f0a4939a73d2bba3073036f487a0a6"}, + {file = "propcache-0.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:556fc6c10989f19a179e4321e5d678db8eb2924131e64652a51fe83e4c3db0e1"}, + {file = "propcache-0.2.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6a9a8c34fb7bb609419a211e59da8887eeca40d300b5ea8e56af98f6fbbb1541"}, + {file = "propcache-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ae1aa1cd222c6d205853b3013c69cd04515f9d6ab6de4b0603e2e1c33221303e"}, + {file = "propcache-0.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:accb6150ce61c9c4b7738d45550806aa2b71c7668c6942f17b0ac182b6142fd4"}, + {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5eee736daafa7af6d0a2dc15cc75e05c64f37fc37bafef2e00d77c14171c2097"}, + {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7a31fc1e1bd362874863fdeed71aed92d348f5336fd84f2197ba40c59f061bd"}, + {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba4cfa1052819d16699e1d55d18c92b6e094d4517c41dd231a8b9f87b6fa681"}, + {file = "propcache-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f089118d584e859c62b3da0892b88a83d611c2033ac410e929cb6754eec0ed16"}, + {file = "propcache-0.2.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:781e65134efaf88feb447e8c97a51772aa75e48b794352f94cb7ea717dedda0d"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31f5af773530fd3c658b32b6bdc2d0838543de70eb9a2156c03e410f7b0d3aae"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:a7a078f5d37bee6690959c813977da5291b24286e7b962e62a94cec31aa5188b"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:cea7daf9fc7ae6687cf1e2c049752f19f146fdc37c2cc376e7d0032cf4f25347"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:8b3489ff1ed1e8315674d0775dc7d2195fb13ca17b3808721b54dbe9fd020faf"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:9403db39be1393618dd80c746cb22ccda168efce239c73af13c3763ef56ffc04"}, + {file = "propcache-0.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5d97151bc92d2b2578ff7ce779cdb9174337390a535953cbb9452fb65164c587"}, + {file = "propcache-0.2.1-cp39-cp39-win32.whl", hash = "sha256:9caac6b54914bdf41bcc91e7eb9147d331d29235a7c967c150ef5df6464fd1bb"}, + {file = "propcache-0.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:92fc4500fcb33899b05ba73276dfb684a20d31caa567b7cb5252d48f896a91b1"}, + {file = "propcache-0.2.1-py3-none-any.whl", hash = "sha256:52277518d6aae65536e9cea52d4e7fd2f7a66f4aa2d30ed3f2fcea620ace3c54"}, + {file = "propcache-0.2.1.tar.gz", hash = "sha256:3f77ce728b19cb537714499928fe800c3dda29e8d9428778fc7c186da4c09a64"}, ] [[package]] @@ -1549,123 +1601,131 @@ files = [ [[package]] name = "pydantic" -version = "2.9.0" +version = "2.10.5" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.9.0-py3-none-any.whl", hash = "sha256:f66a7073abd93214a20c5f7b32d56843137a7a2e70d02111f3be287035c45370"}, - {file = "pydantic-2.9.0.tar.gz", hash = "sha256:c7a8a9fdf7d100afa49647eae340e2d23efa382466a8d177efcd1381e9be5598"}, + {file = "pydantic-2.10.5-py3-none-any.whl", hash = "sha256:4dd4e322dbe55472cb7ca7e73f4b63574eecccf2835ffa2af9021ce113c83c53"}, + {file = "pydantic-2.10.5.tar.gz", hash = "sha256:278b38dbbaec562011d659ee05f63346951b3a248a6f3642e1bc68894ea2b4ff"}, ] [package.dependencies] -annotated-types = ">=0.4.0" -pydantic-core = "2.23.2" -typing-extensions = [ - {version = ">=4.6.1", markers = "python_version < \"3.13\""}, - {version = ">=4.12.2", markers = "python_version >= \"3.13\""}, -] -tzdata = {version = "*", markers = "python_version >= \"3.9\""} +annotated-types = ">=0.6.0" +pydantic-core = "2.27.2" +typing-extensions = ">=4.12.2" [package.extras] email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] [[package]] name = "pydantic-core" -version = "2.23.2" +version = "2.27.2" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.23.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:7d0324a35ab436c9d768753cbc3c47a865a2cbc0757066cb864747baa61f6ece"}, - {file = "pydantic_core-2.23.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:276ae78153a94b664e700ac362587c73b84399bd1145e135287513442e7dfbc7"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:964c7aa318da542cdcc60d4a648377ffe1a2ef0eb1e996026c7f74507b720a78"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1cf842265a3a820ebc6388b963ead065f5ce8f2068ac4e1c713ef77a67b71f7c"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae90b9e50fe1bd115b24785e962b51130340408156d34d67b5f8f3fa6540938e"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ae65fdfb8a841556b52935dfd4c3f79132dc5253b12c0061b96415208f4d622"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c8aa40f6ca803f95b1c1c5aeaee6237b9e879e4dfb46ad713229a63651a95fb"}, - {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c53100c8ee5a1e102766abde2158077d8c374bee0639201f11d3032e3555dfbc"}, - {file = "pydantic_core-2.23.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d6b9dd6aa03c812017411734e496c44fef29b43dba1e3dd1fa7361bbacfc1354"}, - {file = "pydantic_core-2.23.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b18cf68255a476b927910c6873d9ed00da692bb293c5b10b282bd48a0afe3ae2"}, - {file = "pydantic_core-2.23.2-cp310-none-win32.whl", hash = "sha256:e460475719721d59cd54a350c1f71c797c763212c836bf48585478c5514d2854"}, - {file = "pydantic_core-2.23.2-cp310-none-win_amd64.whl", hash = "sha256:5f3cf3721eaf8741cffaf092487f1ca80831202ce91672776b02b875580e174a"}, - {file = "pydantic_core-2.23.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:7ce8e26b86a91e305858e018afc7a6e932f17428b1eaa60154bd1f7ee888b5f8"}, - {file = "pydantic_core-2.23.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e9b24cca4037a561422bf5dc52b38d390fb61f7bfff64053ce1b72f6938e6b2"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:753294d42fb072aa1775bfe1a2ba1012427376718fa4c72de52005a3d2a22178"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:257d6a410a0d8aeb50b4283dea39bb79b14303e0fab0f2b9d617701331ed1515"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c8319e0bd6a7b45ad76166cc3d5d6a36c97d0c82a196f478c3ee5346566eebfd"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7a05c0240f6c711eb381ac392de987ee974fa9336071fb697768dfdb151345ce"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d5b0ff3218858859910295df6953d7bafac3a48d5cd18f4e3ed9999efd2245f"}, - {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:96ef39add33ff58cd4c112cbac076726b96b98bb8f1e7f7595288dcfb2f10b57"}, - {file = "pydantic_core-2.23.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0102e49ac7d2df3379ef8d658d3bc59d3d769b0bdb17da189b75efa861fc07b4"}, - {file = "pydantic_core-2.23.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a6612c2a844043e4d10a8324c54cdff0042c558eef30bd705770793d70b224aa"}, - {file = "pydantic_core-2.23.2-cp311-none-win32.whl", hash = "sha256:caffda619099cfd4f63d48462f6aadbecee3ad9603b4b88b60cb821c1b258576"}, - {file = "pydantic_core-2.23.2-cp311-none-win_amd64.whl", hash = "sha256:6f80fba4af0cb1d2344869d56430e304a51396b70d46b91a55ed4959993c0589"}, - {file = "pydantic_core-2.23.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:4c83c64d05ffbbe12d4e8498ab72bdb05bcc1026340a4a597dc647a13c1605ec"}, - {file = "pydantic_core-2.23.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6294907eaaccf71c076abdd1c7954e272efa39bb043161b4b8aa1cd76a16ce43"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a801c5e1e13272e0909c520708122496647d1279d252c9e6e07dac216accc41"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cc0c316fba3ce72ac3ab7902a888b9dc4979162d320823679da270c2d9ad0cad"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6b06c5d4e8701ac2ba99a2ef835e4e1b187d41095a9c619c5b185c9068ed2a49"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:82764c0bd697159fe9947ad59b6db6d7329e88505c8f98990eb07e84cc0a5d81"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2b1a195efd347ede8bcf723e932300292eb13a9d2a3c1f84eb8f37cbbc905b7f"}, - {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7efb12e5071ad8d5b547487bdad489fbd4a5a35a0fc36a1941517a6ad7f23e0"}, - {file = "pydantic_core-2.23.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:5dd0ec5f514ed40e49bf961d49cf1bc2c72e9b50f29a163b2cc9030c6742aa73"}, - {file = "pydantic_core-2.23.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:820f6ee5c06bc868335e3b6e42d7ef41f50dfb3ea32fbd523ab679d10d8741c0"}, - {file = "pydantic_core-2.23.2-cp312-none-win32.whl", hash = "sha256:3713dc093d5048bfaedbba7a8dbc53e74c44a140d45ede020dc347dda18daf3f"}, - {file = "pydantic_core-2.23.2-cp312-none-win_amd64.whl", hash = "sha256:e1895e949f8849bc2757c0dbac28422a04be031204df46a56ab34bcf98507342"}, - {file = "pydantic_core-2.23.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:da43cbe593e3c87d07108d0ebd73771dc414488f1f91ed2e204b0370b94b37ac"}, - {file = "pydantic_core-2.23.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:64d094ea1aa97c6ded4748d40886076a931a8bf6f61b6e43e4a1041769c39dd2"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:084414ffe9a85a52940b49631321d636dadf3576c30259607b75516d131fecd0"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:043ef8469f72609c4c3a5e06a07a1f713d53df4d53112c6d49207c0bd3c3bd9b"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3649bd3ae6a8ebea7dc381afb7f3c6db237fc7cebd05c8ac36ca8a4187b03b30"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6db09153d8438425e98cdc9a289c5fade04a5d2128faff8f227c459da21b9703"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5668b3173bb0b2e65020b60d83f5910a7224027232c9f5dc05a71a1deac9f960"}, - {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1c7b81beaf7c7ebde978377dc53679c6cba0e946426fc7ade54251dfe24a7604"}, - {file = "pydantic_core-2.23.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:ae579143826c6f05a361d9546446c432a165ecf1c0b720bbfd81152645cb897d"}, - {file = "pydantic_core-2.23.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:19f1352fe4b248cae22a89268720fc74e83f008057a652894f08fa931e77dced"}, - {file = "pydantic_core-2.23.2-cp313-none-win32.whl", hash = "sha256:e1a79ad49f346aa1a2921f31e8dbbab4d64484823e813a002679eaa46cba39e1"}, - {file = "pydantic_core-2.23.2-cp313-none-win_amd64.whl", hash = "sha256:582871902e1902b3c8e9b2c347f32a792a07094110c1bca6c2ea89b90150caac"}, - {file = "pydantic_core-2.23.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:743e5811b0c377eb830150d675b0847a74a44d4ad5ab8845923d5b3a756d8100"}, - {file = "pydantic_core-2.23.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6650a7bbe17a2717167e3e23c186849bae5cef35d38949549f1c116031b2b3aa"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56e6a12ec8d7679f41b3750ffa426d22b44ef97be226a9bab00a03365f217b2b"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:810ca06cca91de9107718dc83d9ac4d2e86efd6c02cba49a190abcaf33fb0472"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:785e7f517ebb9890813d31cb5d328fa5eda825bb205065cde760b3150e4de1f7"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ef71ec876fcc4d3bbf2ae81961959e8d62f8d74a83d116668409c224012e3af"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d50ac34835c6a4a0d456b5db559b82047403c4317b3bc73b3455fefdbdc54b0a"}, - {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16b25a4a120a2bb7dab51b81e3d9f3cde4f9a4456566c403ed29ac81bf49744f"}, - {file = "pydantic_core-2.23.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:41ae8537ad371ec018e3c5da0eb3f3e40ee1011eb9be1da7f965357c4623c501"}, - {file = "pydantic_core-2.23.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:07049ec9306ec64e955b2e7c40c8d77dd78ea89adb97a2013d0b6e055c5ee4c5"}, - {file = "pydantic_core-2.23.2-cp38-none-win32.whl", hash = "sha256:086c5db95157dc84c63ff9d96ebb8856f47ce113c86b61065a066f8efbe80acf"}, - {file = "pydantic_core-2.23.2-cp38-none-win_amd64.whl", hash = "sha256:67b6655311b00581914aba481729971b88bb8bc7996206590700a3ac85e457b8"}, - {file = "pydantic_core-2.23.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:358331e21a897151e54d58e08d0219acf98ebb14c567267a87e971f3d2a3be59"}, - {file = "pydantic_core-2.23.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c4d9f15ffe68bcd3898b0ad7233af01b15c57d91cd1667f8d868e0eacbfe3f87"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0123655fedacf035ab10c23450163c2f65a4174f2bb034b188240a6cf06bb123"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e6e3ccebdbd6e53474b0bb7ab8b88e83c0cfe91484b25e058e581348ee5a01a5"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fc535cb898ef88333cf317777ecdfe0faac1c2a3187ef7eb061b6f7ecf7e6bae"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aab9e522efff3993a9e98ab14263d4e20211e62da088298089a03056980a3e69"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05b366fb8fe3d8683b11ac35fa08947d7b92be78ec64e3277d03bd7f9b7cda79"}, - {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7568f682c06f10f30ef643a1e8eec4afeecdafde5c4af1b574c6df079e96f96c"}, - {file = "pydantic_core-2.23.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:cdd02a08205dc90238669f082747612cb3c82bd2c717adc60f9b9ecadb540f80"}, - {file = "pydantic_core-2.23.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1a2ab4f410f4b886de53b6bddf5dd6f337915a29dd9f22f20f3099659536b2f6"}, - {file = "pydantic_core-2.23.2-cp39-none-win32.whl", hash = "sha256:0448b81c3dfcde439551bb04a9f41d7627f676b12701865c8a2574bcea034437"}, - {file = "pydantic_core-2.23.2-cp39-none-win_amd64.whl", hash = "sha256:4cebb9794f67266d65e7e4cbe5dcf063e29fc7b81c79dc9475bd476d9534150e"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e758d271ed0286d146cf7c04c539a5169a888dd0b57026be621547e756af55bc"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:f477d26183e94eaafc60b983ab25af2a809a1b48ce4debb57b343f671b7a90b6"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da3131ef2b940b99106f29dfbc30d9505643f766704e14c5d5e504e6a480c35e"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329a721253c7e4cbd7aad4a377745fbcc0607f9d72a3cc2102dd40519be75ed2"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7706e15cdbf42f8fab1e6425247dfa98f4a6f8c63746c995d6a2017f78e619ae"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e64ffaf8f6e17ca15eb48344d86a7a741454526f3a3fa56bc493ad9d7ec63936"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:dd59638025160056687d598b054b64a79183f8065eae0d3f5ca523cde9943940"}, - {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:12625e69b1199e94b0ae1c9a95d000484ce9f0182f9965a26572f054b1537e44"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5d813fd871b3d5c3005157622ee102e8908ad6011ec915a18bd8fde673c4360e"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:1eb37f7d6a8001c0f86dc8ff2ee8d08291a536d76e49e78cda8587bb54d8b329"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ce7eaf9a98680b4312b7cebcdd9352531c43db00fca586115845df388f3c465"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f087879f1ffde024dd2788a30d55acd67959dcf6c431e9d3682d1c491a0eb474"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ce883906810b4c3bd90e0ada1f9e808d9ecf1c5f0b60c6b8831d6100bcc7dd6"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:a8031074a397a5925d06b590121f8339d34a5a74cfe6970f8a1124eb8b83f4ac"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:23af245b8f2f4ee9e2c99cb3f93d0e22fb5c16df3f2f643f5a8da5caff12a653"}, - {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c57e493a0faea1e4c38f860d6862ba6832723396c884fbf938ff5e9b224200e2"}, - {file = "pydantic_core-2.23.2.tar.gz", hash = "sha256:95d6bf449a1ac81de562d65d180af5d8c19672793c81877a2eda8fde5d08f2fd"}, + {file = "pydantic_core-2.27.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2d367ca20b2f14095a8f4fa1210f5a7b78b8a20009ecced6b12818f455b1e9fa"}, + {file = "pydantic_core-2.27.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:491a2b73db93fab69731eaee494f320faa4e093dbed776be1a829c2eb222c34c"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7969e133a6f183be60e9f6f56bfae753585680f3b7307a8e555a948d443cc05a"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3de9961f2a346257caf0aa508a4da705467f53778e9ef6fe744c038119737ef5"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e2bb4d3e5873c37bb3dd58714d4cd0b0e6238cebc4177ac8fe878f8b3aa8e74c"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:280d219beebb0752699480fe8f1dc61ab6615c2046d76b7ab7ee38858de0a4e7"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47956ae78b6422cbd46f772f1746799cbb862de838fd8d1fbd34a82e05b0983a"}, + {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:14d4a5c49d2f009d62a2a7140d3064f686d17a5d1a268bc641954ba181880236"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:337b443af21d488716f8d0b6164de833e788aa6bd7e3a39c005febc1284f4962"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:03d0f86ea3184a12f41a2d23f7ccb79cdb5a18e06993f8a45baa8dfec746f0e9"}, + {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7041c36f5680c6e0f08d922aed302e98b3745d97fe1589db0a3eebf6624523af"}, + {file = "pydantic_core-2.27.2-cp310-cp310-win32.whl", hash = "sha256:50a68f3e3819077be2c98110c1f9dcb3817e93f267ba80a2c05bb4f8799e2ff4"}, + {file = "pydantic_core-2.27.2-cp310-cp310-win_amd64.whl", hash = "sha256:e0fd26b16394ead34a424eecf8a31a1f5137094cabe84a1bcb10fa6ba39d3d31"}, + {file = "pydantic_core-2.27.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:8e10c99ef58cfdf2a66fc15d66b16c4a04f62bca39db589ae8cba08bc55331bc"}, + {file = "pydantic_core-2.27.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:26f32e0adf166a84d0cb63be85c562ca8a6fa8de28e5f0d92250c6b7e9e2aff7"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c19d1ea0673cd13cc2f872f6c9ab42acc4e4f492a7ca9d3795ce2b112dd7e15"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5e68c4446fe0810e959cdff46ab0a41ce2f2c86d227d96dc3847af0ba7def306"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d9640b0059ff4f14d1f37321b94061c6db164fbe49b334b31643e0528d100d99"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:40d02e7d45c9f8af700f3452f329ead92da4c5f4317ca9b896de7ce7199ea459"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c1fd185014191700554795c99b347d64f2bb637966c4cfc16998a0ca700d048"}, + {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d81d2068e1c1228a565af076598f9e7451712700b673de8f502f0334f281387d"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1a4207639fb02ec2dbb76227d7c751a20b1a6b4bc52850568e52260cae64ca3b"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:3de3ce3c9ddc8bbd88f6e0e304dea0e66d843ec9de1b0042b0911c1663ffd474"}, + {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:30c5f68ded0c36466acede341551106821043e9afaad516adfb6e8fa80a4e6a6"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win32.whl", hash = "sha256:c70c26d2c99f78b125a3459f8afe1aed4d9687c24fd677c6a4436bc042e50d6c"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win_amd64.whl", hash = "sha256:08e125dbdc505fa69ca7d9c499639ab6407cfa909214d500897d02afb816e7cc"}, + {file = "pydantic_core-2.27.2-cp311-cp311-win_arm64.whl", hash = "sha256:26f0d68d4b235a2bae0c3fc585c585b4ecc51382db0e3ba402a22cbc440915e4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9e0c8cfefa0ef83b4da9588448b6d8d2a2bf1a53c3f1ae5fca39eb3061e2f0b0"}, + {file = "pydantic_core-2.27.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:83097677b8e3bd7eaa6775720ec8e0405f1575015a463285a92bfdfe254529ef"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:172fce187655fece0c90d90a678424b013f8fbb0ca8b036ac266749c09438cb7"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:519f29f5213271eeeeb3093f662ba2fd512b91c5f188f3bb7b27bc5973816934"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:05e3a55d124407fffba0dd6b0c0cd056d10e983ceb4e5dbd10dda135c31071d6"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c3ed807c7b91de05e63930188f19e921d1fe90de6b4f5cd43ee7fcc3525cb8c"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fb4aadc0b9a0c063206846d603b92030eb6f03069151a625667f982887153e2"}, + {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:28ccb213807e037460326424ceb8b5245acb88f32f3d2777427476e1b32c48c4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:de3cd1899e2c279b140adde9357c4495ed9d47131b4a4eaff9052f23398076b3"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:220f892729375e2d736b97d0e51466252ad84c51857d4d15f5e9692f9ef12be4"}, + {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a0fcd29cd6b4e74fe8ddd2c90330fd8edf2e30cb52acda47f06dd615ae72da57"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win32.whl", hash = "sha256:1e2cb691ed9834cd6a8be61228471d0a503731abfb42f82458ff27be7b2186fc"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win_amd64.whl", hash = "sha256:cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9"}, + {file = "pydantic_core-2.27.2-cp312-cp312-win_arm64.whl", hash = "sha256:3911ac9284cd8a1792d3cb26a2da18f3ca26c6908cc434a18f730dc0db7bfa3b"}, + {file = "pydantic_core-2.27.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7d14bd329640e63852364c306f4d23eb744e0f8193148d4044dd3dacdaacbd8b"}, + {file = "pydantic_core-2.27.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82f91663004eb8ed30ff478d77c4d1179b3563df6cdb15c0817cd1cdaf34d154"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71b24c7d61131bb83df10cc7e687433609963a944ccf45190cfc21e0887b08c9"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fa8e459d4954f608fa26116118bb67f56b93b209c39b008277ace29937453dc9"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8918cbebc8da707ba805b7fd0b382816858728ae7fe19a942080c24e5b7cd1"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eda3f5c2a021bbc5d976107bb302e0131351c2ba54343f8a496dc8783d3d3a6a"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd8086fa684c4775c27f03f062cbb9eaa6e17f064307e86b21b9e0abc9c0f02e"}, + {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8d9b3388db186ba0c099a6d20f0604a44eabdeef1777ddd94786cdae158729e4"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7a66efda2387de898c8f38c0cf7f14fca0b51a8ef0b24bfea5849f1b3c95af27"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:18a101c168e4e092ab40dbc2503bdc0f62010e95d292b27827871dc85450d7ee"}, + {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ba5dd002f88b78a4215ed2f8ddbdf85e8513382820ba15ad5ad8955ce0ca19a1"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win32.whl", hash = "sha256:1ebaf1d0481914d004a573394f4be3a7616334be70261007e47c2a6fe7e50130"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win_amd64.whl", hash = "sha256:953101387ecf2f5652883208769a79e48db18c6df442568a0b5ccd8c2723abee"}, + {file = "pydantic_core-2.27.2-cp313-cp313-win_arm64.whl", hash = "sha256:ac4dbfd1691affb8f48c2c13241a2e3b60ff23247cbcf981759c768b6633cf8b"}, + {file = "pydantic_core-2.27.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d3e8d504bdd3f10835468f29008d72fc8359d95c9c415ce6e767203db6127506"}, + {file = "pydantic_core-2.27.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:521eb9b7f036c9b6187f0b47318ab0d7ca14bd87f776240b90b21c1f4f149320"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85210c4d99a0114f5a9481b44560d7d1e35e32cc5634c656bc48e590b669b145"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d716e2e30c6f140d7560ef1538953a5cd1a87264c737643d481f2779fc247fe1"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f66d89ba397d92f840f8654756196d93804278457b5fbede59598a1f9f90b228"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:669e193c1c576a58f132e3158f9dfa9662969edb1a250c54d8fa52590045f046"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdbe7629b996647b99c01b37f11170a57ae675375b14b8c13b8518b8320ced5"}, + {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d262606bf386a5ba0b0af3b97f37c83d7011439e3dc1a9298f21efb292e42f1a"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cabb9bcb7e0d97f74df8646f34fc76fbf793b7f6dc2438517d7a9e50eee4f14d"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_armv7l.whl", hash = "sha256:d2d63f1215638d28221f664596b1ccb3944f6e25dd18cd3b86b0a4c408d5ebb9"}, + {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bca101c00bff0adb45a833f8451b9105d9df18accb8743b08107d7ada14bd7da"}, + {file = "pydantic_core-2.27.2-cp38-cp38-win32.whl", hash = "sha256:f6f8e111843bbb0dee4cb6594cdc73e79b3329b526037ec242a3e49012495b3b"}, + {file = "pydantic_core-2.27.2-cp38-cp38-win_amd64.whl", hash = "sha256:fd1aea04935a508f62e0d0ef1f5ae968774a32afc306fb8545e06f5ff5cdf3ad"}, + {file = "pydantic_core-2.27.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c10eb4f1659290b523af58fa7cffb452a61ad6ae5613404519aee4bfbf1df993"}, + {file = "pydantic_core-2.27.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ef592d4bad47296fb11f96cd7dc898b92e795032b4894dfb4076cfccd43a9308"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c61709a844acc6bf0b7dce7daae75195a10aac96a596ea1b776996414791ede4"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c5f762659e47fdb7b16956c71598292f60a03aa92f8b6351504359dbdba6cf"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c9775e339e42e79ec99c441d9730fccf07414af63eac2f0e48e08fd38a64d76"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57762139821c31847cfb2df63c12f725788bd9f04bc2fb392790959b8f70f118"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d1e85068e818c73e048fe28cfc769040bb1f475524f4745a5dc621f75ac7630"}, + {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:097830ed52fd9e427942ff3b9bc17fab52913b2f50f2880dc4a5611446606a54"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:044a50963a614ecfae59bb1eaf7ea7efc4bc62f49ed594e18fa1e5d953c40e9f"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:4e0b4220ba5b40d727c7f879eac379b822eee5d8fff418e9d3381ee45b3b0362"}, + {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e4f4bb20d75e9325cc9696c6802657b58bc1dbbe3022f32cc2b2b632c3fbb96"}, + {file = "pydantic_core-2.27.2-cp39-cp39-win32.whl", hash = "sha256:cca63613e90d001b9f2f9a9ceb276c308bfa2a43fafb75c8031c4f66039e8c6e"}, + {file = "pydantic_core-2.27.2-cp39-cp39-win_amd64.whl", hash = "sha256:77d1bca19b0f7021b3a982e6f903dcd5b2b06076def36a652e3907f596e29f67"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2bf14caea37e91198329b828eae1618c068dfb8ef17bb33287a7ad4b61ac314e"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:b0cb791f5b45307caae8810c2023a184c74605ec3bcbb67d13846c28ff731ff8"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:688d3fd9fcb71f41c4c015c023d12a79d1c4c0732ec9eb35d96e3388a120dcf3"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d591580c34f4d731592f0e9fe40f9cc1b430d297eecc70b962e93c5c668f15f"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:82f986faf4e644ffc189a7f1aafc86e46ef70372bb153e7001e8afccc6e54133"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:bec317a27290e2537f922639cafd54990551725fc844249e64c523301d0822fc"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:0296abcb83a797db256b773f45773da397da75a08f5fcaef41f2044adec05f50"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0d75070718e369e452075a6017fbf187f788e17ed67a3abd47fa934d001863d9"}, + {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:7e17b560be3c98a8e3aa66ce828bdebb9e9ac6ad5466fba92eb74c4c95cb1151"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c33939a82924da9ed65dab5a65d427205a73181d8098e79b6b426bdf8ad4e656"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:00bad2484fa6bda1e216e7345a798bd37c68fb2d97558edd584942aa41b7d278"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817e2b40aba42bac6f457498dacabc568c3b7a986fc9ba7c8d9d260b71485fb"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:251136cdad0cb722e93732cb45ca5299fb56e1344a833640bf93b2803f8d1bfd"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d2088237af596f0a524d3afc39ab3b036e8adb054ee57cbb1dcf8e09da5b29cc"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d4041c0b966a84b4ae7a09832eb691a35aec90910cd2dbe7a208de59be77965b"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:8083d4e875ebe0b864ffef72a4304827015cff328a1be6e22cc850753bfb122b"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f141ee28a0ad2123b6611b6ceff018039df17f32ada8b534e6aa039545a3efb2"}, + {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7d0c8399fcc1848491f00e0314bd59fb34a9c008761bcb422a057670c3f65e35"}, + {file = "pydantic_core-2.27.2.tar.gz", hash = "sha256:eb026e5a4c1fee05726072337ff51d1efb6f59090b7da90d30ea58625b1ffb39"}, ] [package.dependencies] @@ -1673,13 +1733,13 @@ typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" [[package]] name = "pygments" -version = "2.18.0" +version = "2.19.1" description = "Pygments is a syntax highlighting package written in Python." optional = false python-versions = ">=3.8" files = [ - {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, - {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, + {file = "pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c"}, + {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"}, ] [package.extras] @@ -1687,27 +1747,22 @@ windows-terminal = ["colorama (>=0.4.6)"] [[package]] name = "pylint" -version = "3.2.7" +version = "3.3.3" description = "python code static checker" optional = false -python-versions = ">=3.8.0" +python-versions = ">=3.9.0" files = [ - {file = "pylint-3.2.7-py3-none-any.whl", hash = "sha256:02f4aedeac91be69fb3b4bea997ce580a4ac68ce58b89eaefeaf06749df73f4b"}, - {file = "pylint-3.2.7.tar.gz", hash = "sha256:1b7a721b575eaeaa7d39db076b6e7743c993ea44f57979127c517c6c572c803e"}, + {file = "pylint-3.3.3-py3-none-any.whl", hash = "sha256:26e271a2bc8bce0fc23833805a9076dd9b4d5194e2a02164942cb3cdc37b4183"}, + {file = "pylint-3.3.3.tar.gz", hash = "sha256:07c607523b17e6d16e2ae0d7ef59602e332caa762af64203c24b41c27139f36a"}, ] [package.dependencies] -astroid = ">=3.2.4,<=3.3.0-dev0" +astroid = ">=3.3.8,<=3.4.0-dev0" colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -dill = [ - {version = ">=0.2", markers = "python_version < \"3.11\""}, - {version = ">=0.3.7", markers = "python_version >= \"3.12\""}, - {version = ">=0.3.6", markers = "python_version >= \"3.11\" and python_version < \"3.12\""}, -] +dill = {version = ">=0.3.7", markers = "python_version >= \"3.12\""} isort = ">=4.2.5,<5.13.0 || >5.13.0,<6" mccabe = ">=0.6,<0.8" platformdirs = ">=2.2.0" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} tomlkit = ">=0.10.1" [package.extras] @@ -1716,13 +1771,13 @@ testutils = ["gitpython (>3)"] [[package]] name = "pynetbox" -version = "7.4.0" +version = "7.4.1" description = "NetBox API client library" optional = false python-versions = "*" files = [ - {file = "pynetbox-7.4.0-py3-none-any.whl", hash = "sha256:974d93da77ad404e813bc7b3948d9664e0653262f0fb1e97715217aee062a648"}, - {file = "pynetbox-7.4.0.tar.gz", hash = "sha256:fd0b1f197b3880048408ff5ed84422dd599bcd9389e32cb06a09b9b0d55c1636"}, + {file = "pynetbox-7.4.1-py3-none-any.whl", hash = "sha256:f42ce4df6ce97765df91bb4cc0c0e315683d15135265270d78f595114dd20e2b"}, + {file = "pynetbox-7.4.1.tar.gz", hash = "sha256:3f82b5964ca77a608aef6cc2fc48a3961f7667fbbdbb60646655373e3dae00c3"}, ] [package.dependencies] @@ -1731,33 +1786,31 @@ requests = ">=2.20.0,<3.0" [[package]] name = "pyproject-hooks" -version = "1.1.0" +version = "1.2.0" description = "Wrappers to call pyproject.toml-based build backend hooks." optional = false python-versions = ">=3.7" files = [ - {file = "pyproject_hooks-1.1.0-py3-none-any.whl", hash = "sha256:7ceeefe9aec63a1064c18d939bdc3adf2d8aa1988a510afec15151578b232aa2"}, - {file = "pyproject_hooks-1.1.0.tar.gz", hash = "sha256:4b37730834edbd6bd37f26ece6b44802fb1c1ee2ece0e54ddff8bfc06db86965"}, + {file = "pyproject_hooks-1.2.0-py3-none-any.whl", hash = "sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913"}, + {file = "pyproject_hooks-1.2.0.tar.gz", hash = "sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8"}, ] [[package]] name = "pytest" -version = "8.3.2" +version = "8.3.4" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.8" files = [ - {file = "pytest-8.3.2-py3-none-any.whl", hash = "sha256:4ba08f9ae7dcf84ded419494d229b48d0903ea6407b030eaec46df5e6a73bba5"}, - {file = "pytest-8.3.2.tar.gz", hash = "sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"}, + {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"}, + {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"}, ] [package.dependencies] colorama = {version = "*", markers = "sys_platform == \"win32\""} -exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" pluggy = ">=1.5,<2" -tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] @@ -1816,13 +1869,13 @@ testing = ["filelock"] [[package]] name = "pytz" -version = "2024.1" +version = "2024.2" description = "World timezone definitions, modern and historical" optional = false python-versions = "*" files = [ - {file = "pytz-2024.1-py2.py3-none-any.whl", hash = "sha256:328171f4e3623139da4983451950b28e95ac706e13f3f2630a879749e7a8b319"}, - {file = "pytz-2024.1.tar.gz", hash = "sha256:2a29735ea9c18baf14b448846bde5a48030ed267578472d8955cd0e7443a9812"}, + {file = "pytz-2024.2-py2.py3-none-any.whl", hash = "sha256:31c7c1817eb7fae7ca4b8c7ee50c72f93aa2dd863de768e1ef4245d426aa0725"}, + {file = "pytz-2024.2.tar.gz", hash = "sha256:2aa355083c50a0f93fa581709deac0c9ad65cca8a9e9beac660adcbd493c798a"}, ] [[package]] @@ -1927,13 +1980,13 @@ test = ["commentjson", "packaging", "pytest"] [[package]] name = "rich" -version = "13.8.0" +version = "13.9.4" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = false -python-versions = ">=3.7.0" +python-versions = ">=3.8.0" files = [ - {file = "rich-13.8.0-py3-none-any.whl", hash = "sha256:2e85306a063b9492dffc86278197a60cbece75bcb766022f3436f567cae11bdc"}, - {file = "rich-13.8.0.tar.gz", hash = "sha256:a5ac1f1cd448ade0d59cc3356f7db7a7ccda2c8cbae9c7a90c28ff463d3e91f4"}, + {file = "rich-13.9.4-py3-none-any.whl", hash = "sha256:6049d5e6ec054bf2779ab3358186963bac2ea89175919d699e378b99738c2a90"}, + {file = "rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098"}, ] [package.dependencies] @@ -2018,13 +2071,13 @@ files = [ [[package]] name = "six" -version = "1.16.0" +version = "1.17.0" description = "Python 2 and 3 compatibility utilities" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, + {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, + {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, ] [[package]] @@ -2040,13 +2093,13 @@ files = [ [[package]] name = "sphinx" -version = "8.0.2" +version = "8.1.3" description = "Python documentation generator" optional = false python-versions = ">=3.10" files = [ - {file = "sphinx-8.0.2-py3-none-any.whl", hash = "sha256:56173572ae6c1b9a38911786e206a110c9749116745873feae4f9ce88e59391d"}, - {file = "sphinx-8.0.2.tar.gz", hash = "sha256:0cce1ddcc4fd3532cf1dd283bc7d886758362c5c1de6598696579ce96d8ffa5b"}, + {file = "sphinx-8.1.3-py3-none-any.whl", hash = "sha256:09719015511837b76bf6e03e42eb7595ac8c2e41eeb9c29c5b755c6b677992a2"}, + {file = "sphinx-8.1.3.tar.gz", hash = "sha256:43c1911eecb0d3e161ad78611bc905d1ad0e523e4ddc202a58a821773dc4c927"}, ] [package.dependencies] @@ -2060,17 +2113,16 @@ packaging = ">=23.0" Pygments = ">=2.17" requests = ">=2.30.0" snowballstemmer = ">=2.2" -sphinxcontrib-applehelp = "*" -sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = ">=2.0.0" -sphinxcontrib-jsmath = "*" -sphinxcontrib-qthelp = "*" +sphinxcontrib-applehelp = ">=1.0.7" +sphinxcontrib-devhelp = ">=1.0.6" +sphinxcontrib-htmlhelp = ">=2.0.6" +sphinxcontrib-jsmath = ">=1.0.1" +sphinxcontrib-qthelp = ">=1.0.6" sphinxcontrib-serializinghtml = ">=1.1.9" -tomli = {version = ">=2", markers = "python_version < \"3.11\""} [package.extras] docs = ["sphinxcontrib-websupport"] -lint = ["flake8 (>=6.0)", "mypy (==1.11.0)", "pytest (>=6.0)", "ruff (==0.5.5)", "sphinx-lint (>=0.9)", "tomli (>=2)", "types-Pillow (==10.2.0.20240520)", "types-Pygments (==2.18.0.20240506)", "types-colorama (==0.4.15.20240311)", "types-defusedxml (==0.7.0.20240218)", "types-docutils (==0.21.0.20240724)", "types-requests (>=2.30.0)"] +lint = ["flake8 (>=6.0)", "mypy (==1.11.1)", "pyright (==1.1.384)", "pytest (>=6.0)", "ruff (==0.6.9)", "sphinx-lint (>=0.9)", "tomli (>=2)", "types-Pillow (==10.2.0.20240822)", "types-Pygments (==2.18.0.20240506)", "types-colorama (==0.4.15.20240311)", "types-defusedxml (==0.7.0.20240218)", "types-docutils (==0.21.0.20241005)", "types-requests (==2.32.0.20240914)", "types-urllib3 (==1.26.25.14)"] test = ["cython (>=3.0)", "defusedxml (>=0.7.1)", "pytest (>=8.0)", "setuptools (>=70.0)", "typing_extensions (>=4.9)"] [[package]] @@ -2167,17 +2219,6 @@ lint = ["mypy", "ruff (==0.5.5)", "types-docutils"] standalone = ["Sphinx (>=5)"] test = ["pytest"] -[[package]] -name = "tomli" -version = "2.0.1" -description = "A lil' TOML parser" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, -] - [[package]] name = "tomlkit" version = "0.13.2" @@ -2205,13 +2246,13 @@ six = "*" [[package]] name = "typer" -version = "0.12.5" +version = "0.15.1" description = "Typer, build great CLIs. Easy to code. Based on Python type hints." optional = false python-versions = ">=3.7" files = [ - {file = "typer-0.12.5-py3-none-any.whl", hash = "sha256:62fe4e471711b147e3365034133904df3e235698399bc4de2b36c8579298d52b"}, - {file = "typer-0.12.5.tar.gz", hash = "sha256:f592f089bedcc8ec1b974125d64851029c3b1af145f04aca64d69410f0c9b722"}, + {file = "typer-0.15.1-py3-none-any.whl", hash = "sha256:7994fb7b8155b64d3402518560648446072864beefd44aa2dc36972a5972e847"}, + {file = "typer-0.15.1.tar.gz", hash = "sha256:a0588c0a7fa68a1978a069818657778f86abe6ff5ea6abf472f940a08bfe4f0a"}, ] [package.dependencies] @@ -2231,26 +2272,15 @@ files = [ {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, ] -[[package]] -name = "tzdata" -version = "2024.1" -description = "Provider of IANA time zone data" -optional = false -python-versions = ">=2" -files = [ - {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, - {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, -] - [[package]] name = "urllib3" -version = "2.2.2" +version = "2.3.0" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "urllib3-2.2.2-py3-none-any.whl", hash = "sha256:a448b2f64d686155468037e1ace9f2d2199776e17f0a46610480d311f73e3472"}, - {file = "urllib3-2.2.2.tar.gz", hash = "sha256:dd505485549a7a552833da5e6063639d0d177c04f23bc3864e41e5dc5f612168"}, + {file = "urllib3-2.3.0-py3-none-any.whl", hash = "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df"}, + {file = "urllib3-2.3.0.tar.gz", hash = "sha256:f8c5449b3cf0861679ce7e0503c7b44b5ec981bec0d1d3795a07f1ba96f0204d"}, ] [package.extras] @@ -2261,93 +2291,93 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "yarl" -version = "1.17.2" +version = "1.18.3" description = "Yet another URL library" optional = false python-versions = ">=3.9" files = [ - {file = "yarl-1.17.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:93771146ef048b34201bfa382c2bf74c524980870bb278e6df515efaf93699ff"}, - {file = "yarl-1.17.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8281db240a1616af2f9c5f71d355057e73a1409c4648c8949901396dc0a3c151"}, - {file = "yarl-1.17.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:170ed4971bf9058582b01a8338605f4d8c849bd88834061e60e83b52d0c76870"}, - {file = "yarl-1.17.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc61b005f6521fcc00ca0d1243559a5850b9dd1e1fe07b891410ee8fe192d0c0"}, - {file = "yarl-1.17.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:871e1b47eec7b6df76b23c642a81db5dd6536cbef26b7e80e7c56c2fd371382e"}, - {file = "yarl-1.17.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3a58a2f2ca7aaf22b265388d40232f453f67a6def7355a840b98c2d547bd037f"}, - {file = "yarl-1.17.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:736bb076f7299c5c55dfef3eb9e96071a795cb08052822c2bb349b06f4cb2e0a"}, - {file = "yarl-1.17.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8fd51299e21da709eabcd5b2dd60e39090804431292daacbee8d3dabe39a6bc0"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:358dc7ddf25e79e1cc8ee16d970c23faee84d532b873519c5036dbb858965795"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:50d866f7b1a3f16f98603e095f24c0eeba25eb508c85a2c5939c8b3870ba2df8"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:8b9c4643e7d843a0dca9cd9d610a0876e90a1b2cbc4c5ba7930a0d90baf6903f"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d63123bfd0dce5f91101e77c8a5427c3872501acece8c90df457b486bc1acd47"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:4e76381be3d8ff96a4e6c77815653063e87555981329cf8f85e5be5abf449021"}, - {file = "yarl-1.17.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:734144cd2bd633a1516948e477ff6c835041c0536cef1d5b9a823ae29899665b"}, - {file = "yarl-1.17.2-cp310-cp310-win32.whl", hash = "sha256:26bfb6226e0c157af5da16d2d62258f1ac578d2899130a50433ffee4a5dfa673"}, - {file = "yarl-1.17.2-cp310-cp310-win_amd64.whl", hash = "sha256:76499469dcc24759399accd85ec27f237d52dec300daaca46a5352fcbebb1071"}, - {file = "yarl-1.17.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:792155279dc093839e43f85ff7b9b6493a8eaa0af1f94f1f9c6e8f4de8c63500"}, - {file = "yarl-1.17.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:38bc4ed5cae853409cb193c87c86cd0bc8d3a70fd2268a9807217b9176093ac6"}, - {file = "yarl-1.17.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4a8c83f6fcdc327783bdc737e8e45b2e909b7bd108c4da1892d3bc59c04a6d84"}, - {file = "yarl-1.17.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c6d5fed96f0646bfdf698b0a1cebf32b8aae6892d1bec0c5d2d6e2df44e1e2d"}, - {file = "yarl-1.17.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:782ca9c58f5c491c7afa55518542b2b005caedaf4685ec814fadfcee51f02493"}, - {file = "yarl-1.17.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ff6af03cac0d1a4c3c19e5dcc4c05252411bf44ccaa2485e20d0a7c77892ab6e"}, - {file = "yarl-1.17.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a3f47930fbbed0f6377639503848134c4aa25426b08778d641491131351c2c8"}, - {file = "yarl-1.17.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d1fa68a3c921365c5745b4bd3af6221ae1f0ea1bf04b69e94eda60e57958907f"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:187df91395c11e9f9dc69b38d12406df85aa5865f1766a47907b1cc9855b6303"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:93d1c8cc5bf5df401015c5e2a3ce75a5254a9839e5039c881365d2a9dcfc6dc2"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:11d86c6145ac5c706c53d484784cf504d7d10fa407cb73b9d20f09ff986059ef"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:c42774d1d1508ec48c3ed29e7b110e33f5e74a20957ea16197dbcce8be6b52ba"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:0c8e589379ef0407b10bed16cc26e7392ef8f86961a706ade0a22309a45414d7"}, - {file = "yarl-1.17.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1056cadd5e850a1c026f28e0704ab0a94daaa8f887ece8dfed30f88befb87bb0"}, - {file = "yarl-1.17.2-cp311-cp311-win32.whl", hash = "sha256:be4c7b1c49d9917c6e95258d3d07f43cfba2c69a6929816e77daf322aaba6628"}, - {file = "yarl-1.17.2-cp311-cp311-win_amd64.whl", hash = "sha256:ac8eda86cc75859093e9ce390d423aba968f50cf0e481e6c7d7d63f90bae5c9c"}, - {file = "yarl-1.17.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:dd90238d3a77a0e07d4d6ffdebc0c21a9787c5953a508a2231b5f191455f31e9"}, - {file = "yarl-1.17.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c74f0b0472ac40b04e6d28532f55cac8090e34c3e81f118d12843e6df14d0909"}, - {file = "yarl-1.17.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4d486ddcaca8c68455aa01cf53d28d413fb41a35afc9f6594a730c9779545876"}, - {file = "yarl-1.17.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f25b7e93f5414b9a983e1a6c1820142c13e1782cc9ed354c25e933aebe97fcf2"}, - {file = "yarl-1.17.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3a0baff7827a632204060f48dca9e63fbd6a5a0b8790c1a2adfb25dc2c9c0d50"}, - {file = "yarl-1.17.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:460024cacfc3246cc4d9f47a7fc860e4fcea7d1dc651e1256510d8c3c9c7cde0"}, - {file = "yarl-1.17.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5870d620b23b956f72bafed6a0ba9a62edb5f2ef78a8849b7615bd9433384171"}, - {file = "yarl-1.17.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2941756754a10e799e5b87e2319bbec481ed0957421fba0e7b9fb1c11e40509f"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9611b83810a74a46be88847e0ea616794c406dbcb4e25405e52bff8f4bee2d0a"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:cd7e35818d2328b679a13268d9ea505c85cd773572ebb7a0da7ccbca77b6a52e"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:6b981316fcd940f085f646b822c2ff2b8b813cbd61281acad229ea3cbaabeb6b"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:688058e89f512fb7541cb85c2f149c292d3fa22f981d5a5453b40c5da49eb9e8"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:56afb44a12b0864d17b597210d63a5b88915d680f6484d8d202ed68ade38673d"}, - {file = "yarl-1.17.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:17931dfbb84ae18b287279c1f92b76a3abcd9a49cd69b92e946035cff06bcd20"}, - {file = "yarl-1.17.2-cp312-cp312-win32.whl", hash = "sha256:ff8d95e06546c3a8c188f68040e9d0360feb67ba8498baf018918f669f7bc39b"}, - {file = "yarl-1.17.2-cp312-cp312-win_amd64.whl", hash = "sha256:4c840cc11163d3c01a9d8aad227683c48cd3e5be5a785921bcc2a8b4b758c4f3"}, - {file = "yarl-1.17.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:3294f787a437cb5d81846de3a6697f0c35ecff37a932d73b1fe62490bef69211"}, - {file = "yarl-1.17.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f1e7fedb09c059efee2533119666ca7e1a2610072076926fa028c2ba5dfeb78c"}, - {file = "yarl-1.17.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:da9d3061e61e5ae3f753654813bc1cd1c70e02fb72cf871bd6daf78443e9e2b1"}, - {file = "yarl-1.17.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:91c012dceadc695ccf69301bfdccd1fc4472ad714fe2dd3c5ab4d2046afddf29"}, - {file = "yarl-1.17.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f11fd61d72d93ac23718d393d2a64469af40be2116b24da0a4ca6922df26807e"}, - {file = "yarl-1.17.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:46c465ad06971abcf46dd532f77560181387b4eea59084434bdff97524444032"}, - {file = "yarl-1.17.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef6eee1a61638d29cd7c85f7fd3ac7b22b4c0fabc8fd00a712b727a3e73b0685"}, - {file = "yarl-1.17.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4434b739a8a101a837caeaa0137e0e38cb4ea561f39cb8960f3b1e7f4967a3fc"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:752485cbbb50c1e20908450ff4f94217acba9358ebdce0d8106510859d6eb19a"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:17791acaa0c0f89323c57da7b9a79f2174e26d5debbc8c02d84ebd80c2b7bff8"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:5c6ea72fe619fee5e6b5d4040a451d45d8175f560b11b3d3e044cd24b2720526"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:db5ac3871ed76340210fe028f535392f097fb31b875354bcb69162bba2632ef4"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:7a1606ba68e311576bcb1672b2a1543417e7e0aa4c85e9e718ba6466952476c0"}, - {file = "yarl-1.17.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9bc27dd5cfdbe3dc7f381b05e6260ca6da41931a6e582267d5ca540270afeeb2"}, - {file = "yarl-1.17.2-cp313-cp313-win32.whl", hash = "sha256:52492b87d5877ec405542f43cd3da80bdcb2d0c2fbc73236526e5f2c28e6db28"}, - {file = "yarl-1.17.2-cp313-cp313-win_amd64.whl", hash = "sha256:8e1bf59e035534ba4077f5361d8d5d9194149f9ed4f823d1ee29ef3e8964ace3"}, - {file = "yarl-1.17.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c556fbc6820b6e2cda1ca675c5fa5589cf188f8da6b33e9fc05b002e603e44fa"}, - {file = "yarl-1.17.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f2f44a4247461965fed18b2573f3a9eb5e2c3cad225201ee858726cde610daca"}, - {file = "yarl-1.17.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3a3ede8c248f36b60227eb777eac1dbc2f1022dc4d741b177c4379ca8e75571a"}, - {file = "yarl-1.17.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2654caaf5584449d49c94a6b382b3cb4a246c090e72453493ea168b931206a4d"}, - {file = "yarl-1.17.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0d41c684f286ce41fa05ab6af70f32d6da1b6f0457459a56cf9e393c1c0b2217"}, - {file = "yarl-1.17.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2270d590997445a0dc29afa92e5534bfea76ba3aea026289e811bf9ed4b65a7f"}, - {file = "yarl-1.17.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18662443c6c3707e2fc7fad184b4dc32dd428710bbe72e1bce7fe1988d4aa654"}, - {file = "yarl-1.17.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:75ac158560dec3ed72f6d604c81090ec44529cfb8169b05ae6fcb3e986b325d9"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1fee66b32e79264f428dc8da18396ad59cc48eef3c9c13844adec890cd339db5"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:585ce7cd97be8f538345de47b279b879e091c8b86d9dbc6d98a96a7ad78876a3"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:c019abc2eca67dfa4d8fb72ba924871d764ec3c92b86d5b53b405ad3d6aa56b0"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:c6e659b9a24d145e271c2faf3fa6dd1fcb3e5d3f4e17273d9e0350b6ab0fe6e2"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:d17832ba39374134c10e82d137e372b5f7478c4cceeb19d02ae3e3d1daed8721"}, - {file = "yarl-1.17.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:bc3003710e335e3f842ae3fd78efa55f11a863a89a72e9a07da214db3bf7e1f8"}, - {file = "yarl-1.17.2-cp39-cp39-win32.whl", hash = "sha256:f5ffc6b7ace5b22d9e73b2a4c7305740a339fbd55301d52735f73e21d9eb3130"}, - {file = "yarl-1.17.2-cp39-cp39-win_amd64.whl", hash = "sha256:48e424347a45568413deec6f6ee2d720de2cc0385019bedf44cd93e8638aa0ed"}, - {file = "yarl-1.17.2-py3-none-any.whl", hash = "sha256:dd7abf4f717e33b7487121faf23560b3a50924f80e4bef62b22dab441ded8f3b"}, - {file = "yarl-1.17.2.tar.gz", hash = "sha256:753eaaa0c7195244c84b5cc159dc8204b7fd99f716f11198f999f2332a86b178"}, + {file = "yarl-1.18.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7df647e8edd71f000a5208fe6ff8c382a1de8edfbccdbbfe649d263de07d8c34"}, + {file = "yarl-1.18.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c69697d3adff5aa4f874b19c0e4ed65180ceed6318ec856ebc423aa5850d84f7"}, + {file = "yarl-1.18.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:602d98f2c2d929f8e697ed274fbadc09902c4025c5a9963bf4e9edfc3ab6f7ed"}, + {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c654d5207c78e0bd6d749f6dae1dcbbfde3403ad3a4b11f3c5544d9906969dde"}, + {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5094d9206c64181d0f6e76ebd8fb2f8fe274950a63890ee9e0ebfd58bf9d787b"}, + {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35098b24e0327fc4ebdc8ffe336cee0a87a700c24ffed13161af80124b7dc8e5"}, + {file = "yarl-1.18.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3236da9272872443f81fedc389bace88408f64f89f75d1bdb2256069a8730ccc"}, + {file = "yarl-1.18.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e2c08cc9b16f4f4bc522771d96734c7901e7ebef70c6c5c35dd0f10845270bcd"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:80316a8bd5109320d38eef8833ccf5f89608c9107d02d2a7f985f98ed6876990"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:c1e1cc06da1491e6734f0ea1e6294ce00792193c463350626571c287c9a704db"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:fea09ca13323376a2fdfb353a5fa2e59f90cd18d7ca4eaa1fd31f0a8b4f91e62"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:e3b9fd71836999aad54084906f8663dffcd2a7fb5cdafd6c37713b2e72be1760"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:757e81cae69244257d125ff31663249b3013b5dc0a8520d73694aed497fb195b"}, + {file = "yarl-1.18.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b1771de9944d875f1b98a745bc547e684b863abf8f8287da8466cf470ef52690"}, + {file = "yarl-1.18.3-cp310-cp310-win32.whl", hash = "sha256:8874027a53e3aea659a6d62751800cf6e63314c160fd607489ba5c2edd753cf6"}, + {file = "yarl-1.18.3-cp310-cp310-win_amd64.whl", hash = "sha256:93b2e109287f93db79210f86deb6b9bbb81ac32fc97236b16f7433db7fc437d8"}, + {file = "yarl-1.18.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8503ad47387b8ebd39cbbbdf0bf113e17330ffd339ba1144074da24c545f0069"}, + {file = "yarl-1.18.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:02ddb6756f8f4517a2d5e99d8b2f272488e18dd0bfbc802f31c16c6c20f22193"}, + {file = "yarl-1.18.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:67a283dd2882ac98cc6318384f565bffc751ab564605959df4752d42483ad889"}, + {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d980e0325b6eddc81331d3f4551e2a333999fb176fd153e075c6d1c2530aa8a8"}, + {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b643562c12680b01e17239be267bc306bbc6aac1f34f6444d1bded0c5ce438ca"}, + {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c017a3b6df3a1bd45b9fa49a0f54005e53fbcad16633870104b66fa1a30a29d8"}, + {file = "yarl-1.18.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75674776d96d7b851b6498f17824ba17849d790a44d282929c42dbb77d4f17ae"}, + {file = "yarl-1.18.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ccaa3a4b521b780a7e771cc336a2dba389a0861592bbce09a476190bb0c8b4b3"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:2d06d3005e668744e11ed80812e61efd77d70bb7f03e33c1598c301eea20efbb"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:9d41beda9dc97ca9ab0b9888cb71f7539124bc05df02c0cff6e5acc5a19dcc6e"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:ba23302c0c61a9999784e73809427c9dbedd79f66a13d84ad1b1943802eaaf59"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:6748dbf9bfa5ba1afcc7556b71cda0d7ce5f24768043a02a58846e4a443d808d"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:0b0cad37311123211dc91eadcb322ef4d4a66008d3e1bdc404808992260e1a0e"}, + {file = "yarl-1.18.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0fb2171a4486bb075316ee754c6d8382ea6eb8b399d4ec62fde2b591f879778a"}, + {file = "yarl-1.18.3-cp311-cp311-win32.whl", hash = "sha256:61b1a825a13bef4a5f10b1885245377d3cd0bf87cba068e1d9a88c2ae36880e1"}, + {file = "yarl-1.18.3-cp311-cp311-win_amd64.whl", hash = "sha256:b9d60031cf568c627d028239693fd718025719c02c9f55df0a53e587aab951b5"}, + {file = "yarl-1.18.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:1dd4bdd05407ced96fed3d7f25dbbf88d2ffb045a0db60dbc247f5b3c5c25d50"}, + {file = "yarl-1.18.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7c33dd1931a95e5d9a772d0ac5e44cac8957eaf58e3c8da8c1414de7dd27c576"}, + {file = "yarl-1.18.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:25b411eddcfd56a2f0cd6a384e9f4f7aa3efee14b188de13048c25b5e91f1640"}, + {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:436c4fc0a4d66b2badc6c5fc5ef4e47bb10e4fd9bf0c79524ac719a01f3607c2"}, + {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e35ef8683211db69ffe129a25d5634319a677570ab6b2eba4afa860f54eeaf75"}, + {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:84b2deecba4a3f1a398df819151eb72d29bfeb3b69abb145a00ddc8d30094512"}, + {file = "yarl-1.18.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00e5a1fea0fd4f5bfa7440a47eff01d9822a65b4488f7cff83155a0f31a2ecba"}, + {file = "yarl-1.18.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d0e883008013c0e4aef84dcfe2a0b172c4d23c2669412cf5b3371003941f72bb"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:5a3f356548e34a70b0172d8890006c37be92995f62d95a07b4a42e90fba54272"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:ccd17349166b1bee6e529b4add61727d3f55edb7babbe4069b5764c9587a8cc6"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b958ddd075ddba5b09bb0be8a6d9906d2ce933aee81100db289badbeb966f54e"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c7d79f7d9aabd6011004e33b22bc13056a3e3fb54794d138af57f5ee9d9032cb"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:4891ed92157e5430874dad17b15eb1fda57627710756c27422200c52d8a4e393"}, + {file = "yarl-1.18.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ce1af883b94304f493698b00d0f006d56aea98aeb49d75ec7d98cd4a777e9285"}, + {file = "yarl-1.18.3-cp312-cp312-win32.whl", hash = "sha256:f91c4803173928a25e1a55b943c81f55b8872f0018be83e3ad4938adffb77dd2"}, + {file = "yarl-1.18.3-cp312-cp312-win_amd64.whl", hash = "sha256:7e2ee16578af3b52ac2f334c3b1f92262f47e02cc6193c598502bd46f5cd1477"}, + {file = "yarl-1.18.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:90adb47ad432332d4f0bc28f83a5963f426ce9a1a8809f5e584e704b82685dcb"}, + {file = "yarl-1.18.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:913829534200eb0f789d45349e55203a091f45c37a2674678744ae52fae23efa"}, + {file = "yarl-1.18.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ef9f7768395923c3039055c14334ba4d926f3baf7b776c923c93d80195624782"}, + {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88a19f62ff30117e706ebc9090b8ecc79aeb77d0b1f5ec10d2d27a12bc9f66d0"}, + {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e17c9361d46a4d5addf777c6dd5eab0715a7684c2f11b88c67ac37edfba6c482"}, + {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1a74a13a4c857a84a845505fd2d68e54826a2cd01935a96efb1e9d86c728e186"}, + {file = "yarl-1.18.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:41f7ce59d6ee7741af71d82020346af364949314ed3d87553763a2df1829cc58"}, + {file = "yarl-1.18.3-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f52a265001d830bc425f82ca9eabda94a64a4d753b07d623a9f2863fde532b53"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:82123d0c954dc58db301f5021a01854a85bf1f3bb7d12ae0c01afc414a882ca2"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:2ec9bbba33b2d00999af4631a3397d1fd78290c48e2a3e52d8dd72db3a067ac8"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fbd6748e8ab9b41171bb95c6142faf068f5ef1511935a0aa07025438dd9a9bc1"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:877d209b6aebeb5b16c42cbb377f5f94d9e556626b1bfff66d7b0d115be88d0a"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b464c4ab4bfcb41e3bfd3f1c26600d038376c2de3297760dfe064d2cb7ea8e10"}, + {file = "yarl-1.18.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8d39d351e7faf01483cc7ff7c0213c412e38e5a340238826be7e0e4da450fdc8"}, + {file = "yarl-1.18.3-cp313-cp313-win32.whl", hash = "sha256:61ee62ead9b68b9123ec24bc866cbef297dd266175d53296e2db5e7f797f902d"}, + {file = "yarl-1.18.3-cp313-cp313-win_amd64.whl", hash = "sha256:578e281c393af575879990861823ef19d66e2b1d0098414855dd367e234f5b3c"}, + {file = "yarl-1.18.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:61e5e68cb65ac8f547f6b5ef933f510134a6bf31bb178be428994b0cb46c2a04"}, + {file = "yarl-1.18.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:fe57328fbc1bfd0bd0514470ac692630f3901c0ee39052ae47acd1d90a436719"}, + {file = "yarl-1.18.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a440a2a624683108a1b454705ecd7afc1c3438a08e890a1513d468671d90a04e"}, + {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09c7907c8548bcd6ab860e5f513e727c53b4a714f459b084f6580b49fa1b9cee"}, + {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b4f6450109834af88cb4cc5ecddfc5380ebb9c228695afc11915a0bf82116789"}, + {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9ca04806f3be0ac6d558fffc2fdf8fcef767e0489d2684a21912cc4ed0cd1b8"}, + {file = "yarl-1.18.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77a6e85b90a7641d2e07184df5557132a337f136250caafc9ccaa4a2a998ca2c"}, + {file = "yarl-1.18.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6333c5a377c8e2f5fae35e7b8f145c617b02c939d04110c76f29ee3676b5f9a5"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0b3c92fa08759dbf12b3a59579a4096ba9af8dd344d9a813fc7f5070d86bbab1"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:4ac515b860c36becb81bb84b667466885096b5fc85596948548b667da3bf9f24"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:045b8482ce9483ada4f3f23b3774f4e1bf4f23a2d5c912ed5170f68efb053318"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:a4bb030cf46a434ec0225bddbebd4b89e6471814ca851abb8696170adb163985"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:54d6921f07555713b9300bee9c50fb46e57e2e639027089b1d795ecd9f7fa910"}, + {file = "yarl-1.18.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:1d407181cfa6e70077df3377938c08012d18893f9f20e92f7d2f314a437c30b1"}, + {file = "yarl-1.18.3-cp39-cp39-win32.whl", hash = "sha256:ac36703a585e0929b032fbaab0707b75dc12703766d0b53486eabd5139ebadd5"}, + {file = "yarl-1.18.3-cp39-cp39-win_amd64.whl", hash = "sha256:ba87babd629f8af77f557b61e49e7c7cac36f22f871156b91e10a6e9d4f829e9"}, + {file = "yarl-1.18.3-py3-none-any.whl", hash = "sha256:b57f4f58099328dfb26c6a771d09fb20dbbae81d20cfb66141251ea063bd101b"}, + {file = "yarl-1.18.3.tar.gz", hash = "sha256:ac1801c45cbf77b6c99242eeff4fffb5e4e73a800b5c4ad4fc0be5def634d2e1"}, ] [package.dependencies] @@ -2357,13 +2387,13 @@ propcache = ">=0.2.0" [[package]] name = "zipp" -version = "3.20.1" +version = "3.21.0" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "zipp-3.20.1-py3-none-any.whl", hash = "sha256:9960cd8967c8f85a56f920d5d507274e74f9ff813a0ab8889a5b5be2daf44064"}, - {file = "zipp-3.20.1.tar.gz", hash = "sha256:c22b14cc4763c5a5b04134207736c107db42e9d3ef2d9779d465f5f1bcba572b"}, + {file = "zipp-3.21.0-py3-none-any.whl", hash = "sha256:ac1bbe05fd2991f160ebce24ffbac5f6d11d83dc90891255885223d42b3cd931"}, + {file = "zipp-3.21.0.tar.gz", hash = "sha256:2c9958f6430a2040341a52eb608ed6dd93ef4392e02ffe219417c1b28b5dd1f4"}, ] [package.extras] @@ -2376,5 +2406,5 @@ type = ["pytest-mypy"] [metadata] lock-version = "2.0" -python-versions = "^3.10" -content-hash = "080b4dd9bcbb0729adb3e99db09633df98ff6ab85160db45aee7f6428302d686" +python-versions = "^3.13" +content-hash = "fb917643d30d83ca310e4698cbef9002738d2133ad33083418d0ad7f85e2161a" diff --git a/pyproject.toml b/pyproject.toml index 67034f5b6..20013011d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,11 +6,11 @@ authors = ["Mikhail Yohman <mikhail.yohman@gmail.com>"] license = "GPLv3" [tool.poetry.dependencies] -python = "^3.10" -ansible-core = "^2.17" +python = "^3.13" +ansible-core = "^2.18" black = "*" codecov = "*" -coverage = "7.3.2" +coverage = "7.6.1" deepdiff = "*" cryptography = "*" jinja2 = "*" @@ -28,7 +28,7 @@ pylint = "*" pytz = "*" packaging = "*" importlib-resources = "*" -antsibull-docs = "^2.11.0" +antsibull-docs = "*" [tool.poetry.dev-dependencies] diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2-filter.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2-filter.json deleted file mode 100644 index 6d7249836..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2-filter.json +++ /dev/null @@ -1,1115 +0,0 @@ -{ - "_meta": { - "hostvars": { - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "role_core_switch", - "device_type_nexus_parent", - "manufacturer_cisco", - "service_telnet", - "status_active", - "rack_Test_Rack", - "device_type_cisco_test", - "service_ssh", - "service_http", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group", - "cluster_type_test_cluster_type", - "is_virtual" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "status_active": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2.json deleted file mode 100644 index 119e5633d..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2.json +++ /dev/null @@ -1,383 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_id": "1", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "rack_id": "2", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "VC1": { - "ansible_host": "nexus.example.com", - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "jinja_test_group", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "jinja_test_group": { - "hosts": [ - "TestDeviceR1", - "Test VM With Spaces" - ] - }, - "nexus_parent": { - "hosts": [ - "VC1" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-legacy.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-legacy.json deleted file mode 100644 index 6df5dbf2b..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-legacy.json +++ /dev/null @@ -1,418 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped" - ] - }, - "ungrouped": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-noracks.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-noracks.json deleted file mode 100644 index b61454e00..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-noracks.json +++ /dev/null @@ -1,1314 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "sites_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "device_roles_core_switch", - "device_types_cisco_test", - "manufacturers_cisco", - "status_active", - "device_types_nexus_parent", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_roles_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "device_types_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_types_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturers_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "sites_test_site" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "sites_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "sites_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-options-flatten.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-options-flatten.json deleted file mode 100644 index 8e019bd84..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-options-flatten.json +++ /dev/null @@ -1,1239 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "ntp_servers": [ - "pool.ntp.org" - ], - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-options.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-options.json deleted file mode 100644 index 119e5633d..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-options.json +++ /dev/null @@ -1,383 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_id": "1", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "rack_id": "2", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "VC1": { - "ansible_host": "nexus.example.com", - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "jinja_test_group", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "jinja_test_group": { - "hosts": [ - "TestDeviceR1", - "Test VM With Spaces" - ] - }, - "nexus_parent": { - "hosts": [ - "VC1" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals-flatten.json b/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals-flatten.json deleted file mode 100644 index bf84ee743..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals-flatten.json +++ /dev/null @@ -1,439 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "ntp_servers": [ - "pool.ntp.org" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory.json b/tests/integration/targets/inventory-v3.5/files/test-inventory.json deleted file mode 100644 index 360a7ac33..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory.json +++ /dev/null @@ -1,1284 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "rack_Test_Rack_Site_2", - "rack_role_test_rack_role", - "role_core_switch", - "device_type_cisco_test", - "manufacturer_cisco", - "status_active", - "device_type_nexus_parent", - "service_telnet", - "rack_Test_Rack", - "service_ssh", - "service_http", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "rack_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100", - "Test VM With Spaces" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "site_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory.yml b/tests/integration/targets/inventory-v3.5/files/test-inventory.yml deleted file mode 100644 index 3a25c2a73..000000000 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory.yml +++ /dev/null @@ -1,30 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status diff --git a/tests/integration/targets/inventory-v3.6/.gitignore b/tests/integration/targets/inventory-v3.6/.gitignore deleted file mode 100644 index df76504d5..000000000 --- a/tests/integration/targets/inventory-v3.6/.gitignore +++ /dev/null @@ -1 +0,0 @@ -runme_config \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/aliases b/tests/integration/targets/inventory-v3.6/aliases deleted file mode 100644 index a3a2089b9..000000000 --- a/tests/integration/targets/inventory-v3.6/aliases +++ /dev/null @@ -1 +0,0 @@ -# https://docs.ansible.com/ansible/devel/dev_guide/testing/sanity/integration-aliases.html diff --git a/tests/integration/targets/inventory-v3.6/compare_inventory_json.py b/tests/integration/targets/inventory-v3.6/compare_inventory_json.py deleted file mode 100755 index ccdf8bd52..000000000 --- a/tests/integration/targets/inventory-v3.6/compare_inventory_json.py +++ /dev/null @@ -1,152 +0,0 @@ -#!/usr/bin/env python - -# Inspired by community.aws collection script_inventory_ec2 test -# https://github.com/ansible-collections/community.aws/blob/master/tests/integration/targets/script_inventory_ec2/inventory_diff.py - -from __future__ import absolute_import, division, print_function - -__metaclass__ = type - -import argparse -import json -import sys -from operator import itemgetter - -from deepdiff import DeepDiff - -# NetBox includes "created" and "last_updated" times on objects. These end up in the interfaces objects that are included verbatim from the NetBox API. -# "url" may be different if local tests use a different host/port -# Remove these from files saved in git as test data -KEYS_REMOVE = frozenset(["created", "last_updated", "url"]) - -# Ignore these when performing diffs as they will be different for each test run -# (Was previously keys specific to NetBox 2.6) -KEYS_IGNORE = frozenset() - -# Rack Groups became hierarchical in NetBox 2.8. Don't bother comparing against test data in NetBox 2.7 -KEYS_IGNORE_27 = frozenset( - [ - "rack_groups", # host var - "rack_group_parent_rack_group", # group, group_names_raw = False - "parent_rack_group", # group, group_names_raw = True - ] -) - - -# Assume the object will not be recursive, as it originally came from JSON -def remove_keys(obj, keys): - if isinstance(obj, dict): - keys_to_remove = keys.intersection(obj.keys()) - for key in keys_to_remove: - del obj[key] - - for key, value in obj.items(): - remove_keys(value, keys) - - elif isinstance(obj, list): - # Iterate over temporary copy, as we may remove items - for item in obj[:]: - if isinstance(item, str) and item in keys: - # List contains a string that we want to remove - # eg. a group name in list of groups - obj.remove(item) - remove_keys(item, keys) - - -def sort_hostvar_arrays(obj): - meta = obj.get("_meta") - if not meta: - return - - hostvars = meta.get("hostvars") - if not hostvars: - return - - for _, host in hostvars.items(): # pylint: disable=disallowed-name - if interfaces := host.get("interfaces"): - host["interfaces"] = sorted(interfaces, key=itemgetter("id")) - - if services := host.get("services"): - host["services"] = sorted(services, key=itemgetter("id")) - - -def read_json(filename): - with open(filename, "r", encoding="utf-8") as file: - return json.loads(file.read()) - - -def write_json(filename, data): - with open(filename, "w", encoding="utf-8") as file: - json.dump(data, file, indent=4) - - -def main(): - parser = argparse.ArgumentParser(description="Diff Ansible inventory JSON output") - parser.add_argument( - "filename_a", - metavar="ORIGINAL.json", - type=str, - help="Original json to test against", - ) - parser.add_argument( - "filename_b", - metavar="NEW.json", - type=str, - help="Newly generated json to compare against original", - ) - parser.add_argument( - "--write", - action="store_true", - help=( - "When comparing files, various keys are removed. " - "This option will not compare the files, and instead writes ORIGINAL.json to NEW.json after removing these keys. " - "This is used to clean the test json files before saving to the git repo. " - "For example, this removes dates. " - ), - ) - parser.add_argument( - "--netbox-version", - metavar="VERSION", - type=str, - help=( - "Apply comparison specific to NetBox version. " - "For example, rack_groups arrays will only contain a single item in v2.7, so are ignored in the comparison." - ), - ) - - args = parser.parse_args() - - data_a = read_json(args.filename_a) - - if args.write: - # When writing test data, only remove "remove_keys" that will change on every git commit. - # This makes diffs more easily readable to ensure changes to test data look correct. - remove_keys(data_a, KEYS_REMOVE) - sort_hostvar_arrays(data_a) - write_json(args.filename_b, data_a) - - else: - data_b = read_json(args.filename_b) - - # Ignore keys that we don't want to diff, in addition to the ones removed that change on every commit - keys = KEYS_REMOVE.union(KEYS_IGNORE) - remove_keys(data_a, keys) - remove_keys(data_b, keys) - - sort_hostvar_arrays(data_a) - sort_hostvar_arrays(data_b) - - # Perform the diff - result = DeepDiff(data_a, data_b, ignore_order=True) - - if result: - # Dictionary is not empty - print differences - print(json.dumps(result, sort_keys=True, indent=4)) - sys.exit(1) - else: - # Success, no differences - sys.exit(0) - - -if __name__ == "__main__": - main() diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.json b/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.json deleted file mode 100644 index 360a7ac33..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.json +++ /dev/null @@ -1,1284 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "rack_Test_Rack_Site_2", - "rack_role_test_rack_role", - "role_core_switch", - "device_type_cisco_test", - "manufacturer_cisco", - "status_active", - "device_type_nexus_parent", - "service_telnet", - "rack_Test_Rack", - "service_ssh", - "service_http", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "rack_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100", - "Test VM With Spaces" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "site_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.yml deleted file mode 100644 index a19b60db2..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-bearer-token.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: - type: Token - value: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.yml deleted file mode 100644 index 49f306a78..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status - -query_filters: - - site: "{{ 'TEST-SITE' | lower }}" diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.json b/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.json deleted file mode 100644 index 119e5633d..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.json +++ /dev/null @@ -1,383 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_id": "1", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "rack_id": "2", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "VC1": { - "ansible_host": "nexus.example.com", - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "jinja_test_group", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "jinja_test_group": { - "hosts": [ - "TestDeviceR1", - "Test VM With Spaces" - ] - }, - "nexus_parent": { - "hosts": [ - "VC1" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.yml deleted file mode 100644 index 67f9c49be..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Cache is not for performance of tests, but to test the caching option works -# Also set on test-inventory-plurals.yml so that we actually hit the cache on one of these runs -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: false -plurals: false -interfaces: false -services: false -group_names_raw: true -virtual_chassis_name: true -dns_name: true -ansible_host_dns_name: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status - -query_filters: "" - -device_query_filters: - - role: "{{ 'CORE-SWITCH' | lower }}" - -vm_query_filters: - - cluster_type: "{{ 'TEST-CLUSTER-TYPE' | lower }}" - -# See Constructed for details -# https://docs.ansible.com/ansible/latest/plugins/inventory/constructed.html - -compose: - rack_id: rack.id - ntp_servers: config_context.ntp_servers - -keyed_groups: - - prefix: rack - key: rack.name - -groups: - jinja_test_group: inventory_hostname.startswith('Test') diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.yml deleted file mode 100644 index 259c3934d..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -# To generate the json result, I checked out nb_inventory.yml from the v0.2.0 release 2d6894b, -# and then ran it against this inventory with the latest test data. - -# Checks that substantial work on the inventory does not diverge from what existing users are using by default. - -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.yml deleted file mode 100644 index f21f3ca62..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.yml +++ /dev/null @@ -1,28 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: true -interfaces: true -services: true -racks: false - -group_by: - - sites - - tenants - - location - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.yml deleted file mode 100644 index 73d6beec9..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.yml +++ /dev/null @@ -1,41 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Use cache on this test to make sure interfaces is tested via the cache -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: true -flatten_config_context: true -flatten_custom_fields: true -flatten_local_context_data: true -plurals: false -interfaces: true -services: true -fetch_all: false -max_uri_length: 0 -group_names_raw: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-options.json b/tests/integration/targets/inventory-v3.6/files/test-inventory-options.json deleted file mode 100644 index 119e5633d..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-options.json +++ /dev/null @@ -1,383 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_id": "1", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "rack_id": "2", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "VC1": { - "ansible_host": "nexus.example.com", - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_type": "cisco-test", - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "jinja_test_group", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "jinja_test_group": { - "hosts": [ - "TestDeviceR1", - "Test VM With Spaces" - ] - }, - "nexus_parent": { - "hosts": [ - "VC1" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "VC1", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-options.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-options.yml deleted file mode 100644 index f6597c661..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-options.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Cache is not for performance of tests, but to test the caching option works -# Also set on test-inventory-plurals.yml so that we actually hit the cache on one of these runs -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: false -plurals: false -interfaces: false -services: false -group_names_raw: true -virtual_chassis_name: true -dns_name: true -ansible_host_dns_name: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status - -query_filters: "" - -device_query_filters: - - role: core-switch - -vm_query_filters: - - cluster_type: test-cluster-type - -# See Constructed for details -# https://docs.ansible.com/ansible/latest/plugins/inventory/constructed.html - -compose: - rack_id: rack.id - ntp_servers: config_context.ntp_servers - -keyed_groups: - - prefix: rack - key: rack.name - -groups: - jinja_test_group: inventory_hostname.startswith('Test') diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.json b/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.json deleted file mode 100644 index bf84ee743..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.json +++ /dev/null @@ -1,439 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "ntp_servers": [ - "pool.ntp.org" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.yml deleted file mode 100644 index 33213ff5c..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals-flatten.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -flatten_config_context: true -flatten_custom_fields: true -plurals: true -interfaces: false -services: false -fetch_all: true -group_names_raw: true - -group_by: - - sites - - tenants - - racks - - location - - rack_role - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.json b/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.json deleted file mode 100644 index 22f9d4e5f..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.json +++ /dev/null @@ -1,1358 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1 - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2 - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "sites_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "racks_Test_Rack_Site_2", - "rack_role_test_rack_role", - "device_roles_core_switch", - "device_types_cisco_test", - "manufacturers_cisco", - "status_active", - "device_types_nexus_parent", - "racks_Test_Rack", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_roles_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "device_types_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_types_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturers_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "racks_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "racks_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "sites_test_site" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "sites_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "sites_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.yml deleted file mode 100644 index 1e53fd0bf..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-plurals.yml +++ /dev/null @@ -1,38 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: true -plurals: true -interfaces: true -services: true - -# Enough to fit only 2 devices, so tests chunking logic -max_uri_length: 80 -fetch_all: false - -group_by: - - sites - - tenants - - racks - - location - - rack_role - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory.yml b/tests/integration/targets/inventory-v3.6/files/test-inventory.yml deleted file mode 100644 index 3a25c2a73..000000000 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory.yml +++ /dev/null @@ -1,30 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status diff --git a/tests/integration/targets/inventory-v3.6/runme.sh b/tests/integration/targets/inventory-v3.6/runme.sh deleted file mode 100755 index 18579c472..000000000 --- a/tests/integration/targets/inventory-v3.6/runme.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env bash - -set -o xtrace # Print commands as they're run -set -o errexit # abort on nonzero exitstatus -set -o nounset # abort on unbound variable -set -o pipefail # don't hide errors within pipes - -# Directory of this script -SCRIPT_DIR="$( dirname "${BASH_SOURCE[0]}" )" -RUNME_CONFIG="$SCRIPT_DIR/runme_config" -INVENTORIES_DIR="$SCRIPT_DIR/files" - -# Load runme_config, if exists - the only way to pass environment when run through ansible-test -if [[ -f "$RUNME_CONFIG" ]] -then - source "$RUNME_CONFIG" -fi - -declare -a COMPARE_OPTIONS # empty array - -# Check if NETBOX_VERSION has been set by runme_config, and if so, pass to compare_inventory_json.py -if [[ "${NETBOX_VERSION:-}" == "v3.5" ]] -then - COMPARE_OPTIONS+=(--netbox-version "${NETBOX_VERSION}") -fi - -# OUTPUT_DIR is set by ansible-test -# OUTPUT_INVENTORY_JSON is only set if running hacking/update_test_inventories.sh to update the test diff data -if [[ -n "${OUTPUT_INVENTORY_JSON:-}" ]] -then - OUTPUT_DIR="$OUTPUT_INVENTORY_JSON" - - # Clean up JSON fields we don't want to store and compare against in tests (creation times, etc.) - COMPARE_OPTIONS+=(--write) -fi - -echo OUTPUT_DIR="$OUTPUT_DIR" - -inventory () { - if [[ -n "${OUTPUT_INVENTORY_JSON:-}" ]] - then - # Running for the purpose of updating test data - ansible-inventory "$@" - else - # Running inside ansible-test - # Run through python.py just to make sure we've definitely got the coverage environment set up - # Just running ansible-inventory directly may not actually find the right one in PATH - python.py "$(command -v ansible-inventory)" "$@" - fi -} - - -RESULT=0 - -for INVENTORY in "$INVENTORIES_DIR"/*.yml -do - NAME="$(basename "$INVENTORY")" - NAME_WITHOUT_EXTENSION="${NAME%.yml}" - - OUTPUT_JSON="$OUTPUT_DIR/$NAME_WITHOUT_EXTENSION.json" - inventory -vvvv --list --inventory "$INVENTORY" --output="$OUTPUT_JSON" - - # Compare the output - if ! "$SCRIPT_DIR/compare_inventory_json.py" "${COMPARE_OPTIONS[@]}" "$INVENTORIES_DIR/$NAME_WITHOUT_EXTENSION.json" "$OUTPUT_JSON" - then - # Returned non-zero status - RESULT=1 - fi - -done - -exit $RESULT diff --git a/tests/integration/targets/inventory-v3.6/runme_config.template b/tests/integration/targets/inventory-v3.6/runme_config.template deleted file mode 100644 index 80b42a326..000000000 --- a/tests/integration/targets/inventory-v3.6/runme_config.template +++ /dev/null @@ -1,6 +0,0 @@ -# runme_config is source'd by runme.sh to set environment variables used to modify the test against different versions of NetBox. -# .travis.yml uses render_config.sh to generate it from runme_config.template -# There is no other way to pass environment variables to a runme.sh integration test. -# (integration_config.yml files are only helpful to ansible yaml-based tests) - -export NETBOX_VERSION=${VERSION} diff --git a/tests/integration/targets/inventory-v3.7/.gitignore b/tests/integration/targets/inventory-v3.7/.gitignore deleted file mode 100644 index df76504d5..000000000 --- a/tests/integration/targets/inventory-v3.7/.gitignore +++ /dev/null @@ -1 +0,0 @@ -runme_config \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/aliases b/tests/integration/targets/inventory-v3.7/aliases deleted file mode 100644 index a3a2089b9..000000000 --- a/tests/integration/targets/inventory-v3.7/aliases +++ /dev/null @@ -1 +0,0 @@ -# https://docs.ansible.com/ansible/devel/dev_guide/testing/sanity/integration-aliases.html diff --git a/tests/integration/targets/inventory-v3.7/compare_inventory_json.py b/tests/integration/targets/inventory-v3.7/compare_inventory_json.py deleted file mode 100755 index ccdf8bd52..000000000 --- a/tests/integration/targets/inventory-v3.7/compare_inventory_json.py +++ /dev/null @@ -1,152 +0,0 @@ -#!/usr/bin/env python - -# Inspired by community.aws collection script_inventory_ec2 test -# https://github.com/ansible-collections/community.aws/blob/master/tests/integration/targets/script_inventory_ec2/inventory_diff.py - -from __future__ import absolute_import, division, print_function - -__metaclass__ = type - -import argparse -import json -import sys -from operator import itemgetter - -from deepdiff import DeepDiff - -# NetBox includes "created" and "last_updated" times on objects. These end up in the interfaces objects that are included verbatim from the NetBox API. -# "url" may be different if local tests use a different host/port -# Remove these from files saved in git as test data -KEYS_REMOVE = frozenset(["created", "last_updated", "url"]) - -# Ignore these when performing diffs as they will be different for each test run -# (Was previously keys specific to NetBox 2.6) -KEYS_IGNORE = frozenset() - -# Rack Groups became hierarchical in NetBox 2.8. Don't bother comparing against test data in NetBox 2.7 -KEYS_IGNORE_27 = frozenset( - [ - "rack_groups", # host var - "rack_group_parent_rack_group", # group, group_names_raw = False - "parent_rack_group", # group, group_names_raw = True - ] -) - - -# Assume the object will not be recursive, as it originally came from JSON -def remove_keys(obj, keys): - if isinstance(obj, dict): - keys_to_remove = keys.intersection(obj.keys()) - for key in keys_to_remove: - del obj[key] - - for key, value in obj.items(): - remove_keys(value, keys) - - elif isinstance(obj, list): - # Iterate over temporary copy, as we may remove items - for item in obj[:]: - if isinstance(item, str) and item in keys: - # List contains a string that we want to remove - # eg. a group name in list of groups - obj.remove(item) - remove_keys(item, keys) - - -def sort_hostvar_arrays(obj): - meta = obj.get("_meta") - if not meta: - return - - hostvars = meta.get("hostvars") - if not hostvars: - return - - for _, host in hostvars.items(): # pylint: disable=disallowed-name - if interfaces := host.get("interfaces"): - host["interfaces"] = sorted(interfaces, key=itemgetter("id")) - - if services := host.get("services"): - host["services"] = sorted(services, key=itemgetter("id")) - - -def read_json(filename): - with open(filename, "r", encoding="utf-8") as file: - return json.loads(file.read()) - - -def write_json(filename, data): - with open(filename, "w", encoding="utf-8") as file: - json.dump(data, file, indent=4) - - -def main(): - parser = argparse.ArgumentParser(description="Diff Ansible inventory JSON output") - parser.add_argument( - "filename_a", - metavar="ORIGINAL.json", - type=str, - help="Original json to test against", - ) - parser.add_argument( - "filename_b", - metavar="NEW.json", - type=str, - help="Newly generated json to compare against original", - ) - parser.add_argument( - "--write", - action="store_true", - help=( - "When comparing files, various keys are removed. " - "This option will not compare the files, and instead writes ORIGINAL.json to NEW.json after removing these keys. " - "This is used to clean the test json files before saving to the git repo. " - "For example, this removes dates. " - ), - ) - parser.add_argument( - "--netbox-version", - metavar="VERSION", - type=str, - help=( - "Apply comparison specific to NetBox version. " - "For example, rack_groups arrays will only contain a single item in v2.7, so are ignored in the comparison." - ), - ) - - args = parser.parse_args() - - data_a = read_json(args.filename_a) - - if args.write: - # When writing test data, only remove "remove_keys" that will change on every git commit. - # This makes diffs more easily readable to ensure changes to test data look correct. - remove_keys(data_a, KEYS_REMOVE) - sort_hostvar_arrays(data_a) - write_json(args.filename_b, data_a) - - else: - data_b = read_json(args.filename_b) - - # Ignore keys that we don't want to diff, in addition to the ones removed that change on every commit - keys = KEYS_REMOVE.union(KEYS_IGNORE) - remove_keys(data_a, keys) - remove_keys(data_b, keys) - - sort_hostvar_arrays(data_a) - sort_hostvar_arrays(data_b) - - # Perform the diff - result = DeepDiff(data_a, data_b, ignore_order=True) - - if result: - # Dictionary is not empty - print differences - print(json.dumps(result, sort_keys=True, indent=4)) - sys.exit(1) - else: - # Success, no differences - sys.exit(0) - - -if __name__ == "__main__": - main() diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.json deleted file mode 100644 index f168db52d..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.json +++ /dev/null @@ -1,1335 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/11/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/12/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "rack_Test_Rack_Site_2", - "rack_role_test_rack_role", - "role_core_switch", - "device_type_cisco_test", - "manufacturer_cisco", - "status_active", - "device_type_nexus_parent", - "service_telnet", - "rack_Test_Rack", - "service_ssh", - "service_http", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "rack_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100", - "Test VM With Spaces" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "site_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.yml deleted file mode 100644 index a19b60db2..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-bearer-token.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: - type: Token - value: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.json deleted file mode 100644 index 0f46b442f..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.json +++ /dev/null @@ -1,1160 +0,0 @@ -{ - "_meta": { - "hostvars": { - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "role_core_switch", - "device_type_nexus_parent", - "manufacturer_cisco", - "service_telnet", - "status_active", - "rack_Test_Rack", - "device_type_cisco_test", - "service_ssh", - "service_http", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group", - "cluster_type_test_cluster_type", - "is_virtual" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "status_active": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.yml deleted file mode 100644 index 49f306a78..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2-filter.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: false -interfaces: true -services: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - services - - status - -query_filters: - - site: "{{ 'TEST-SITE' | lower }}" diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.yml deleted file mode 100644 index 67f9c49be..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Cache is not for performance of tests, but to test the caching option works -# Also set on test-inventory-plurals.yml so that we actually hit the cache on one of these runs -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: false -plurals: false -interfaces: false -services: false -group_names_raw: true -virtual_chassis_name: true -dns_name: true -ansible_host_dns_name: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status - -query_filters: "" - -device_query_filters: - - role: "{{ 'CORE-SWITCH' | lower }}" - -vm_query_filters: - - cluster_type: "{{ 'TEST-CLUSTER-TYPE' | lower }}" - -# See Constructed for details -# https://docs.ansible.com/ansible/latest/plugins/inventory/constructed.html - -compose: - rack_id: rack.id - ntp_servers: config_context.ntp_servers - -keyed_groups: - - prefix: rack - key: rack.name - -groups: - jinja_test_group: inventory_hostname.startswith('Test') diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.json deleted file mode 100644 index 46526ced7..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.json +++ /dev/null @@ -1,429 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "disk": 170, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "custom_fields": {}, - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped" - ] - }, - "ungrouped": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.yml deleted file mode 100644 index 259c3934d..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-legacy.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -# To generate the json result, I checked out nb_inventory.yml from the v0.2.0 release 2d6894b, -# and then ran it against this inventory with the latest test data. - -# Checks that substantial work on the inventory does not diverge from what existing users are using by default. - -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.json deleted file mode 100644 index afd963a7b..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.json +++ /dev/null @@ -1,1365 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/11/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/12/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "sites_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "device_roles_core_switch", - "device_types_cisco_test", - "manufacturers_cisco", - "status_active", - "device_types_nexus_parent", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_roles_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "device_types_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_types_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturers_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "sites_test_site" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "sites_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "sites_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.yml deleted file mode 100644 index f21f3ca62..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-noracks.yml +++ /dev/null @@ -1,28 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -plurals: true -interfaces: true -services: true -racks: false - -group_by: - - sites - - tenants - - location - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.json deleted file mode 100644 index 047a60cf4..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.json +++ /dev/null @@ -1,1290 +0,0 @@ -{ - "Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/11/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/12/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "ntp_servers": [ - "pool.ntp.org" - ], - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "all": { - "children": [ - "ungrouped", - "test_site2", - "other_region", - "parent_region", - "other_site_group", - "parent_site_group", - "Test_Rack_Site_2", - "test_rack_role", - "core_switch", - "cisco_test", - "cisco", - "active", - "nexus_parent", - "Test_Rack", - "Test_Cluster_2", - "test_cluster_type", - "is_virtual", - "Test_Cluster", - "test_cluster_group" - ] - }, - "cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "parent_rack_group": { - "children": [ - "test_rack_group" - ] - }, - "parent_region": { - "children": [ - "test_region" - ] - }, - "parent_site_group": { - "children": [ - "test_site_group" - ] - }, - "test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "test_region": { - "children": [ - "test_site" - ] - }, - "test_site": { - "children": [ - "parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "test_site2": { - "hosts": [ - "R1-Device" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.yml deleted file mode 100644 index 73d6beec9..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-options-flatten.yml +++ /dev/null @@ -1,41 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Use cache on this test to make sure interfaces is tested via the cache -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: true -flatten_config_context: true -flatten_custom_fields: true -flatten_local_context_data: true -plurals: false -interfaces: true -services: true -fetch_all: false -max_uri_length: 0 -group_names_raw: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-options.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-options.yml deleted file mode 100644 index f6597c661..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-options.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -# Cache is not for performance of tests, but to test the caching option works -# Also set on test-inventory-plurals.yml so that we actually hit the cache on one of these runs -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: false -plurals: false -interfaces: false -services: false -group_names_raw: true -virtual_chassis_name: true -dns_name: true -ansible_host_dns_name: true - -group_by: - - site - - tenant - - rack - - location - - rack_role - - tag - - role - - device_type - - manufacturer - - platform - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status - -query_filters: "" - -device_query_filters: - - role: core-switch - -vm_query_filters: - - cluster_type: test-cluster-type - -# See Constructed for details -# https://docs.ansible.com/ansible/latest/plugins/inventory/constructed.html - -compose: - rack_id: rack.id - ntp_servers: config_context.ntp_servers - -keyed_groups: - - prefix: rack - key: rack.name - -groups: - jinja_test_group: inventory_hostname.startswith('Test') diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.yml deleted file mode 100644 index 33213ff5c..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -config_context: true -flatten_config_context: true -flatten_custom_fields: true -plurals: true -interfaces: false -services: false -fetch_all: true -group_names_raw: true - -group_by: - - sites - - tenants - - racks - - location - - rack_role - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.json b/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.json deleted file mode 100644 index 50b8cbbdf..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.json +++ /dev/null @@ -1,1409 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [], - "manufacturers": [ - "cisco" - ], - "rack_role": "test-rack-role", - "racks": [ - "Test Rack Site 2" - ], - "regions": [], - "serial": "", - "services": [], - "site_groups": [], - "sites": [ - "test-site2" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "nexus-parent" - ], - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "serial": "", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/11/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/12/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "TestDeviceR1": { - "config_context": [ - {} - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [], - "is_virtual": false, - "local_context_data": [ - null - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "racks": [ - "Test Rack" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB12345678", - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "custom_fields": {}, - "device_roles": [ - "core-switch" - ], - "device_types": [ - "cisco-test" - ], - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": [ - { - "ntp_servers": [ - "pool.ntp.org" - ] - } - ], - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturers": [ - "cisco" - ], - "regions": [ - "test-region", - "parent-region" - ], - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site_groups": [], - "sites": [ - "test-site" - ], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": [ - {} - ], - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "local_context_data": [ - null - ], - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "sites_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "racks_Test_Rack_Site_2", - "rack_role_test_rack_role", - "device_roles_core_switch", - "device_types_cisco_test", - "manufacturers_cisco", - "status_active", - "device_types_nexus_parent", - "racks_Test_Rack", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_roles_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "device_types_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_types_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturers_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "racks_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "racks_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "sites_test_site" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "sites_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "sites_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.yml b/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.yml deleted file mode 100644 index 1e53fd0bf..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals.yml +++ /dev/null @@ -1,38 +0,0 @@ ---- -plugin: netbox.netbox.nb_inventory -api_endpoint: http://localhost:32768 -token: "0123456789abcdef0123456789abcdef01234567" -validate_certs: false - -cache: true -cache_timeout: 3600 -cache_plugin: jsonfile -cache_connection: /tmp/inventory_netbox - -config_context: true -plurals: true -interfaces: true -services: true - -# Enough to fit only 2 devices, so tests chunking logic -max_uri_length: 80 -fetch_all: false - -group_by: - - sites - - tenants - - racks - - location - - rack_role - - tags - - device_roles - - device_types - - manufacturers - - platforms - - region - - site_group - - cluster - - cluster_group - - cluster_type - - is_virtual - - status diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory.json b/tests/integration/targets/inventory-v3.7/files/test-inventory.json deleted file mode 100644 index 28ef4ac7e..000000000 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory.json +++ /dev/null @@ -1,1471 +0,0 @@ -{ - "_meta": { - "hostvars": { - "R1-Device": { - "asset_tag": "345678901", - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [], - "manufacturer": "cisco", - "rack": "Test Rack Site 2", - "rack_role": "test-rack-role", - "regions": [], - "role": "core-switch", - "serial": "", - "services": [], - "site": "test-site2", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "Test Nexus One": { - "ansible_host": "172.16.180.12", - "config_context": {}, - "custom_fields": {}, - "device_type": "nexus-parent", - "dns_name": "nexus.example.com", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "created": "2024-04-10T12:55:46.117264Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus Child One", - "id": 5, - "name": "Test Nexus Child One", - "url": "http://localhost:32768/api/dcim/devices/5/" - }, - "display": "Ethernet2/1", - "duplex": null, - "enabled": true, - "id": 2, - "ip_addresses": [ - { - "address": "172.16.180.12/24", - "comments": "", - "created": "2024-04-10T12:55:47.352870Z", - "custom_fields": {}, - "description": "", - "display": "172.16.180.12/24", - "dns_name": "nexus.example.com", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 4, - "last_updated": "2024-04-10T12:55:47.352897Z", - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/4/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.117288Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet2/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/2/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "created": "2024-04-10T12:55:46.039597Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "Ethernet1/1", - "duplex": null, - "enabled": true, - "id": 1, - "ip_addresses": [ - { - "address": "172.16.180.11/24", - "comments": "", - "created": "2024-04-10T12:55:47.320197Z", - "custom_fields": {}, - "description": "", - "display": "172.16.180.11/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 3, - "last_updated": "2024-04-10T12:55:47.320220Z", - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/3/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.039623Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "Ethernet1/1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/1/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:46.563561Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.563586Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/6/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "primary_ip4": "172.16.180.12", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "", - "services": [ - { - "comments": "", - "created": "2024-04-10T12:55:50.975124Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "Test Nexus One", - "id": 4, - "name": "Test Nexus One", - "url": "http://localhost:32768/api/dcim/devices/4/" - }, - "display": "telnet (TCP/23)", - "id": 3, - "ipaddresses": [], - "last_updated": "2024-04-10T12:55:50.975148Z", - "name": "telnet", - "ports": [ - 23 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/3/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "Test VM With Spaces": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.463620Z", - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 11, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.463653Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/11/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.509215Z", - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 12, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.509242Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/12/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [ - { - "comments": "", - "created": "2024-04-10T12:55:51.008597Z", - "custom_fields": {}, - "description": "", - "device": null, - "display": "ssh (TCP/22)", - "id": 4, - "ipaddresses": [], - "last_updated": "2024-04-10T12:55:51.008622Z", - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/4/", - "virtual_machine": { - "display": "Test VM With Spaces", - "id": 6, - "name": "Test VM With Spaces", - "url": "http://localhost:32768/api/virtualization/virtual-machines/6/" - } - } - ], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "TestDeviceR1": { - "config_context": {}, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [], - "is_virtual": false, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "rack": "Test Rack", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB12345678", - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "test100": { - "asset_tag": "123456789", - "config_context": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "custom_fields": {}, - "device_type": "cisco-test", - "interfaces": [ - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "created": "2024-04-10T12:55:46.277746Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet1", - "duplex": null, - "enabled": true, - "id": 3, - "ip_addresses": [ - { - "address": "172.16.180.1/24", - "comments": "", - "created": "2024-04-10T12:55:47.245995Z", - "custom_fields": {}, - "description": "", - "display": "172.16.180.1/24", - "dns_name": "", - "family": { - "label": "IPv4", - "value": 4 - }, - "id": 1, - "last_updated": "2024-04-10T12:55:47.246027Z", - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.277783Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/3/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 1, - "created": "2024-04-10T12:55:46.342494Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "GigabitEthernet2", - "duplex": null, - "enabled": true, - "id": 4, - "ip_addresses": [ - { - "address": "2001::1:1/64", - "comments": "", - "created": "2024-04-10T12:55:47.283463Z", - "custom_fields": {}, - "description": "", - "display": "2001::1:1/64", - "dns_name": "", - "family": { - "label": "IPv6", - "value": 6 - }, - "id": 2, - "last_updated": "2024-04-10T12:55:47.283489Z", - "nat_inside": null, - "nat_outside": [], - "role": null, - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "tenant": null, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/", - "vrf": null - } - ], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.342519Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "GigabitEthernet2", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "1000BASE-T (1GE)", - "value": "1000base-t" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/4/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - }, - { - "_occupied": false, - "bridge": null, - "cable": null, - "cable_end": "", - "connected_endpoints": null, - "connected_endpoints_reachable": null, - "connected_endpoints_type": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:46.501948Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "wlink1", - "duplex": null, - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "label": "", - "lag": null, - "last_updated": "2024-04-10T12:55:46.501983Z", - "link_peers": [], - "link_peers_type": null, - "mac_address": null, - "mark_connected": false, - "mgmt_only": false, - "mode": null, - "module": null, - "mtu": null, - "name": "wlink1", - "parent": null, - "poe_mode": null, - "poe_type": null, - "rf_channel": null, - "rf_channel_frequency": null, - "rf_channel_width": null, - "rf_role": null, - "speed": null, - "tagged_vlans": [], - "tags": [], - "tx_power": null, - "type": { - "label": "IEEE 802.11a", - "value": "ieee802.11a" - }, - "untagged_vlan": null, - "url": "http://localhost:32768/api/dcim/interfaces/5/", - "vdcs": [], - "vrf": null, - "wireless_lans": [], - "wireless_link": null, - "wwn": null - } - ], - "is_virtual": false, - "local_context_data": { - "ntp_servers": [ - "pool.ntp.org" - ] - }, - "locations": [ - "test-rack-group", - "parent-rack-group" - ], - "manufacturer": "cisco", - "regions": [ - "test-region", - "parent-region" - ], - "role": "core-switch", - "serial": "FAB01234567", - "services": [ - { - "comments": "", - "created": "2024-04-10T12:55:50.860141Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "ssh (TCP/22)", - "id": 1, - "ipaddresses": [], - "last_updated": "2024-04-10T12:55:50.860164Z", - "name": "ssh", - "ports": [ - 22 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/1/", - "virtual_machine": null - }, - { - "comments": "", - "created": "2024-04-10T12:55:50.898501Z", - "custom_fields": {}, - "description": "", - "device": { - "display": "test100 (123456789)", - "id": 1, - "name": "test100", - "url": "http://localhost:32768/api/dcim/devices/1/" - }, - "display": "http (TCP/80)", - "id": 2, - "ipaddresses": [ - { - "address": "172.16.180.1/24", - "display": "172.16.180.1/24", - "family": 4, - "id": 1, - "url": "http://localhost:32768/api/ipam/ip-addresses/1/" - }, - { - "address": "2001::1:1/64", - "display": "2001::1:1/64", - "family": 6, - "id": 2, - "url": "http://localhost:32768/api/ipam/ip-addresses/2/" - } - ], - "last_updated": "2024-04-10T12:55:50.898528Z", - "name": "http", - "ports": [ - 80 - ], - "protocol": { - "label": "TCP", - "value": "tcp" - }, - "tags": [], - "url": "http://localhost:32768/api/ipam/services/2/", - "virtual_machine": null - } - ], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [ - { - "created": "2024-04-10T12:55:49.675995Z", - "custom_fields": {}, - "description": "", - "display": "disk1", - "id": 1, - "last_updated": "2024-04-10T12:55:49.676030Z", - "name": "disk1", - "size": 60, - "tags": [], - "url": "http://localhost:32768/api/virtualization/virtual-disks/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - } - }, - { - "created": "2024-04-10T12:55:49.707065Z", - "custom_fields": {}, - "description": "", - "display": "disk2", - "id": 2, - "last_updated": "2024-04-10T12:55:49.707112Z", - "name": "disk2", - "size": 110, - "tags": [], - "url": "http://localhost:32768/api/virtualization/virtual-disks/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - } - } - ] - }, - "test100-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "disk": 170, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:49.971454Z", - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 1, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:49.971497Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.036225Z", - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 2, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.036270Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.084595Z", - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 3, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.084623Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/3/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.131287Z", - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 4, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.131330Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/4/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.177550Z", - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 5, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.177580Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/5/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [ - { - "created": "2024-04-10T12:55:49.675995Z", - "custom_fields": {}, - "description": "", - "display": "disk1", - "id": 1, - "last_updated": "2024-04-10T12:55:49.676030Z", - "name": "disk1", - "size": 60, - "tags": [], - "url": "http://localhost:32768/api/virtualization/virtual-disks/1/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - } - }, - { - "created": "2024-04-10T12:55:49.707065Z", - "custom_fields": {}, - "description": "", - "display": "disk2", - "id": 2, - "last_updated": "2024-04-10T12:55:49.707112Z", - "name": "disk2", - "size": 110, - "tags": [], - "url": "http://localhost:32768/api/virtualization/virtual-disks/2/", - "virtual_machine": { - "display": "test100-vm", - "id": 1, - "name": "test100-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/1/" - } - } - ] - }, - "test101-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [ - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.222402Z", - "custom_fields": {}, - "description": "", - "display": "Eth0", - "enabled": true, - "id": 6, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.222435Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth0", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/6/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.268954Z", - "custom_fields": {}, - "description": "", - "display": "Eth1", - "enabled": true, - "id": 7, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.268981Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth1", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/7/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.329979Z", - "custom_fields": {}, - "description": "", - "display": "Eth2", - "enabled": true, - "id": 8, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.330023Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth2", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/8/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.378705Z", - "custom_fields": {}, - "description": "", - "display": "Eth3", - "enabled": true, - "id": 9, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.378744Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth3", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/9/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - }, - { - "bridge": null, - "count_fhrp_groups": 0, - "count_ipaddresses": 0, - "created": "2024-04-10T12:55:50.419981Z", - "custom_fields": {}, - "description": "", - "display": "Eth4", - "enabled": true, - "id": 10, - "ip_addresses": [], - "l2vpn_termination": null, - "last_updated": "2024-04-10T12:55:50.420007Z", - "mac_address": null, - "mode": null, - "mtu": null, - "name": "Eth4", - "parent": null, - "tagged_vlans": [], - "tags": [], - "untagged_vlan": null, - "url": "http://localhost:32768/api/virtualization/interfaces/10/", - "virtual_machine": { - "display": "test101-vm", - "id": 2, - "name": "test101-vm", - "url": "http://localhost:32768/api/virtualization/virtual-machines/2/" - }, - "vrf": null - } - ], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "test102-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "test103-vm": { - "cluster": "Test Cluster", - "cluster_group": "test-cluster-group", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [ - "test-region", - "parent-region" - ], - "services": [], - "site": "test-site", - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - }, - "test104-vm": { - "cluster": "Test Cluster 2", - "cluster_type": "test-cluster-type", - "config_context": {}, - "custom_fields": {}, - "interfaces": [], - "is_virtual": true, - "locations": [], - "regions": [], - "services": [], - "site_groups": [], - "status": { - "label": "Active", - "value": "active" - }, - "tags": [], - "virtual_disks": [] - } - } - }, - "all": { - "children": [ - "ungrouped", - "site_test_site2", - "region_other_region", - "region_parent_region", - "site_group_other_site_group", - "site_group_parent_site_group", - "rack_Test_Rack_Site_2", - "rack_role_test_rack_role", - "role_core_switch", - "device_type_cisco_test", - "manufacturer_cisco", - "status_active", - "device_type_nexus_parent", - "service_telnet", - "rack_Test_Rack", - "service_ssh", - "service_http", - "cluster_Test_Cluster_2", - "cluster_type_test_cluster_type", - "is_virtual", - "cluster_Test_Cluster", - "cluster_group_test_cluster_group" - ] - }, - "cluster_Test_Cluster": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_Test_Cluster_2": { - "hosts": [ - "Test VM With Spaces", - "test104-vm" - ] - }, - "cluster_group_test_cluster_group": { - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "cluster_type_test_cluster_type": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "device_type_cisco_test": { - "hosts": [ - "R1-Device", - "TestDeviceR1", - "test100" - ] - }, - "device_type_nexus_parent": { - "hosts": [ - "Test Nexus One" - ] - }, - "is_virtual": { - "hosts": [ - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - }, - "location_parent_rack_group": { - "children": [ - "location_test_rack_group" - ] - }, - "location_test_rack_group": { - "hosts": [ - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "manufacturer_cisco": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "rack_Test_Rack": { - "hosts": [ - "TestDeviceR1" - ] - }, - "rack_Test_Rack_Site_2": { - "hosts": [ - "R1-Device" - ] - }, - "rack_role_test_rack_role": { - "hosts": [ - "R1-Device" - ] - }, - "region_parent_region": { - "children": [ - "region_test_region" - ] - }, - "region_test_region": { - "children": [ - "site_test_site" - ] - }, - "role_core_switch": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100" - ] - }, - "service_http": { - "hosts": [ - "test100" - ] - }, - "service_ssh": { - "hosts": [ - "test100", - "Test VM With Spaces" - ] - }, - "service_telnet": { - "hosts": [ - "Test Nexus One" - ] - }, - "site_group_parent_site_group": { - "children": [ - "site_group_test_site_group" - ] - }, - "site_test_site": { - "children": [ - "location_parent_rack_group" - ], - "hosts": [ - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm" - ] - }, - "site_test_site2": { - "hosts": [ - "R1-Device" - ] - }, - "status_active": { - "hosts": [ - "R1-Device", - "Test Nexus One", - "TestDeviceR1", - "test100", - "Test VM With Spaces", - "test100-vm", - "test101-vm", - "test102-vm", - "test103-vm", - "test104-vm" - ] - } -} \ No newline at end of file diff --git a/tests/integration/targets/inventory-v3.7/runme.sh b/tests/integration/targets/inventory-v3.7/runme.sh deleted file mode 100755 index 18579c472..000000000 --- a/tests/integration/targets/inventory-v3.7/runme.sh +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/env bash - -set -o xtrace # Print commands as they're run -set -o errexit # abort on nonzero exitstatus -set -o nounset # abort on unbound variable -set -o pipefail # don't hide errors within pipes - -# Directory of this script -SCRIPT_DIR="$( dirname "${BASH_SOURCE[0]}" )" -RUNME_CONFIG="$SCRIPT_DIR/runme_config" -INVENTORIES_DIR="$SCRIPT_DIR/files" - -# Load runme_config, if exists - the only way to pass environment when run through ansible-test -if [[ -f "$RUNME_CONFIG" ]] -then - source "$RUNME_CONFIG" -fi - -declare -a COMPARE_OPTIONS # empty array - -# Check if NETBOX_VERSION has been set by runme_config, and if so, pass to compare_inventory_json.py -if [[ "${NETBOX_VERSION:-}" == "v3.5" ]] -then - COMPARE_OPTIONS+=(--netbox-version "${NETBOX_VERSION}") -fi - -# OUTPUT_DIR is set by ansible-test -# OUTPUT_INVENTORY_JSON is only set if running hacking/update_test_inventories.sh to update the test diff data -if [[ -n "${OUTPUT_INVENTORY_JSON:-}" ]] -then - OUTPUT_DIR="$OUTPUT_INVENTORY_JSON" - - # Clean up JSON fields we don't want to store and compare against in tests (creation times, etc.) - COMPARE_OPTIONS+=(--write) -fi - -echo OUTPUT_DIR="$OUTPUT_DIR" - -inventory () { - if [[ -n "${OUTPUT_INVENTORY_JSON:-}" ]] - then - # Running for the purpose of updating test data - ansible-inventory "$@" - else - # Running inside ansible-test - # Run through python.py just to make sure we've definitely got the coverage environment set up - # Just running ansible-inventory directly may not actually find the right one in PATH - python.py "$(command -v ansible-inventory)" "$@" - fi -} - - -RESULT=0 - -for INVENTORY in "$INVENTORIES_DIR"/*.yml -do - NAME="$(basename "$INVENTORY")" - NAME_WITHOUT_EXTENSION="${NAME%.yml}" - - OUTPUT_JSON="$OUTPUT_DIR/$NAME_WITHOUT_EXTENSION.json" - inventory -vvvv --list --inventory "$INVENTORY" --output="$OUTPUT_JSON" - - # Compare the output - if ! "$SCRIPT_DIR/compare_inventory_json.py" "${COMPARE_OPTIONS[@]}" "$INVENTORIES_DIR/$NAME_WITHOUT_EXTENSION.json" "$OUTPUT_JSON" - then - # Returned non-zero status - RESULT=1 - fi - -done - -exit $RESULT diff --git a/tests/integration/targets/inventory-v3.7/runme_config.template b/tests/integration/targets/inventory-v3.7/runme_config.template deleted file mode 100644 index 80b42a326..000000000 --- a/tests/integration/targets/inventory-v3.7/runme_config.template +++ /dev/null @@ -1,6 +0,0 @@ -# runme_config is source'd by runme.sh to set environment variables used to modify the test against different versions of NetBox. -# .travis.yml uses render_config.sh to generate it from runme_config.template -# There is no other way to pass environment variables to a runme.sh integration test. -# (integration_config.yml files are only helpful to ansible yaml-based tests) - -export NETBOX_VERSION=${VERSION} diff --git a/tests/integration/targets/inventory-v3.5/.gitignore b/tests/integration/targets/inventory-v4.2/.gitignore similarity index 100% rename from tests/integration/targets/inventory-v3.5/.gitignore rename to tests/integration/targets/inventory-v4.2/.gitignore diff --git a/tests/integration/targets/inventory-v3.5/aliases b/tests/integration/targets/inventory-v4.2/aliases similarity index 100% rename from tests/integration/targets/inventory-v3.5/aliases rename to tests/integration/targets/inventory-v4.2/aliases diff --git a/tests/integration/targets/inventory-v3.5/compare_inventory_json.py b/tests/integration/targets/inventory-v4.2/compare_inventory_json.py similarity index 100% rename from tests/integration/targets/inventory-v3.5/compare_inventory_json.py rename to tests/integration/targets/inventory-v4.2/compare_inventory_json.py diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-bearer-token.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-bearer-token.json similarity index 92% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-bearer-token.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-bearer-token.json index 360a7ac33..832458310 100644 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-bearer-token.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-bearer-token.json @@ -44,11 +44,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -59,6 +61,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -124,11 +127,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -139,6 +144,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -204,11 +210,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -267,11 +275,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -307,6 +317,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/11/", "enabled": true, "id": 11, "ip_addresses": [], @@ -320,6 +331,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -333,6 +345,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/12/", "enabled": true, "id": 12, "ip_addresses": [], @@ -346,6 +359,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -356,6 +370,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -363,6 +378,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -375,6 +391,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -438,11 +455,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -453,6 +472,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -518,11 +538,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -533,6 +555,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -598,11 +621,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -665,11 +690,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -688,23 +715,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -734,6 +771,7 @@ "cluster_type": "test-cluster-type", "config_context": {}, "custom_fields": {}, + "disk": 170, "interfaces": [ { "bridge": null, @@ -742,6 +780,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -755,6 +794,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -768,6 +808,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -781,6 +822,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -794,6 +836,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -807,6 +850,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -820,6 +864,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -833,6 +878,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -846,6 +892,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -859,6 +906,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -872,6 +920,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -895,6 +944,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -908,6 +958,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -921,6 +972,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -934,6 +986,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -947,6 +1000,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -960,6 +1014,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -973,6 +1028,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -986,6 +1042,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -999,6 +1056,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -1012,6 +1070,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1025,6 +1084,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1047,6 +1107,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1069,6 +1130,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1087,6 +1149,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-bearer-token.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-bearer-token.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-bearer-token.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-bearer-token.yml diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2-filter.json similarity index 92% rename from tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2-filter.json index 6d7249836..945e4f378 100644 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-jinja2-filter.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2-filter.json @@ -21,11 +21,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -36,6 +38,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -101,11 +104,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -116,6 +121,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -181,11 +187,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -244,11 +252,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -321,11 +331,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -336,6 +348,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -401,11 +414,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -416,6 +431,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -481,11 +497,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -548,11 +566,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -571,23 +591,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -617,6 +647,7 @@ "cluster_type": "test-cluster-type", "config_context": {}, "custom_fields": {}, + "disk": 170, "interfaces": [ { "bridge": null, @@ -625,6 +656,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -638,6 +670,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -651,6 +684,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -664,6 +698,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -677,6 +712,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -690,6 +726,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -703,6 +740,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -716,6 +754,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -729,6 +768,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -742,6 +782,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -755,6 +796,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -778,6 +820,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -791,6 +834,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -804,6 +848,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -817,6 +862,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -830,6 +876,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -843,6 +890,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -856,6 +904,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -869,6 +918,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -882,6 +932,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -895,6 +946,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -908,6 +960,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -930,6 +983,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -952,6 +1006,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2-filter.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2-filter.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2-filter.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2-filter.yml diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2.json similarity index 98% rename from tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2.json index d104c5cea..0542ee506 100644 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-jinja2.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2.json @@ -53,6 +53,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", @@ -152,6 +153,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -171,6 +173,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -190,6 +193,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -209,6 +213,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -224,6 +229,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-jinja2.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-jinja2.yml diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-legacy.json similarity index 91% rename from tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-legacy.json index 6df5dbf2b..42794219f 100644 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-legacy.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-legacy.json @@ -67,11 +67,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -106,6 +108,7 @@ ], "locations": [], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -113,6 +116,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -125,6 +129,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -211,11 +216,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -234,23 +241,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -281,6 +298,7 @@ "cluster_group": "test-cluster-group", "cluster_type": "test-cluster-type", "custom_fields": {}, + "disk": 170, "is_virtual": true, "local_context_data": [ null @@ -290,6 +308,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -315,6 +334,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -340,6 +360,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -365,6 +386,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -386,6 +408,7 @@ ], "locations": [], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-legacy.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-legacy.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-legacy.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-legacy.yml diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-noracks.json similarity index 92% rename from tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-noracks.json index b61454e00..250a3ea9f 100644 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-noracks.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-noracks.json @@ -61,11 +61,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -76,6 +78,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -141,11 +144,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -156,6 +161,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -221,11 +227,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -284,11 +292,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -328,6 +338,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/11/", "enabled": true, "id": 11, "ip_addresses": [], @@ -341,6 +352,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -354,6 +366,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/12/", "enabled": true, "id": 12, "ip_addresses": [], @@ -367,6 +380,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -379,6 +393,7 @@ null ], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -386,6 +401,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -398,6 +414,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -476,11 +493,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -491,6 +510,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -556,11 +576,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -571,6 +593,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -636,11 +659,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -702,11 +727,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -725,23 +752,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -775,6 +812,7 @@ {} ], "custom_fields": {}, + "disk": 170, "interfaces": [ { "bridge": null, @@ -783,6 +821,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -796,6 +835,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -809,6 +849,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -822,6 +863,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -835,6 +877,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -848,6 +891,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -861,6 +905,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -874,6 +919,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -887,6 +933,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -900,6 +947,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -915,6 +963,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -942,6 +991,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -955,6 +1005,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -968,6 +1019,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -981,6 +1033,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -994,6 +1047,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -1007,6 +1061,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1020,6 +1075,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -1033,6 +1089,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1046,6 +1103,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -1059,6 +1117,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1074,6 +1133,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1102,6 +1162,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1130,6 +1191,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1154,6 +1216,7 @@ null ], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-noracks.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-noracks.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-noracks.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-noracks.yml diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-options-flatten.json similarity index 91% rename from tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-options-flatten.json index 8e019bd84..d0698bbbc 100644 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory-options-flatten.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-options-flatten.json @@ -64,11 +64,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -79,6 +81,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -144,11 +147,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -159,6 +164,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -224,11 +230,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -287,11 +295,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -325,6 +335,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/11/", "enabled": true, "id": 11, "ip_addresses": [], @@ -338,6 +349,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -351,6 +363,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/12/", "enabled": true, "id": 12, "ip_addresses": [], @@ -364,6 +377,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -374,6 +388,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -381,6 +396,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -393,6 +409,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -448,11 +465,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -463,6 +482,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -528,11 +548,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -543,6 +565,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -608,11 +631,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -673,11 +698,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -696,23 +723,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -740,6 +777,7 @@ "cluster": "Test Cluster", "cluster_group": "test-cluster-group", "cluster_type": "test-cluster-type", + "disk": 170, "interfaces": [ { "bridge": null, @@ -748,6 +786,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -761,6 +800,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -774,6 +814,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -787,6 +828,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -800,6 +842,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -813,6 +856,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -826,6 +870,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -839,6 +884,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -852,6 +898,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -865,6 +912,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -878,6 +926,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -899,6 +948,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -912,6 +962,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -925,6 +976,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -938,6 +990,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -951,6 +1004,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -964,6 +1018,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -977,6 +1032,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -990,6 +1046,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1003,6 +1060,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -1016,6 +1074,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1029,6 +1088,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1049,6 +1109,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1069,6 +1130,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1085,6 +1147,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-options-flatten.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-options-flatten.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-options-flatten.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-options-flatten.yml diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-options.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-options.json similarity index 98% rename from tests/integration/targets/inventory-v3.7/files/test-inventory-options.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-options.json index d104c5cea..0542ee506 100644 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-options.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-options.json @@ -53,6 +53,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", @@ -152,6 +153,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -171,6 +173,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -190,6 +193,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -209,6 +213,7 @@ "test-region", "parent-region" ], + "serial": "", "site": "test-site", "site_groups": [], "status": { @@ -224,6 +229,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-options.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-options.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-options.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-options.yml diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals-flatten.json similarity index 98% rename from tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-plurals-flatten.json index 12e096f53..4bad3dca5 100644 --- a/tests/integration/targets/inventory-v3.7/files/test-inventory-plurals-flatten.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals-flatten.json @@ -101,6 +101,7 @@ ], "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", @@ -199,6 +200,7 @@ "test-region", "parent-region" ], + "serial": "", "site_groups": [], "sites": [ "test-site" @@ -222,6 +224,7 @@ "test-region", "parent-region" ], + "serial": "", "site_groups": [], "sites": [ "test-site" @@ -245,6 +248,7 @@ "test-region", "parent-region" ], + "serial": "", "site_groups": [], "sites": [ "test-site" @@ -268,6 +272,7 @@ "test-region", "parent-region" ], + "serial": "", "site_groups": [], "sites": [ "test-site" @@ -287,6 +292,7 @@ ], "locations": [], "regions": [], + "serial": "", "site_groups": [], "status": { "label": "Active", diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals-flatten.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals-flatten.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-plurals-flatten.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-plurals-flatten.yml diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals.json b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals.json similarity index 92% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-plurals.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory-plurals.json index 22f9d4e5f..fb34d7fa2 100644 --- a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals.json @@ -66,11 +66,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -81,6 +83,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -146,11 +149,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -161,6 +166,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -226,11 +232,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -293,11 +301,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -337,6 +347,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/11/", "enabled": true, "id": 11, "ip_addresses": [], @@ -350,6 +361,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -363,6 +375,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/12/", "enabled": true, "id": 12, "ip_addresses": [], @@ -376,6 +389,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -389,6 +403,7 @@ ], "locations": [], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -396,6 +411,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -408,6 +424,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -493,11 +510,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -508,6 +527,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -573,11 +593,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -588,6 +610,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -653,11 +676,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -723,11 +748,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -746,23 +773,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -796,6 +833,7 @@ {} ], "custom_fields": {}, + "disk": 170, "interfaces": [ { "bridge": null, @@ -804,6 +842,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -817,6 +856,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -830,6 +870,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -843,6 +884,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -856,6 +898,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -869,6 +912,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -882,6 +926,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -895,6 +940,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -908,6 +954,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -921,6 +968,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -937,6 +985,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -964,6 +1013,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -977,6 +1027,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -990,6 +1041,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -1003,6 +1055,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1016,6 +1069,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -1029,6 +1083,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1042,6 +1097,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -1055,6 +1111,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1068,6 +1125,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -1081,6 +1139,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1097,6 +1156,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1126,6 +1186,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1155,6 +1216,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site_groups": [], "sites": [ @@ -1180,6 +1242,7 @@ ], "locations": [], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { diff --git a/tests/integration/targets/inventory-v3.5/files/test-inventory-plurals.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory-plurals.yml similarity index 100% rename from tests/integration/targets/inventory-v3.5/files/test-inventory-plurals.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory-plurals.yml diff --git a/tests/integration/targets/inventory-v3.6/files/test-inventory.json b/tests/integration/targets/inventory-v4.2/files/test-inventory.json similarity index 86% rename from tests/integration/targets/inventory-v3.6/files/test-inventory.json rename to tests/integration/targets/inventory-v4.2/files/test-inventory.json index 360a7ac33..b7e51862b 100644 --- a/tests/integration/targets/inventory-v3.6/files/test-inventory.json +++ b/tests/integration/targets/inventory-v4.2/files/test-inventory.json @@ -22,7 +22,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "Test Nexus One": { "ansible_host": "172.16.180.12", @@ -44,11 +45,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "Ethernet1/1", + "display_url": "http://localhost:32768/dcim/interfaces/1/", "duplex": null, "enabled": true, "id": 1, @@ -59,6 +62,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.11/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/3/", "dns_name": "", "family": { "label": "IPv4", @@ -124,11 +128,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus Child One", "id": 5, "name": "Test Nexus Child One" }, "display": "Ethernet2/1", + "display_url": "http://localhost:32768/dcim/interfaces/2/", "duplex": null, "enabled": true, "id": 2, @@ -139,6 +145,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.12/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/4/", "dns_name": "nexus.example.com", "family": { "label": "IPv4", @@ -204,11 +211,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/6/", "duplex": null, "enabled": true, "id": 6, @@ -267,11 +276,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "Test Nexus One", "id": 4, "name": "Test Nexus One" }, "display": "telnet (TCP/23)", + "display_url": "http://localhost:32768/ipam/services/3/", "id": 3, "ipaddresses": [], "name": "telnet", @@ -292,7 +303,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "Test VM With Spaces": { "cluster": "Test Cluster 2", @@ -307,6 +319,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/11/", "enabled": true, "id": 11, "ip_addresses": [], @@ -320,6 +333,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -333,6 +347,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/12/", "enabled": true, "id": 12, "ip_addresses": [], @@ -346,6 +361,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -356,6 +372,7 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [ { "comments": "", @@ -363,6 +380,7 @@ "description": "", "device": null, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/4/", "id": 4, "ipaddresses": [], "name": "ssh", @@ -375,6 +393,7 @@ }, "tags": [], "virtual_machine": { + "description": "", "display": "Test VM With Spaces", "id": 6, "name": "Test VM With Spaces" @@ -386,7 +405,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "TestDeviceR1": { "config_context": {}, @@ -413,7 +433,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "test100": { "asset_tag": "123456789", @@ -438,11 +459,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet1", + "display_url": "http://localhost:32768/dcim/interfaces/3/", "duplex": null, "enabled": true, "id": 3, @@ -453,6 +476,7 @@ "custom_fields": {}, "description": "", "display": "172.16.180.1/24", + "display_url": "http://localhost:32768/ipam/ip-addresses/1/", "dns_name": "", "family": { "label": "IPv4", @@ -518,11 +542,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "GigabitEthernet2", + "display_url": "http://localhost:32768/dcim/interfaces/4/", "duplex": null, "enabled": true, "id": 4, @@ -533,6 +559,7 @@ "custom_fields": {}, "description": "", "display": "2001::1:1/64", + "display_url": "http://localhost:32768/ipam/ip-addresses/2/", "dns_name": "", "family": { "label": "IPv6", @@ -598,11 +625,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "wlink1", + "display_url": "http://localhost:32768/dcim/interfaces/5/", "duplex": null, "enabled": true, "id": 5, @@ -665,11 +694,13 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "ssh (TCP/22)", + "display_url": "http://localhost:32768/ipam/services/1/", "id": 1, "ipaddresses": [], "name": "ssh", @@ -688,23 +719,33 @@ "custom_fields": {}, "description": "", "device": { + "description": "", "display": "test100 (123456789)", "id": 1, "name": "test100" }, "display": "http (TCP/80)", + "display_url": "http://localhost:32768/ipam/services/2/", "id": 2, "ipaddresses": [ { "address": "172.16.180.1/24", + "description": "", "display": "172.16.180.1/24", - "family": 4, + "family": { + "label": "IPv4", + "value": 4 + }, "id": 1 }, { "address": "2001::1:1/64", + "description": "", "display": "2001::1:1/64", - "family": 6, + "family": { + "label": "IPv6", + "value": 6 + }, "id": 2 } ], @@ -726,7 +767,41 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [ + { + "custom_fields": {}, + "description": "", + "display": "disk1", + "display_url": "http://localhost:32768/virtualization/virtual-disks/1/", + "id": 1, + "name": "disk1", + "size": 60, + "tags": [], + "virtual_machine": { + "description": "", + "display": "test100-vm", + "id": 1, + "name": "test100-vm" + } + }, + { + "custom_fields": {}, + "description": "", + "display": "disk2", + "display_url": "http://localhost:32768/virtualization/virtual-disks/2/", + "id": 2, + "name": "disk2", + "size": 110, + "tags": [], + "virtual_machine": { + "description": "", + "display": "test100-vm", + "id": 1, + "name": "test100-vm" + } + } + ] }, "test100-vm": { "cluster": "Test Cluster", @@ -734,6 +809,7 @@ "cluster_type": "test-cluster-type", "config_context": {}, "custom_fields": {}, + "disk": 170, "interfaces": [ { "bridge": null, @@ -742,6 +818,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/1/", "enabled": true, "id": 1, "ip_addresses": [], @@ -755,6 +832,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -768,6 +846,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/2/", "enabled": true, "id": 2, "ip_addresses": [], @@ -781,6 +860,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -794,6 +874,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/3/", "enabled": true, "id": 3, "ip_addresses": [], @@ -807,6 +888,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -820,6 +902,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/4/", "enabled": true, "id": 4, "ip_addresses": [], @@ -833,6 +916,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -846,6 +930,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/5/", "enabled": true, "id": 5, "ip_addresses": [], @@ -859,6 +944,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test100-vm", "id": 1, "name": "test100-vm" @@ -872,6 +958,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -879,7 +966,41 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [ + { + "custom_fields": {}, + "description": "", + "display": "disk1", + "display_url": "http://localhost:32768/virtualization/virtual-disks/1/", + "id": 1, + "name": "disk1", + "size": 60, + "tags": [], + "virtual_machine": { + "description": "", + "display": "test100-vm", + "id": 1, + "name": "test100-vm" + } + }, + { + "custom_fields": {}, + "description": "", + "display": "disk2", + "display_url": "http://localhost:32768/virtualization/virtual-disks/2/", + "id": 2, + "name": "disk2", + "size": 110, + "tags": [], + "virtual_machine": { + "description": "", + "display": "test100-vm", + "id": 1, + "name": "test100-vm" + } + } + ] }, "test101-vm": { "cluster": "Test Cluster", @@ -895,6 +1016,7 @@ "custom_fields": {}, "description": "", "display": "Eth0", + "display_url": "http://localhost:32768/virtualization/interfaces/6/", "enabled": true, "id": 6, "ip_addresses": [], @@ -908,6 +1030,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -921,6 +1044,7 @@ "custom_fields": {}, "description": "", "display": "Eth1", + "display_url": "http://localhost:32768/virtualization/interfaces/7/", "enabled": true, "id": 7, "ip_addresses": [], @@ -934,6 +1058,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -947,6 +1072,7 @@ "custom_fields": {}, "description": "", "display": "Eth2", + "display_url": "http://localhost:32768/virtualization/interfaces/8/", "enabled": true, "id": 8, "ip_addresses": [], @@ -960,6 +1086,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -973,6 +1100,7 @@ "custom_fields": {}, "description": "", "display": "Eth3", + "display_url": "http://localhost:32768/virtualization/interfaces/9/", "enabled": true, "id": 9, "ip_addresses": [], @@ -986,6 +1114,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -999,6 +1128,7 @@ "custom_fields": {}, "description": "", "display": "Eth4", + "display_url": "http://localhost:32768/virtualization/interfaces/10/", "enabled": true, "id": 10, "ip_addresses": [], @@ -1012,6 +1142,7 @@ "tags": [], "untagged_vlan": null, "virtual_machine": { + "description": "", "display": "test101-vm", "id": 2, "name": "test101-vm" @@ -1025,6 +1156,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1032,7 +1164,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "test102-vm": { "cluster": "Test Cluster", @@ -1047,6 +1180,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1054,7 +1188,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "test103-vm": { "cluster": "Test Cluster", @@ -1069,6 +1204,7 @@ "test-region", "parent-region" ], + "serial": "", "services": [], "site": "test-site", "site_groups": [], @@ -1076,7 +1212,8 @@ "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] }, "test104-vm": { "cluster": "Test Cluster 2", @@ -1087,13 +1224,15 @@ "is_virtual": true, "locations": [], "regions": [], + "serial": "", "services": [], "site_groups": [], "status": { "label": "Active", "value": "active" }, - "tags": [] + "tags": [], + "virtual_disks": [] } } }, diff --git a/tests/integration/targets/inventory-v3.7/files/test-inventory.yml b/tests/integration/targets/inventory-v4.2/files/test-inventory.yml similarity index 100% rename from tests/integration/targets/inventory-v3.7/files/test-inventory.yml rename to tests/integration/targets/inventory-v4.2/files/test-inventory.yml diff --git a/tests/integration/targets/inventory-v3.5/runme.sh b/tests/integration/targets/inventory-v4.2/runme.sh similarity index 98% rename from tests/integration/targets/inventory-v3.5/runme.sh rename to tests/integration/targets/inventory-v4.2/runme.sh index 18579c472..f0ea70d04 100755 --- a/tests/integration/targets/inventory-v3.5/runme.sh +++ b/tests/integration/targets/inventory-v4.2/runme.sh @@ -19,7 +19,7 @@ fi declare -a COMPARE_OPTIONS # empty array # Check if NETBOX_VERSION has been set by runme_config, and if so, pass to compare_inventory_json.py -if [[ "${NETBOX_VERSION:-}" == "v3.5" ]] +if [[ "${NETBOX_VERSION:-}" == "v4.1" ]] then COMPARE_OPTIONS+=(--netbox-version "${NETBOX_VERSION}") fi diff --git a/tests/integration/targets/inventory-v3.5/runme_config.template b/tests/integration/targets/inventory-v4.2/runme_config.template similarity index 100% rename from tests/integration/targets/inventory-v3.5/runme_config.template rename to tests/integration/targets/inventory-v4.2/runme_config.template diff --git a/tests/integration/targets/regression-v3.6/tasks/main.yml b/tests/integration/targets/regression-v3.6/tasks/main.yml deleted file mode 100644 index 5bc0bd708..000000000 --- a/tests/integration/targets/regression-v3.6/tasks/main.yml +++ /dev/null @@ -1,284 +0,0 @@ ---- -## -## -### TEST NETBOX CONNECTION FAILURE -## -## -- name: TEST NETBOX CONNECTION FAILURE - connection: local - block: - - name: 1 - Device with required information - netbox.netbox.netbox_device: - netbox_url: http://some-random-invalid-URL - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_one - ignore_errors: true - - - name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is failed - - test_one['msg'] == "Failed to establish connection to NetBox API" - - - name: 2 - Check to see if netbox_prefix with parent defined will pass via check-mode - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.10.0.0/16 - prefix_length: 24 - first_available: true - state: present - register: test_two - check_mode: true - - - name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "New prefix created within 10.10.0.0/16" - - - name: "3 - Add device with tags - Setup device to test #242" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - slug: first - - slug: second - - - name: "4 - Add device with tags out of order - shouldn't change - Tests #242 is fixed" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - slug: second - - slug: first - register: test_four - diff: true - - - name: "4 - Assert not changed - Tests #242 is fixed" - ansible.builtin.assert: - that: - - not test_four["changed"] - - - name: "5 - Add device with extra tag - Tests #242 is fixed" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - asset_tag: "1234" - tags: - - slug: second - - slug: third - - slug: first - register: test_five - diff: true - - - name: "5 - Assert added tag - Tests #242 is fixed" - ansible.builtin.assert: - that: - - test_five is changed - - test_five["diff"]["after"]["tags"] is defined - - test_five["device"]["tags"] is defined - - - name: "6 - Loop through and add interface templates to different device interface templates - Fixes #282" - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: SFP+ (10GE) - type: SFP+ (10GE) - device_type: "{{ item }}" - register: test_six - loop: - - Cisco Test - - Arista Test - - Nexus Child - - Nexus Parent - - - name: "6 - Assert device type is correct - Fixes #282" - ansible.builtin.assert: - that: - - test_six.results[0]["diff"]["before"]["state"] == "absent" - - test_six.results[0]["diff"]["after"]["state"] == "present" - - test_six.results[0]["interface_template"]["device_type"] == 1 - - test_six.results[1]["diff"]["before"]["state"] == "absent" - - test_six.results[1]["diff"]["after"]["state"] == "present" - - test_six.results[1]["interface_template"]["device_type"] == 2 - - test_six.results[2]["diff"]["before"]["state"] == "absent" - - test_six.results[2]["diff"]["after"]["state"] == "present" - - test_six.results[2]["interface_template"]["device_type"] == 4 - - test_six.results[3]["diff"]["before"]["state"] == "absent" - - test_six.results[3]["diff"]["after"]["state"] == "present" - - test_six.results[3]["interface_template"]["device_type"] == 3 - - - name: 7 - Don't prevent updates to other params if tags are specified - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - asset_tag: "Null" - tags: - # Changed these for issue #407 to be IDs - - 2 - - 3 - - 1 - register: test_seven - - - name: "5 - Assert added tag - Tests #242 is fixed" - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven["diff"]["after"]["asset_tag"] == "Null" - - test_seven["device"]["asset_tag"] == "Null" - - - name: Add ip address to netbox and don't assign it to a device (Issue 372) - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.255.255.1/24 - query_params: - - address - - vrf - state: present - - - name: Update same ip address to attach to a device interface (Issue 372) - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.255.255.1/24 - assigned_object: - device: test100 - name: GigabitEthernet1 - query_params: - - address - - vrf - state: present - register: query_params_372 - - - name: Assert ip address was updated and added to device interface - ansible.builtin.assert: - that: - - query_params_372 is changed - - query_params_372['msg'] == 'ip_address 10.255.255.1/24 updated' - - query_params_372['diff']['after']['assigned_object'] == 3 - - query_params_372['diff']['after']['assigned_object_id'] == 3 - - query_params_372['diff']['after']['assigned_object_type'] == 'dcim.interface' - - - name: Validate failure due to invalid child params provided by user - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: test100 - name: GigabitEthernet1 - termination_b_type: circuits.circuittermination - termination_b: - name: XYZ987 - ignore_errors: true - register: test_results - - - name: "Issue #415 - Assert failure message shows the allowed params and what the user provided" - ansible.builtin.assert: - that: - - test_results is failed - - 'test_results["msg"] == "One or more of the kwargs provided are invalid for circuits.circuittermination, provided kwargs: name. Acceptable kwargs: circuit, - term_side"' - - - name: "Issue #432 - Make sure same IPs get assigned to different device interfaces" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: "{{ item }}" - loop: "{{ data }}" - register: test_results - vars: - data: - - address: 121.121.121.121/32 - assigned_object: - device: Test Nexus One - name: Ethernet1/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 121.121.121.121/32 - assigned_object: - device: Test Nexus Child One - name: Ethernet2/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 1.121.121.121/32 - assigned_object: - device: Test Nexus One - name: Ethernet1/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 1.121.121.121/32 - assigned_object: - device: Test Nexus Child One - name: Ethernet2/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - - name: "ASSERT Issue #432 changes reflect correct device" - ansible.builtin.assert: - that: - - test_results | community.general.json_query('results[?ip_address.address==`1.121.121.121/32`]') | length == 2 - - test_results | community.general.json_query('results[?ip_address.address==`121.121.121.121/32`]') | length == 2 - - - name: "Issue #958 - Make sure we can add same location with different sites" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Office Building - site: "{{ item }}" - loop: - - Test Site - - Test Site2 - register: test_results - - - name: "ASSERT ISSUE #957 - Location has different IDs" - ansible.builtin.assert: - that: - - test_results.results.0.location.id != test_results.results.1.location.id diff --git a/tests/integration/targets/regression-v3.7/tasks/main.yml b/tests/integration/targets/regression-v3.7/tasks/main.yml deleted file mode 100644 index 5bc0bd708..000000000 --- a/tests/integration/targets/regression-v3.7/tasks/main.yml +++ /dev/null @@ -1,284 +0,0 @@ ---- -## -## -### TEST NETBOX CONNECTION FAILURE -## -## -- name: TEST NETBOX CONNECTION FAILURE - connection: local - block: - - name: 1 - Device with required information - netbox.netbox.netbox_device: - netbox_url: http://some-random-invalid-URL - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_one - ignore_errors: true - - - name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is failed - - test_one['msg'] == "Failed to establish connection to NetBox API" - - - name: 2 - Check to see if netbox_prefix with parent defined will pass via check-mode - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.10.0.0/16 - prefix_length: 24 - first_available: true - state: present - register: test_two - check_mode: true - - - name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "New prefix created within 10.10.0.0/16" - - - name: "3 - Add device with tags - Setup device to test #242" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - slug: first - - slug: second - - - name: "4 - Add device with tags out of order - shouldn't change - Tests #242 is fixed" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - slug: second - - slug: first - register: test_four - diff: true - - - name: "4 - Assert not changed - Tests #242 is fixed" - ansible.builtin.assert: - that: - - not test_four["changed"] - - - name: "5 - Add device with extra tag - Tests #242 is fixed" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - asset_tag: "1234" - tags: - - slug: second - - slug: third - - slug: first - register: test_five - diff: true - - - name: "5 - Assert added tag - Tests #242 is fixed" - ansible.builtin.assert: - that: - - test_five is changed - - test_five["diff"]["after"]["tags"] is defined - - test_five["device"]["tags"] is defined - - - name: "6 - Loop through and add interface templates to different device interface templates - Fixes #282" - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: SFP+ (10GE) - type: SFP+ (10GE) - device_type: "{{ item }}" - register: test_six - loop: - - Cisco Test - - Arista Test - - Nexus Child - - Nexus Parent - - - name: "6 - Assert device type is correct - Fixes #282" - ansible.builtin.assert: - that: - - test_six.results[0]["diff"]["before"]["state"] == "absent" - - test_six.results[0]["diff"]["after"]["state"] == "present" - - test_six.results[0]["interface_template"]["device_type"] == 1 - - test_six.results[1]["diff"]["before"]["state"] == "absent" - - test_six.results[1]["diff"]["after"]["state"] == "present" - - test_six.results[1]["interface_template"]["device_type"] == 2 - - test_six.results[2]["diff"]["before"]["state"] == "absent" - - test_six.results[2]["diff"]["after"]["state"] == "present" - - test_six.results[2]["interface_template"]["device_type"] == 4 - - test_six.results[3]["diff"]["before"]["state"] == "absent" - - test_six.results[3]["diff"]["after"]["state"] == "present" - - test_six.results[3]["interface_template"]["device_type"] == 3 - - - name: 7 - Don't prevent updates to other params if tags are specified - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: issue-242 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - asset_tag: "Null" - tags: - # Changed these for issue #407 to be IDs - - 2 - - 3 - - 1 - register: test_seven - - - name: "5 - Assert added tag - Tests #242 is fixed" - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven["diff"]["after"]["asset_tag"] == "Null" - - test_seven["device"]["asset_tag"] == "Null" - - - name: Add ip address to netbox and don't assign it to a device (Issue 372) - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.255.255.1/24 - query_params: - - address - - vrf - state: present - - - name: Update same ip address to attach to a device interface (Issue 372) - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.255.255.1/24 - assigned_object: - device: test100 - name: GigabitEthernet1 - query_params: - - address - - vrf - state: present - register: query_params_372 - - - name: Assert ip address was updated and added to device interface - ansible.builtin.assert: - that: - - query_params_372 is changed - - query_params_372['msg'] == 'ip_address 10.255.255.1/24 updated' - - query_params_372['diff']['after']['assigned_object'] == 3 - - query_params_372['diff']['after']['assigned_object_id'] == 3 - - query_params_372['diff']['after']['assigned_object_type'] == 'dcim.interface' - - - name: Validate failure due to invalid child params provided by user - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: test100 - name: GigabitEthernet1 - termination_b_type: circuits.circuittermination - termination_b: - name: XYZ987 - ignore_errors: true - register: test_results - - - name: "Issue #415 - Assert failure message shows the allowed params and what the user provided" - ansible.builtin.assert: - that: - - test_results is failed - - 'test_results["msg"] == "One or more of the kwargs provided are invalid for circuits.circuittermination, provided kwargs: name. Acceptable kwargs: circuit, - term_side"' - - - name: "Issue #432 - Make sure same IPs get assigned to different device interfaces" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: "{{ item }}" - loop: "{{ data }}" - register: test_results - vars: - data: - - address: 121.121.121.121/32 - assigned_object: - device: Test Nexus One - name: Ethernet1/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 121.121.121.121/32 - assigned_object: - device: Test Nexus Child One - name: Ethernet2/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 1.121.121.121/32 - assigned_object: - device: Test Nexus One - name: Ethernet1/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - address: 1.121.121.121/32 - assigned_object: - device: Test Nexus Child One - name: Ethernet2/1 - description: ansible-netbox-1.2.1 - dns_name: ansible-netbox-1.2.1 - role: HSRP - status: Active - - - name: "ASSERT Issue #432 changes reflect correct device" - ansible.builtin.assert: - that: - - test_results | community.general.json_query('results[?ip_address.address==`1.121.121.121/32`]') | length == 2 - - test_results | community.general.json_query('results[?ip_address.address==`121.121.121.121/32`]') | length == 2 - - - name: "Issue #958 - Make sure we can add same location with different sites" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Office Building - site: "{{ item }}" - loop: - - Test Site - - Test Site2 - register: test_results - - - name: "ASSERT ISSUE #957 - Location has different IDs" - ansible.builtin.assert: - that: - - test_results.results.0.location.id != test_results.results.1.location.id diff --git a/tests/integration/targets/regression-v3.5/tasks/main.yml b/tests/integration/targets/regression-v4.2/tasks/main.yml similarity index 100% rename from tests/integration/targets/regression-v3.5/tasks/main.yml rename to tests/integration/targets/regression-v4.2/tasks/main.yml diff --git a/tests/integration/targets/v3.5/tasks/main.yml b/tests/integration/targets/v3.5/tasks/main.yml deleted file mode 100644 index 5861669cb..000000000 --- a/tests/integration/targets/v3.5/tasks/main.yml +++ /dev/null @@ -1,307 +0,0 @@ ---- -- name: NETBOX_DEVICE TESTS - ansible.builtin.include_tasks: netbox_device.yml - -- name: NETBOX_DEVICE_INTERFACE TESTS - ansible.builtin.include_tasks: netbox_device_interface.yml - -- name: NETBOX_DEVICE_INTERFACE_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_device_interface_template.yml - -- name: NETBOX_IP_ADDRESS TESTS - ansible.builtin.include_tasks: netbox_ip_address.yml - -- name: NETBOX_PREFIX TESTS - ansible.builtin.include_tasks: netbox_prefix.yml - -- name: NETBOX_SITE TESTS - ansible.builtin.include_tasks: netbox_site.yml - -- name: NETBOX_SITE_GROUP TESTS - ansible.builtin.include_tasks: netbox_site_group.yml - -- name: NETBOX_CONTACT TESTS - ansible.builtin.include_tasks: netbox_contact.yml - -- name: NETBOX_CONTACT_ROLE TESTS - ansible.builtin.include_tasks: netbox_contact_role.yml - -- name: NETBOX_TENTANT TESTS - ansible.builtin.include_tasks: netbox_tenant.yml - -- name: NETBOX_TENTANT_GROUP TESTS - ansible.builtin.include_tasks: netbox_tenant_group.yml - -- name: NETBOX_RACK TESTS - ansible.builtin.include_tasks: netbox_rack.yml - -- name: NETBOX_RACK_ROLE TESTS - ansible.builtin.include_tasks: netbox_rack_role.yml - -- name: NETBOX_LOCATION TESTS - ansible.builtin.include_tasks: netbox_location.yml - -- name: NETBOX_MANUFACTURER TESTS - ansible.builtin.include_tasks: netbox_manufacturer.yml - -- name: NETBOX_PLATFORM TESTS - ansible.builtin.include_tasks: netbox_platform.yml - -- name: NETBOX_DEVICE_TYPE TESTS - ansible.builtin.include_tasks: netbox_device_type.yml - -- name: NETBOX_DEVICE_ROLE TESTS - ansible.builtin.include_tasks: netbox_device_role.yml - -- name: NETBOX_IPAM_ROLE TESTS - ansible.builtin.include_tasks: netbox_ipam_role.yml - -- name: NETBOX_VLAN_GROUP TESTS - ansible.builtin.include_tasks: netbox_vlan_group.yml - -- name: NETBOX_VLAN TESTS - ansible.builtin.include_tasks: netbox_vlan.yml - -- name: NETBOX_VRF TESTS - ansible.builtin.include_tasks: netbox_vrf.yml - -- name: NETBOX_RIR TESTS - ansible.builtin.include_tasks: netbox_rir.yml - -- name: NETBOX_AGGREGATE TESTS - ansible.builtin.include_tasks: netbox_aggregate.yml - -- name: NETBOX_REGION TESTS - ansible.builtin.include_tasks: netbox_region.yml - -- name: NETBOX_DEVICE_BAY TESTS - ansible.builtin.include_tasks: netbox_device_bay.yml - -- name: NETBOX_DEVICE_BAY_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_device_bay_template.yml - -- name: NETBOX_INVENTORY_ITEM TESTS - ansible.builtin.include_tasks: netbox_inventory_item.yml - -- name: NETBOX_VIRTUAL_MACHINE TESTS - ansible.builtin.include_tasks: netbox_virtual_machine.yml - -- name: NETBOX_CLUSTER TESTS - ansible.builtin.include_tasks: netbox_cluster.yml - -- name: NETBOX_CLUSTER_GROUP TESTS - ansible.builtin.include_tasks: netbox_cluster_group.yml - -- name: NETBOX_CLUSTER_TYPE TESTS - ansible.builtin.include_tasks: netbox_cluster_type.yml - -- name: NETBOX_VM_INTERFACE TESTS - ansible.builtin.include_tasks: netbox_vm_interface.yml - -- name: NETBOX_PROVIDER TESTS - ansible.builtin.include_tasks: netbox_provider.yml - -- name: NETBOX_PROVIDER_NETWORK TESTS - ansible.builtin.include_tasks: netbox_provider_network.yml - -- name: NETBOX_CIRCUIT_TYPE TESTS - ansible.builtin.include_tasks: netbox_circuit_type.yml - -- name: NETBOX_CIRCUIT TESTS - ansible.builtin.include_tasks: netbox_circuit.yml - -- name: NETBOX_CIRCUIT_TERMINATION TESTS - ansible.builtin.include_tasks: netbox_circuit_termination.yml - -- name: NETBOX_REAR_PORT TESTS - ansible.builtin.include_tasks: netbox_rear_port.yml - -- name: NETBOX_REAR_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_rear_port_template.yml - -- name: NETBOX_FRONT_PORT TESTS - ansible.builtin.include_tasks: netbox_front_port.yml - -- name: NETBOX_FRONT_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_front_port_template.yml - -- name: NETBOX_CONSOLE_PORT TESTS - ansible.builtin.include_tasks: netbox_console_port.yml - -- name: NETBOX_CONSOLE_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_console_port_template.yml - -- name: NETBOX_CONSOLE_SERVER_PORT TESTS - ansible.builtin.include_tasks: netbox_console_server_port.yml - -- name: NETBOX_CONSOLE_SERVER_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_console_server_port_template.yml - -- name: NETBOX_POWER_PANEL TESTS - ansible.builtin.include_tasks: netbox_power_panel.yml - -- name: NETBOX_POWER_FEED TESTS - ansible.builtin.include_tasks: netbox_power_feed.yml - -- name: NETBOX_POWER_PORT TESTS - ansible.builtin.include_tasks: netbox_power_port.yml - -- name: NETBOX_POWER_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_power_port_template.yml - -- name: NETBOX_POWER_OUTLET TESTS - ansible.builtin.include_tasks: netbox_power_outlet.yml - -- name: NETBOX_POWER_OUTLET_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_power_outlet_template.yml - -- name: NETBOX_VIRTUAL_CHASSIS TESTS - ansible.builtin.include_tasks: netbox_virtual_chassis.yml - -# Module has to be updated for 3.3 -# - name: "NETBOX_CABLE TESTS" -# include_tasks: "netbox_cable.yml" - -- name: NETBOX_SERVICE TESTS - ansible.builtin.include_tasks: netbox_service.yml - -- name: NETBOX_LOOKUP TESTS - ansible.builtin.include_tasks: netbox_lookup.yml - -- name: NETBOX_TAG_TESTS - ansible.builtin.include_tasks: netbox_tag.yml - -- name: NETBOX_ROUTE_TARGET_TESTS - ansible.builtin.include_tasks: netbox_route_target.yml - -- name: NETBOX_WIRELESS_LAN TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_lan.yml - apply: - tags: - - netbox_wireless_lan - tags: - - netbox_wireless_lan - -- name: NETBOX_WIRELESS_LAN_GROUP TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_lan_group.yml - apply: - tags: - - netbox_wireless_lan_group - tags: - - netbox_wireless_lan_group - -- name: NETBOX_WIRELESS_LINK TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_link.yml - apply: - tags: - - netbox_wireless_link - tags: - - netbox_wireless_link - -- name: NETBOX_CUSTOM_FIELD TESTS - ansible.builtin.include_tasks: - file: netbox_custom_field.yml - apply: - tags: - - netbox_custom_field - tags: - - netbox_custom_field - -- name: NETBOX_CUSTOM_LINK TESTS - ansible.builtin.include_tasks: - file: netbox_custom_link.yml - apply: - tags: - - netbox_custom_link - tags: - - netbox_custom_link - -- name: NETBOX_EXPORT_TEMPLATE TESTS - ansible.builtin.include_tasks: - file: netbox_export_template.yml - apply: - tags: - - netbox_export_template - tags: - - netbox_export_template - -- name: NETBOX_WEBHOOK TESTS - ansible.builtin.include_tasks: - file: netbox_webhook.yml - apply: - tags: - - netbox_webhook - tags: - - netbox_webhook - -- name: NETBOX_L2VPN TESTS - ansible.builtin.include_tasks: - file: netbox_l2vpn.yml - apply: - tags: - - netbox_l2vpn - tags: - - netbox_l2vpn - -- name: NETBOX_L2VPN_TERMINATION TESTS - ansible.builtin.include_tasks: - file: netbox_l2vpn_termination.yml - apply: - tags: - - netbox_l2vpn_termination - tags: - - netbox_l2vpn_termination - -- name: NETBOX_INVENTORY_ITEM_ROLE TESTS - ansible.builtin.include_tasks: - file: netbox_inventory_item_role.yml - apply: - tags: - - netbox_inventory_item_role - tags: - - netbox_inventory_item_role - -- name: NETBOX_MODULE_TYPE TESTS - ansible.builtin.include_tasks: - file: netbox_module_type.yml - apply: - tags: - - netbox_module_type - tags: - - netbox_module_type - -- name: NETBOX_SERVICE_TEMPLATE TESTS - ansible.builtin.include_tasks: - file: netbox_service_template.yml - apply: - tags: - - netbox_service_template - tags: - - netbox_service_template - -- name: NETBOX_ASN TESTS - ansible.builtin.include_tasks: netbox_asn.yml - -- name: NETBOX_FHRP_GROUP TESTS - ansible.builtin.include_tasks: netbox_fhrp_group.yml - -- name: NETBOX_JOURNAL_ENTRY TESTS - ansible.builtin.include_tasks: - file: netbox_journal_entry.yml - apply: - tags: - - netbox_journal_entry - tags: - - netbox_journal_entry - -- name: NETBOX_FHRP_GROUP_ASSIGNMENT TESTS - ansible.builtin.include_tasks: - file: netbox_fhrp_group_assignment.yml - apply: - tags: - - netbox_fhrp_group_assignmen - tags: - - netbox_fhrp_group_assignmen diff --git a/tests/integration/targets/v3.5/tasks/netbox_custom_field.yml b/tests/integration/targets/v3.5/tasks/netbox_custom_field.yml deleted file mode 100644 index a4ec68866..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_custom_field.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -## -## -### NETBOX_CUSTOM_FIELD -## -## -- name: "CUSTOM_FIELD 1: Necessary info creation" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - type: text - state: present - register: test_one - -- name: "CUSTOM_FIELD 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['custom_field']['name'] == "A_CustomField" - - test_one['custom_field']['required'] == false - - test_one['custom_field']['content_types'] == ["dcim.device"] - - test_one['custom_field']['type'] == "text" - - test_one['custom_field']['weight'] == 100 - - test_one['msg'] == "custom_field A_CustomField created" - -- name: "CUSTOM_FIELD 2: Create duplicate" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - state: present - register: test_two - -- name: "CUSTOM_FIELD 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['custom_field']['name'] == "A_CustomField" - - test_two['msg'] == "custom_field A_CustomField already exists" - -- name: "CUSTOM_FIELD 3: Update data and make it required" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - description: Added a description - required: true - state: present - register: test_three - -- name: "CUSTOM_FIELD 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Added a description" - - test_three['diff']['after']['required'] == true - - test_three['custom_field']['name'] == "A_CustomField" - - test_three['msg'] == "custom_field A_CustomField updated" - -- name: "CUSTOM_FIELD 4: Change content type" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: A_CustomField - description: Added a description - required: true - state: present - register: test_four - -- name: "CUSTOM_FIELD 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['custom_field']['name'] == "A_CustomField" - - test_four['msg'] == "custom_field A_CustomField updated" - -- name: "CUSTOM_FIELD 5: Delete" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_CustomField - state: absent - register: test_five - -- name: "CUSTOM_FIELD 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['custom_field']['name'] == "A_CustomField" - - test_five['msg'] == "custom_field A_CustomField deleted" - -- name: "CUSTOM_FIELD 6: UI Visibility (hidden-ifunset)" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - type: text - ui_visibility: hidden-ifunset - state: present - register: test_six - -- name: "CUSTOM_FIELD 6: UI Visibility (hidden-ifunset)" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['custom_field']['name'] == "A_CustomField" - - test_six['custom_field']['ui_visibility'] == "hidden-ifunset" diff --git a/tests/integration/targets/v3.5/tasks/netbox_device.yml b/tests/integration/targets/v3.5/tasks/netbox_device.yml deleted file mode 100644 index a3a5d8308..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_device.yml +++ /dev/null @@ -1,243 +0,0 @@ ---- -## -## -### NETBOX_DEVICE -## -## -- name: 1 - Device with required information - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: - id: "1" - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['device']['name'] == "R1" - - test_one['device']['device_role'] == 1 - - test_one['device']['device_type'] == 1 - - test_one['device']['site'] == 1 - - test_one['device']['status'] == "staged" - - test_one['device']['name'] == "R1" - - test_one['msg'] == "device R1 created" - -- name: 2 - Duplicate device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device']['name'] == "R1" - - test_two['device']['device_role'] == 1 - - test_two['device']['device_type'] == 1 - - test_two['device']['site'] == 1 - - test_two['device']['status'] == "staged" - - test_two['msg'] == "device R1 already exists" - -- name: 3 - Update device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - serial: FXS1001 - local_context_data: - bgp_as: "65412" - virtual_chassis: VC1 - vc_position: 3 - vc_priority: 15 - location: Test Rack Group - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['serial'] == "FXS1001" - - test_three['diff']['after']['local_context_data']["bgp_as"] == "65412" - - test_three['diff']['after']['virtual_chassis'] == 1 - - test_three['diff']['after']['vc_position'] == 3 - - test_three['diff']['after']['vc_priority'] == 15 - - test_three['device']['name'] == "R1" - - test_three['device']['device_role'] == 1 - - test_three['device']['device_type'] == 1 - - test_three['device']['site'] == 1 - - test_three['device']['status'] == "staged" - - test_three['device']['serial'] == "FXS1001" - - test_three['device']['local_context_data']["bgp_as"] == "65412" - - test_three['device']['virtual_chassis'] == 1 - - test_three['device']['vc_position'] == 3 - - test_three['device']['vc_priority'] == 15 - - test_three['device']['location'] == 1 - - test_three['msg'] == "device R1 updated" - -- name: 3.1 - Update device name using query_params - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1-changed-name - serial: FXS1001 - query_params: - - serial - state: present - register: test_three_dot_one - -- name: 3.1 - ASSERT - ansible.builtin.assert: - that: - - test_three_dot_one is changed - - test_three_dot_one['diff']['after']['name'] == "R1-changed-name" - - test_three_dot_one['device']['device_role'] == 1 - - test_three_dot_one['device']['device_type'] == 1 - - test_three_dot_one['device']['site'] == 1 - - test_three_dot_one['device']['status'] == "staged" - - test_three_dot_one['device']['serial'] == "FXS1001" - - test_three_dot_one['device']['local_context_data']["bgp_as"] == "65412" - - test_three_dot_one['msg'] == "device R1-changed-name updated" - -- name: 4 - Create device with tags and assign to rack - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: TestR1 - device_type: "1841" - device_role: Core Switch - site: Test Site2 - rack: Test Rack Site 2 - position: 35.5 - face: Front - tags: - - schnozzberry - tenant: Test Tenant - asset_tag: "1234" - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['device']['name'] == "TestR1" - - test_four['device']['device_role'] == 1 - - test_four['device']['device_type'] == 5 - - test_four['device']['site'] == 2 - - test_four['device']['status'] == "active" - - test_four['device']['rack'] == 1 - - test_four['device']['tags'][0] == 4 - - test_four['device']['tenant'] == 1 - - test_four['device']['asset_tag'] == '1234' - - test_four['msg'] == "device TestR1 created" - -- name: 5 - Delete previous device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: TestR1 - state: absent - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "device TestR1 deleted" - -- name: 6 - Delete R1 - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1-changed-name - state: absent - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "present" - - test_six['diff']['after']['state'] == "absent" - - test_six['msg'] == "device R1-changed-name deleted" - -- name: 7 - Add primary_ip4/6 to test100 - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test100 - primary_ip4: 172.16.180.1/24 - primary_ip6: 2001::1:1/64 - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['after']['primary_ip4'] == 1 - - test_seven['diff']['after']['primary_ip6'] == 2 - - test_seven['device']['name'] == "test100" - - test_seven['device']['device_role'] == 1 - - test_seven['device']['device_type'] == 1 - - test_seven['device']['site'] == 1 - - test_seven['device']['status'] == "active" - - test_seven['device']['primary_ip4'] == 1 - - test_seven['device']['primary_ip6'] == 2 - - test_seven['msg'] == "device test100 updated" - -- name: 8 - Device with empty string name - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: "" - device_type: - id: 1 - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == 'absent' - - test_eight['diff']['after']['state'] == 'present' - - test_eight['device']['device_role'] == 1 - - test_eight['device']['device_type'] == 1 - - test_eight['device']['site'] == 1 - - test_eight['device']['status'] == "staged" - - "'-' in test_eight['device']['name']" - - test_eight['device']['name'] | length == 36 diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_interface.yml b/tests/integration/targets/v3.5/tasks/netbox_device_interface.yml deleted file mode 100644 index 57732ef4f..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_device_interface.yml +++ /dev/null @@ -1,313 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_INTERFACE -## -## -- name: 1 - Interface with required information - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - type: 1000Base-T (1GE) - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['msg'] == "interface GigabitEthernet3 created" - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['interface']['name'] == "GigabitEthernet3" - - test_one['interface']['device'] == 1 - -- name: 2 - Update test100 - GigabitEthernet3 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - mtu: 1600 - enabled: false - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "interface GigabitEthernet3 updated" - - test_two['diff']['after']['enabled'] == false - - test_two['diff']['after']['mtu'] == 1600 - - test_two['interface']['name'] == "GigabitEthernet3" - - test_two['interface']['device'] == 1 - - test_two['interface']['enabled'] == false - - test_two['interface']['mtu'] == 1600 - -- name: 3 - Delete interface test100 - GigabitEthernet3 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['msg'] == "interface GigabitEthernet3 deleted" - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - -- name: 4 - Create LAG with several specified options - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: port-channel1 - type: Link Aggregation Group (LAG) - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['msg'] == "interface port-channel1 created" - - test_four['diff']['before']['state'] == 'absent' - - test_four['diff']['after']['state'] == 'present' - - test_four['interface']['name'] == "port-channel1" - - test_four['interface']['device'] == 1 - - test_four['interface']['enabled'] == true - - test_four['interface']['type'] == "lag" - - test_four['interface']['mgmt_only'] == false - - test_four['interface']['mode'] == "access" - - test_four['interface']['mtu'] == 1600 - -- name: 5 - Create interface and assign it to parent LAG - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - enabled: false - type: 1000Base-T (1GE) - lag: - name: port-channel1 - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['msg'] == "interface GigabitEthernet3 created" - - test_five['diff']['before']['state'] == 'absent' - - test_five['diff']['after']['state'] == 'present' - - test_five['interface']['name'] == "GigabitEthernet3" - - test_five['interface']['device'] == 1 - - test_five['interface']['enabled'] == false - - test_five['interface']['type'] == "1000base-t" - - test_five['interface']['mgmt_only'] == false - - test_five['interface']['lag'] == 10 - - test_five['interface']['mode'] == "access" - - test_five['interface']['mtu'] == 1600 - -- name: 6 - Create interface as trunk port - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet21 - enabled: false - type: 1000Base-T (1GE) - untagged_vlan: - name: Wireless - site: Test Site - tagged_vlans: - - name: Data - site: Test Site - - name: VoIP - site: Test Site - mtu: 1600 - mgmt_only: true - mode: Tagged - state: present - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['msg'] == "interface GigabitEthernet21 created" - - test_six['diff']['before']['state'] == 'absent' - - test_six['diff']['after']['state'] == 'present' - - test_six['interface']['name'] == "GigabitEthernet21" - - test_six['interface']['device'] == 1 - - test_six['interface']['enabled'] == false - - test_six['interface']['type'] == "1000base-t" - - test_six['interface']['mgmt_only'] == true - - test_six['interface']['mode'] == "tagged" - - test_six['interface']['mtu'] == 1600 - - test_six['interface']['tagged_vlans'] == [2, 3] - - test_six['interface']['untagged_vlan'] == 1 - -- name: 7 - Duplicate Interface - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet1 - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - not test_seven['changed'] - - test_seven['msg'] == "interface GigabitEthernet1 already exists" - - test_seven['interface']['name'] == "GigabitEthernet1" - - test_seven['interface']['device'] == 1 - -- name: Add port-channel1 to R1 to test finding proper port-channel1 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: R1-Device - name: port-channel1 - type: Link Aggregation Group (LAG) - -- name: 8 - Create interface and assign it to parent LAG - non dict - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet4 - enabled: false - type: 1000Base-T (1GE) - lag: port-channel1 - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['msg'] == "interface GigabitEthernet4 created" - - test_eight['diff']['before']['state'] == 'absent' - - test_eight['diff']['after']['state'] == 'present' - - test_eight['interface']['name'] == "GigabitEthernet4" - - test_eight['interface']['device'] == 1 - - test_eight['interface']['enabled'] == false - - test_eight['interface']['type'] == "1000base-t" - - test_eight['interface']['mgmt_only'] == false - - test_eight['interface']['lag'] == 10 - - test_eight['interface']['mode'] == "access" - - test_eight['interface']['mtu'] == 1600 - -- name: 9 - Create interface on VC child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus Child One - name: Ethernet2/2 - type: 1000Base-T (1GE) - state: present - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['msg'] == "interface Ethernet2/2 created" - - test_nine['diff']['before']['state'] == 'absent' - - test_nine['diff']['after']['state'] == 'present' - - test_nine['interface']['name'] == "Ethernet2/2" - - test_nine['interface']['device'] == 5 - - test_nine['interface']['enabled'] == true - - test_nine['interface']['type'] == "1000base-t" - -- name: 10 - Update interface on VC child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Ethernet2/2 - description: Updated child interface from parent device - update_vc_child: true - state: present - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['msg'] == "interface Ethernet2/2 updated" - - test_ten['diff']['after']['description'] == 'Updated child interface from parent device' - - test_ten['interface']['name'] == "Ethernet2/2" - - test_ten['interface']['device'] == 5 - - test_ten['interface']['enabled'] == true - - test_ten['interface']['type'] == "1000base-t" - - test_ten['interface']['description'] == 'Updated child interface from parent device' - -- name: 11 - Update interface on VC child w/o update_vc_child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Ethernet2/2 - description: Updated child interface from parent device - test - state: present - ignore_errors: true - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is failed - - test_eleven['msg'] == "Must set update_vc_child to True to allow child device interface modification" - -- name: 12 - Create interface and mark it as connected - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet5 - type: 1000Base-T (1GE) - mark_connected: true - register: test_twelve - -- name: 12- ASSERT - ansible.builtin.assert: - that: - - test_twelve is changed - - test_twelve['msg'] == "interface GigabitEthernet5 created" - - test_twelve['diff']['before']['state'] == 'absent' - - test_twelve['diff']['after']['state'] == 'present' - - test_twelve['interface']['name'] == "GigabitEthernet5" - - test_twelve['interface']['device'] == 1 - - test_twelve['interface']['mark_connected'] == true diff --git a/tests/integration/targets/v3.5/tasks/netbox_export_template.yml b/tests/integration/targets/v3.5/tasks/netbox_export_template.yml deleted file mode 100644 index ffdc0424f..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_export_template.yml +++ /dev/null @@ -1,118 +0,0 @@ ---- -## -## -### NETBOX_EXPORT_TEMPLATE -## -## -- name: "EXPORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_one - -- name: "EXPORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['export_template']['name'] == "Example Export Template" - - test_one['export_template']['content_types'] == ["dcim.device"] - - test_one['export_template']['description'] == "Export Devices" - - test_one['msg'] == "export_template Example Export Template created" - -- name: "EXPORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_two - -- name: "EXPORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['export_template']['name'] == "Example Export Template" - - test_two['msg'] == "export_template Example Export Template already exists" - -- name: "EXPORT_TEMPLATE 3: Update data and remove as_attachment" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - as_attachment: false - state: present - register: test_three - -- name: "EXPORT_TEMPLATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['as_attachment'] == false - - test_three['export_template']['name'] == "Example Export Template" - - test_three['msg'] == "export_template Example Export Template updated" - -- name: "EXPORT_TEMPLATE 4: Change content type" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_four - -- name: "EXPORT_TEMPLATE 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['export_template']['name'] == "Example Export Template" - - test_four['msg'] == "export_template Example Export Template updated" - -- name: "EXPORT_TEMPLATE 5: Delete" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: absent - register: test_five - -- name: "EXPORT_TEMPLATE 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['export_template']['name'] == "Example Export Template" - - test_five['msg'] == "export_template Example Export Template deleted" diff --git a/tests/integration/targets/v3.5/tasks/netbox_ip_address.yml b/tests/integration/targets/v3.5/tasks/netbox_ip_address.yml deleted file mode 100644 index c73fb9dfb..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_ip_address.yml +++ /dev/null @@ -1,399 +0,0 @@ ---- -## -## -### NETBOX_IP_ADDRESS -## -## -- name: "1 - Create IP address within NetBox with only required information - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['msg'] == "ip_address 192.168.1.10/30 created" - - test_one['ip_address']['address'] == "192.168.1.10/30" - -- name: 2 - Update 192.168.1.10/30 - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - description: Updated ip address - tags: - - Updated - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['diff']['after']['description'] == "Updated ip address" - - test_two['diff']['after']['tags'][0] == 10 - - test_two['msg'] == "ip_address 192.168.1.10/30 updated" - - test_two['ip_address']['address'] == "192.168.1.10/30" - - test_two['ip_address']['tags'][0] == 10 - - test_two['ip_address']['description'] == "Updated ip address" - -- name: "3 - Delete IP - 192.168.1.10 - State: Absent" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "ip_address 192.168.1.10/30 deleted" - -- name: "4 - Create IP in global VRF - 192.168.1.20/30 - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.20/30 - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['msg'] == "ip_address 192.168.1.20/30 created" - - test_four['ip_address']['address'] == "192.168.1.20/30" - -- name: "5 - Create IP in global VRF - 192.168.1.20/30 - State: New" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.20/30 - state: new - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['msg'] == "ip_address 192.168.1.20/30 created" - - test_five['ip_address']['address'] == "192.168.1.20/30" - -- name: "6 - Create new address with only prefix specified - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 192.168.100.0/24 - state: new - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['msg'] == "ip_address 192.168.100.1/24 created" - - test_six['ip_address']['address'] == "192.168.100.1/24" - -- name: 7 - Create IP address with several specified - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 172.16.1.20/24 - vrf: Test VRF - tenant: Test Tenant - status: Reserved - role: Loopback - description: Test description - tags: - - Schnozzberry - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "absent" - - test_seven['diff']['after']['state'] == "present" - - test_seven['msg'] == "ip_address 172.16.1.20/24 created" - - test_seven['ip_address']['address'] == "172.16.1.20/24" - - test_seven['ip_address']['description'] == "Test description" - - test_seven['ip_address']['family'] == 4 - - test_seven['ip_address']['role'] == "loopback" - - test_seven['ip_address']['status'] == "reserved" - - test_seven['ip_address']['tags'][0] == 4 - - test_seven['ip_address']['tenant'] == 1 - - test_seven['ip_address']['vrf'] == 1 - -- name: 8 - Create IP address and assign a nat_inside IP - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.1.30/16 - vrf: Test VRF - nat_inside: - address: 172.16.1.20 - vrf: Test VRF - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "absent" - - test_eight['diff']['after']['state'] == "present" - - test_eight['msg'] == "ip_address 10.10.1.30/16 created" - - test_eight['ip_address']['address'] == "10.10.1.30/16" - - test_eight['ip_address']['family'] == 4 - - test_eight['ip_address'].get('nat_inside') - - test_eight['ip_address']['vrf'] == 1 - -- name: "9 - Create IP address on GigabitEthernet2 - test100 - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.200.30/16 - assigned_object: - name: GigabitEthernet2 - device: test100 - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "absent" - - test_nine['diff']['after']['state'] == "present" - - test_nine['msg'] == "ip_address 10.10.200.30/16 created" - - test_nine['ip_address']['address'] == "10.10.200.30/16" - - test_nine['ip_address']['family'] == 4 - - test_nine['ip_address']['assigned_object_type'] == "dcim.interface" - - test_nine['ip_address']['assigned_object_id'] == 4 - -- name: "10 - Create IP address on GigabitEthernet2 - test100 - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.10.0.0/16 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: new - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['diff']['before']['state'] == "absent" - - test_ten['diff']['after']['state'] == "present" - - test_ten['msg'] == "ip_address 10.10.0.1/16 created" - - test_ten['ip_address']['address'] == "10.10.0.1/16" - - test_ten['ip_address']['family'] == 4 - - test_ten['ip_address']['assigned_object_type'] == "dcim.interface" - - test_ten['ip_address']['assigned_object_id'] == 4 - -- name: "11 - Create IP address on GigabitEthernet2 - test100 - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 192.168.100.0/24 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: present - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is changed - - test_eleven['diff']['before']['state'] == "absent" - - test_eleven['diff']['after']['state'] == "present" - - test_eleven['msg'] == "ip_address 192.168.100.2/24 created" - - test_eleven['ip_address']['address'] == "192.168.100.2/24" - -- name: 12 - Duplicate - 192.168.100.2/24 on interface - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.100.2/24 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: present - register: test_twelve - -- name: 12 - ASSERT - ansible.builtin.assert: - that: - - not test_twelve['changed'] - - test_twelve['msg'] == "ip_address 192.168.100.2/24 already exists" - - test_twelve['ip_address']['address'] == "192.168.100.2/24" - - test_twelve['ip_address']['assigned_object_type'] == "dcim.interface" - - test_twelve['ip_address']['assigned_object_id'] == 4 - -- name: 13 - Duplicate - 192.168.100.2/24 - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.100.2/24 - state: present - register: test_thirteen - -- name: 13 - ASSERT - ansible.builtin.assert: - that: - - not test_thirteen['changed'] - - test_thirteen['msg'] == "ip_address 192.168.100.2/24 already exists" - - test_thirteen['ip_address']['address'] == "192.168.100.2/24" - -- name: "14 - Create IP address on Eth0 - test100-vm - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.188.1.100/24 - assigned_object: - name: Eth0 - virtual_machine: test100-vm - register: test_fourteen - -- name: 14 - ASSERT - ansible.builtin.assert: - that: - - test_fourteen is changed - - test_fourteen['diff']['before']['state'] == "absent" - - test_fourteen['diff']['after']['state'] == "present" - - test_fourteen['msg'] == "ip_address 10.188.1.100/24 created" - - test_fourteen['ip_address']['address'] == "10.188.1.100/24" - - test_fourteen['ip_address']['family'] == 4 - - test_fourteen['ip_address']['assigned_object_type'] == "virtualization.vminterface" - - test_fourteen['ip_address']['assigned_object_id'] == 1 - -- name: "15 - Create same IP address on Eth0 - test101-vm - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.188.1.100/24 - assigned_object: - name: Eth0 - virtual_machine: test101-vm - state: present - register: test_fifteen - -- name: 15 - ASSERT - ansible.builtin.assert: - that: - - test_fifteen is changed - - test_fifteen['diff']['before']['state'] == "absent" - - test_fifteen['diff']['after']['state'] == "present" - - test_fifteen['msg'] == "ip_address 10.188.1.100/24 created" - - test_fifteen['ip_address']['address'] == "10.188.1.100/24" - - test_fifteen['ip_address']['family'] == 4 - - test_fifteen['ip_address']['assigned_object_type'] == "virtualization.vminterface" - - test_fifteen['ip_address']['assigned_object_id'] == 6 - -- name: "16 - Create IP address with no mask - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.120.10.1 - state: present - register: test_sixteen - -- name: 16 - ASSERT - ansible.builtin.assert: - that: - - test_sixteen is changed - - test_sixteen['diff']['before']['state'] == "absent" - - test_sixteen['diff']['after']['state'] == "present" - - test_sixteen['msg'] == "ip_address 10.120.10.1/32 created" - - test_sixteen['ip_address']['address'] == "10.120.10.1/32" - -- name: "17 - Create IP address on GigabitEthernet2 - test100 with interface value - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.200.31/16 - interface: - device: test100 - name: GigabitEthernet2 - register: test_seventeen - -- name: 17 - ASSERT - ansible.builtin.assert: - that: - - test_seventeen is changed - - test_seventeen['diff']['before']['state'] == "absent" - - test_seventeen['diff']['after']['state'] == "present" - - test_seventeen['msg'] == "ip_address 10.10.200.31/16 created" - - test_seventeen['ip_address']['address'] == "10.10.200.31/16" - - test_seventeen['ip_address']['family'] == 4 - - test_seventeen['ip_address']['assigned_object_type'] == "dcim.interface" - - test_seventeen['ip_address']['assigned_object_id'] == 4 - -- name: "18 - Create IP address on GigabitEthernet2 - test100 with interface value - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.10.0.0/16 - interface: - name: GigabitEthernet2 - device: test100 - state: new - register: test_eighteen - -- name: 18 - ASSERT - ansible.builtin.assert: - that: - - test_eighteen is changed - - test_eighteen['diff']['before']['state'] == "absent" - - test_eighteen['diff']['after']['state'] == "present" - - test_eighteen['msg'] == "ip_address 10.10.0.2/16 created" - - test_eighteen['ip_address']['address'] == "10.10.0.2/16" - - test_eighteen['ip_address']['family'] == 4 - - test_eighteen['ip_address']['assigned_object_type'] == "dcim.interface" - - test_eighteen['ip_address']['assigned_object_id'] == 4 diff --git a/tests/integration/targets/v3.5/tasks/netbox_platform.yml b/tests/integration/targets/v3.5/tasks/netbox_platform.yml deleted file mode 100644 index fd4988724..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_platform.yml +++ /dev/null @@ -1,99 +0,0 @@ ---- -## -## -### NETBOX_PLATFORM -## -## -- name: "PLATFORM 1: Necessary info creation" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: present - register: test_one - -- name: "PLATFORM 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['platform']['name'] == "Test Platform" - - test_one['platform']['slug'] == "test-platform" - - test_one['msg'] == "platform Test Platform created" - -- name: "PLATFORM 2: Create duplicate" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: present - register: test_two - -- name: "PLATFORM 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['platform']['name'] == "Test Platform" - - test_two['platform']['slug'] == "test-platform" - - test_two['msg'] == "platform Test Platform already exists" - -- name: "PLATFORM 3: ASSERT - Update" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - manufacturer: Test Manufacturer - napalm_driver: ios - napalm_args: - global_delay_factor: 2 - state: present - register: test_three - -- name: "PLATFORM 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['manufacturer'] == 3 - - test_three['diff']['after']['napalm_args']['global_delay_factor'] == 2 - - test_three['diff']['after']['napalm_driver'] == "ios" - - test_three['platform']['manufacturer'] == 3 - - test_three['platform']['napalm_args']['global_delay_factor'] == 2 - - test_three['platform']['napalm_driver'] == "ios" - - test_three['msg'] == "platform Test Platform updated" - -- name: "PLATFORM 4: ASSERT - Delete" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: absent - register: test_four - -- name: "PLATFORM 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "platform Test Platform deleted" - -- name: "PLATFORM 5: ASSERT - Delete non existing" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: absent - register: test_five - -- name: "PLATFORM 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['platform'] == None - - test_five['msg'] == "platform Test Platform already absent" diff --git a/tests/integration/targets/v3.5/tasks/netbox_rack.yml b/tests/integration/targets/v3.5/tasks/netbox_rack.yml deleted file mode 100644 index b8390df47..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_rack.yml +++ /dev/null @@ -1,226 +0,0 @@ ---- -## -## -### NETBOX_RACK -## -## -- name: 1 - Test rack creation - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - location: Test Rack Group - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack']['name'] == "Test rack one" - - test_one['rack']['site'] == 1 - -- name: Test duplicate rack - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack']['name'] == "Test rack one" - - test_two['rack']['site'] == 1 - - test_two['msg'] == "rack Test rack one already exists" - -- name: 3 - Create new rack with similar name - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack - Test Site - site: Test Site - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['rack']['name'] == "Test rack - Test Site" - - test_three['rack']['site'] == 1 - - test_three['msg'] == "rack Test rack - Test Site created" - -- name: 4 - Attempt to create Test rack one again - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - location: Test Rack Group - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - not test_four['changed'] - - test_four['rack']['name'] == "Test rack one" - - test_four['rack']['site'] == 1 - - test_four['msg'] == "rack Test rack one already exists" - -- name: 5 - Update Test rack one with more options - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - rack_role: Test Rack Role - location: Test Rack Group - facility_id: EQUI10291 - tenant: Test Tenant - status: Available - serial: FXS10001 - asset_tag: "1234" - width: 23 - u_height: 48 - type: 2-post frame - outer_width: 32 - outer_depth: 24 - outer_unit: Inches - comments: Just testing rack module - tags: - - Schnozzberry - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['asset_tag'] == "1234" - - test_five['diff']['after']['comments'] == "Just testing rack module" - - test_five['diff']['after']['facility_id'] == "EQUI10291" - - test_five['diff']['after']['outer_depth'] == 24 - - test_five['diff']['after']['outer_unit'] == "in" - - test_five['diff']['after']['outer_width'] == 32 - - test_five['diff']['after']['role'] == 1 - - test_five['diff']['after']['serial'] == "FXS10001" - - test_five['diff']['after']['status'] == "available" - - test_five['diff']['after']['tenant'] == 1 - - test_five['diff']['after']['tags'][0] == 4 - - test_five['diff']['after']['type'] == "2-post-frame" - - test_five['diff']['after']['u_height'] == 48 - - test_five['diff']['after']['width'] == 23 - - test_five['rack']['name'] == "Test rack one" - - test_five['rack']['site'] == 1 - - test_five['rack']['asset_tag'] == "1234" - - test_five['rack']['comments'] == "Just testing rack module" - - test_five['rack']['facility_id'] == "EQUI10291" - - test_five['rack']['location'] == 1 - - test_five['rack']['outer_depth'] == 24 - - test_five['rack']['outer_unit'] == "in" - - test_five['rack']['outer_width'] == 32 - - test_five['rack']['role'] == 1 - - test_five['rack']['serial'] == "FXS10001" - - test_five['rack']['status'] == "available" - - test_five['rack']['tenant'] == 1 - - test_five['rack']['tags'][0] == 4 - - test_five['rack']['type'] == "2-post-frame" - - test_five['rack']['u_height'] == 48 - - test_five['rack']['width'] == 23 - - test_five['msg'] == "rack Test rack one updated" - -- name: 6 - Update Test rack one with same options - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - rack_role: Test Rack Role - location: Test Rack Group - facility_id: EQUI10291 - tenant: Test Tenant - status: Available - serial: FXS10001 - asset_tag: "1234" - width: 23 - u_height: 48 - type: 2-post frame - outer_width: 32 - outer_depth: 24 - outer_unit: Inches - comments: Just testing rack module - tags: - - Schnozzberry - state: present - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is not changed - - test_six['rack']['name'] == "Test rack one" - - test_six['rack']['site'] == 1 - - test_six['rack']['asset_tag'] == "1234" - - test_six['rack']['comments'] == "Just testing rack module" - - test_six['rack']['facility_id'] == "EQUI10291" - - test_six['rack']['location'] == 1 - - test_six['rack']['outer_depth'] == 24 - - test_six['rack']['outer_unit'] == "in" - - test_six['rack']['outer_width'] == 32 - - test_six['rack']['role'] == 1 - - test_six['rack']['serial'] == "FXS10001" - - test_six['rack']['status'] == "available" - - test_six['rack']['tenant'] == 1 - - test_six['rack']['tags'][0] == 4 - - test_six['rack']['type'] == "2-post-frame" - - test_six['rack']['u_height'] == 48 - - test_six['rack']['width'] == 23 - -- name: 7 - Create rack with same asset tag and serial number - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack two - site: Test Site - serial: FXS10001 - asset_tag: "1234" - state: present - ignore_errors: true - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is failed - - "'Asset tag already exists' in test_seven['msg']" - -- name: 8 - Test delete - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - state: absent - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "present" - - test_eight['diff']['after']['state'] == "absent" - - test_eight['msg'] == "rack Test rack one deleted" diff --git a/tests/integration/targets/v3.5/tasks/netbox_virtual_machine.yml b/tests/integration/targets/v3.5/tasks/netbox_virtual_machine.yml deleted file mode 100644 index 3fb0e4319..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_virtual_machine.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -## -## -### NETBOX_VIRTUAL_MACHINES -## -## -- name: "VIRTUAL_MACHINE 1: Necessary info creation" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - state: present - register: test_one - -- name: "VIRTUAL_MACHINE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['virtual_machine']['name'] == "Test VM One" - - test_one['virtual_machine']['cluster'] == 1 - - test_one['msg'] == "virtual_machine Test VM One created" - -- name: "VIRTUAL_MACHINE 2: Create duplicate" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - state: present - register: test_two - -- name: "VIRTUAL_MACHINE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['virtual_machine']['name'] == "Test VM One" - - test_two['virtual_machine']['cluster'] == 1 - - test_two['msg'] == "virtual_machine Test VM One already exists" - -- name: "VIRTUAL_MACHINE 3: Update" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - vcpus: 8.5 - memory: 8 - status: Planned - virtual_machine_role: Test VM Role - tags: - - Schnozzberry - state: present - register: test_three - -- name: "VIRTUAL_MACHINE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['vcpus'] == 8.5 - - test_three['diff']['after']['memory'] == 8 - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['role'] == 2 - - test_three['diff']['after']['tags'][0] == 4 - - test_three['virtual_machine']['name'] == "Test VM One" - - test_three['virtual_machine']['cluster'] == 1 - - test_three['virtual_machine']['vcpus'] == 8.5 - - test_three['virtual_machine']['memory'] == 8 - - test_three['virtual_machine']['status'] == "planned" - - test_three['virtual_machine']['role'] == 2 - - test_three['virtual_machine']['tags'][0] == 4 - - test_three['msg'] == "virtual_machine Test VM One updated" - -- name: "VIRTUAL_MACHINE 4: Test idempotence" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - vcpus: 8.5 - memory: 8 - status: Planned - virtual_machine_role: Test VM Role - tags: - - Schnozzberry - state: present - register: test_four_idempotence - -- name: "VIRTUAL_MACHINE 4: ASSERT - Not changed" - ansible.builtin.assert: - that: - - test_four_idempotence is not changed - - test_four_idempotence['virtual_machine']['name'] == "Test VM One" - - test_four_idempotence['virtual_machine']['cluster'] == 1 - - test_four_idempotence['virtual_machine']['vcpus'] == 8.5 - - test_four_idempotence['virtual_machine']['memory'] == 8 - - test_four_idempotence['virtual_machine']['status'] == "planned" - - test_four_idempotence['virtual_machine']['role'] == 2 - - test_four_idempotence['virtual_machine']['tags'][0] == 4 - - test_four_idempotence['msg'] == "virtual_machine Test VM One already exists" - -- name: "VIRTUAL_MACHINE 5: Delete" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - state: absent - register: test_five - -- name: "VIRTUAL_MACHINE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['virtual_machine']['name'] == "Test VM One" - - test_five['virtual_machine']['cluster'] == 1 - - test_five['virtual_machine']['vcpus'] == 8.5 - - test_five['virtual_machine']['memory'] == 8 - - test_five['virtual_machine']['status'] == "planned" - - test_five['virtual_machine']['role'] == 2 - - test_five['virtual_machine']['tags'][0] == 4 - - test_five['msg'] == "virtual_machine Test VM One deleted" diff --git a/tests/integration/targets/v3.5/tasks/netbox_vm_interface.yml b/tests/integration/targets/v3.5/tasks/netbox_vm_interface.yml deleted file mode 100644 index 653f31e0e..000000000 --- a/tests/integration/targets/v3.5/tasks/netbox_vm_interface.yml +++ /dev/null @@ -1,159 +0,0 @@ ---- -## -## -### NETBOX_VM_INTERFACE -## -## -- name: "NETBOX_VM_INTERFACE 1: Necessary info creation" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - state: present - register: test_one - -- name: "NETBOX_VM_INTERFACE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['interface']['name'] == "Eth10" - - test_one['interface']['virtual_machine'] == 1 - - test_one['msg'] == "interface Eth10 created" - -- name: "NETBOX_VM_INTERFACE 2: Create duplicate" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - state: present - register: test_two - -- name: "NETBOX_VM_INTERFACE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['interface']['name'] == "Eth10" - - test_two['interface']['virtual_machine'] == 1 - - test_two['msg'] == "interface Eth10 already exists" - -- name: "NETBOX_VM_INTERFACE 3: Updated" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - enabled: false - mtu: 9000 - mac_address: "00:00:00:AA:AA:01" - description: Updated test100-vm - mode: Tagged - # untagged_vlan: - # name: Wireless - # site: Test Site - # tagged_vlans: - # - name: Data - # site: Test Site - # - name: VoIP - # site: Test Site - tags: - - Schnozzberry - state: present - register: test_three - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['enabled'] == false - - test_three['diff']['after']['mtu'] == 9000 - - test_three['diff']['after']['mac_address'] == "00:00:00:AA:AA:01" - - test_three['diff']['after']['description'] == "Updated test100-vm" - - test_three['diff']['after']['mode'] == "tagged" - # - test_three['diff']['after']['untagged_vlan'] == 1 - # - test_three['diff']['after']['tagged_vlans'] == [2, 3] - - test_three['diff']['after']['tags'][0] == 4 - - test_three['interface']['name'] == "Eth10" - - test_three['interface']['virtual_machine'] == 1 - - test_three['interface']['enabled'] == false - - test_three['interface']['mtu'] == 9000 - - test_three['interface']['mac_address'] == "00:00:00:AA:AA:01" - - test_three['interface']['description'] == "Updated test100-vm" - - test_three['interface']['mode'] == "tagged" - # - test_three['interface']['untagged_vlan'] == 1 - # - test_three['interface']['tagged_vlans'] == [2, 3] - - test_three['interface']['tags'][0] == 4 - - test_three['msg'] == "interface Eth10 updated" - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Delete" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Eth10 - virtual_machine: test100-vm - state: absent - register: test_four - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['interface']['name'] == "Eth10" - - test_four['interface']['virtual_machine'] == 1 - - test_four['msg'] == "interface Eth10 deleted" - -- name: "NETBOX_VM_INTERFACE 5: Attempt to update interface with same name on other VMs" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth0 - enabled: false - mtu: 9000 - mac_address: "00:00:00:AA:AA:01" - description: Updated test100-vm Eth0 intf - mode: Tagged - # untagged_vlan: - # name: Wireless - # site: Test Site - # tagged_vlans: - # - name: Data - # site: Test Site - # - name: VoIP - # site: Test Site - tags: - - Schnozzberry - state: present - register: test_five - -- name: "NETBOX_VM_INTERFACE 5: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['enabled'] == false - - test_five['diff']['after']['mtu'] == 9000 - - test_five['diff']['after']['mac_address'] == "00:00:00:AA:AA:01" - - test_five['diff']['after']['description'] == "Updated test100-vm Eth0 intf" - - test_five['diff']['after']['mode'] == "tagged" - # - test_five['diff']['after']['untagged_vlan'] == 1 - # - test_five['diff']['after']['tagged_vlans'] == [2, 3] - - test_five['diff']['after']['tags'][0] == 4 - - test_five['interface']['name'] == "Eth0" - - test_five['interface']['virtual_machine'] == 1 - - test_five['interface']['enabled'] == false - - test_five['interface']['mtu'] == 9000 - - test_five['interface']['mac_address'] == "00:00:00:AA:AA:01" - - test_five['interface']['description'] == "Updated test100-vm Eth0 intf" - - test_five['interface']['mode'] == "tagged" - # - test_five['interface']['untagged_vlan'] == 1 - # - test_five['interface']['tagged_vlans'] == [2, 3] - - test_five['interface']['tags'][0] == 4 - - test_five['msg'] == "interface Eth0 updated" diff --git a/tests/integration/targets/v3.6/tasks/main.yml b/tests/integration/targets/v3.6/tasks/main.yml deleted file mode 100644 index 31e300ef3..000000000 --- a/tests/integration/targets/v3.6/tasks/main.yml +++ /dev/null @@ -1,317 +0,0 @@ ---- -- name: NETBOX_DEVICE TESTS - ansible.builtin.include_tasks: netbox_device.yml - -- name: NETBOX_DEVICE_INTERFACE TESTS - ansible.builtin.include_tasks: netbox_device_interface.yml - -- name: NETBOX_DEVICE_INTERFACE_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_device_interface_template.yml - -- name: NETBOX_IP_ADDRESS TESTS - ansible.builtin.include_tasks: netbox_ip_address.yml - -- name: NETBOX_PREFIX TESTS - ansible.builtin.include_tasks: netbox_prefix.yml - -- name: NETBOX_SITE TESTS - ansible.builtin.include_tasks: netbox_site.yml - -- name: NETBOX_SITE_GROUP TESTS - ansible.builtin.include_tasks: netbox_site_group.yml - -- name: NETBOX_CONTACT TESTS - ansible.builtin.include_tasks: netbox_contact.yml - -- name: NETBOX_CONTACT_ROLE TESTS - ansible.builtin.include_tasks: netbox_contact_role.yml - -- name: NETBOX_TENTANT TESTS - ansible.builtin.include_tasks: netbox_tenant.yml - -- name: NETBOX_TENTANT_GROUP TESTS - ansible.builtin.include_tasks: netbox_tenant_group.yml - -- name: NETBOX_RACK TESTS - ansible.builtin.include_tasks: netbox_rack.yml - -- name: NETBOX_RACK_ROLE TESTS - ansible.builtin.include_tasks: netbox_rack_role.yml - -- name: NETBOX_LOCATION TESTS - ansible.builtin.include_tasks: netbox_location.yml - -- name: NETBOX_MANUFACTURER TESTS - ansible.builtin.include_tasks: netbox_manufacturer.yml - -- name: NETBOX_PLATFORM TESTS - ansible.builtin.include_tasks: netbox_platform.yml - -- name: NETBOX_DEVICE_TYPE TESTS - ansible.builtin.include_tasks: netbox_device_type.yml - -- name: NETBOX_DEVICE_ROLE TESTS - ansible.builtin.include_tasks: netbox_device_role.yml - -- name: NETBOX_IPAM_ROLE TESTS - ansible.builtin.include_tasks: netbox_ipam_role.yml - -- name: NETBOX_VLAN_GROUP TESTS - ansible.builtin.include_tasks: netbox_vlan_group.yml - -- name: NETBOX_VLAN TESTS - ansible.builtin.include_tasks: netbox_vlan.yml - -- name: NETBOX_VRF TESTS - ansible.builtin.include_tasks: netbox_vrf.yml - -- name: NETBOX_RIR TESTS - ansible.builtin.include_tasks: netbox_rir.yml - -- name: NETBOX_AGGREGATE TESTS - ansible.builtin.include_tasks: netbox_aggregate.yml - -- name: NETBOX_REGION TESTS - ansible.builtin.include_tasks: netbox_region.yml - -- name: NETBOX_DEVICE_BAY TESTS - ansible.builtin.include_tasks: netbox_device_bay.yml - -- name: NETBOX_DEVICE_BAY_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_device_bay_template.yml - -- name: NETBOX_INVENTORY_ITEM TESTS - ansible.builtin.include_tasks: netbox_inventory_item.yml - -- name: NETBOX_VIRTUAL_MACHINE TESTS - ansible.builtin.include_tasks: netbox_virtual_machine.yml - -- name: NETBOX_CLUSTER TESTS - ansible.builtin.include_tasks: netbox_cluster.yml - -- name: NETBOX_CLUSTER_GROUP TESTS - ansible.builtin.include_tasks: netbox_cluster_group.yml - -- name: NETBOX_CLUSTER_TYPE TESTS - ansible.builtin.include_tasks: netbox_cluster_type.yml - -- name: NETBOX_VM_INTERFACE TESTS - ansible.builtin.include_tasks: netbox_vm_interface.yml - -- name: NETBOX_PROVIDER TESTS - ansible.builtin.include_tasks: netbox_provider.yml - -- name: NETBOX_PROVIDER_NETWORK TESTS - ansible.builtin.include_tasks: netbox_provider_network.yml - -- name: NETBOX_CIRCUIT_TYPE TESTS - ansible.builtin.include_tasks: netbox_circuit_type.yml - -- name: NETBOX_CIRCUIT TESTS - ansible.builtin.include_tasks: netbox_circuit.yml - -- name: NETBOX_CIRCUIT_TERMINATION TESTS - ansible.builtin.include_tasks: netbox_circuit_termination.yml - -- name: NETBOX_REAR_PORT TESTS - ansible.builtin.include_tasks: netbox_rear_port.yml - -- name: NETBOX_REAR_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_rear_port_template.yml - -- name: NETBOX_FRONT_PORT TESTS - ansible.builtin.include_tasks: netbox_front_port.yml - -- name: NETBOX_FRONT_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_front_port_template.yml - -- name: NETBOX_CONSOLE_PORT TESTS - ansible.builtin.include_tasks: netbox_console_port.yml - -- name: NETBOX_CONSOLE_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_console_port_template.yml - -- name: NETBOX_CONSOLE_SERVER_PORT TESTS - ansible.builtin.include_tasks: netbox_console_server_port.yml - -- name: NETBOX_CONSOLE_SERVER_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_console_server_port_template.yml - -- name: NETBOX_POWER_PANEL TESTS - ansible.builtin.include_tasks: netbox_power_panel.yml - -- name: NETBOX_POWER_FEED TESTS - ansible.builtin.include_tasks: netbox_power_feed.yml - -- name: NETBOX_POWER_PORT TESTS - ansible.builtin.include_tasks: netbox_power_port.yml - -- name: NETBOX_POWER_PORT_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_power_port_template.yml - -- name: NETBOX_POWER_OUTLET TESTS - ansible.builtin.include_tasks: netbox_power_outlet.yml - -- name: NETBOX_POWER_OUTLET_TEMPLATE TESTS - ansible.builtin.include_tasks: netbox_power_outlet_template.yml - -- name: NETBOX_VIRTUAL_CHASSIS TESTS - ansible.builtin.include_tasks: netbox_virtual_chassis.yml - -# Module has to be updated for 3.3 -# - name: "NETBOX_CABLE TESTS" -# include_tasks: "netbox_cable.yml" - -- name: NETBOX_SERVICE TESTS - ansible.builtin.include_tasks: netbox_service.yml - -- name: NETBOX_LOOKUP TESTS - ansible.builtin.include_tasks: netbox_lookup.yml - -- name: NETBOX_TAG_TESTS - ansible.builtin.include_tasks: netbox_tag.yml - -- name: NETBOX_ROUTE_TARGET_TESTS - ansible.builtin.include_tasks: netbox_route_target.yml - -- name: NETBOX_WIRELESS_LAN TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_lan.yml - apply: - tags: - - netbox_wireless_lan - tags: - - netbox_wireless_lan - -- name: NETBOX_WIRELESS_LAN_GROUP TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_lan_group.yml - apply: - tags: - - netbox_wireless_lan_group - tags: - - netbox_wireless_lan_group - -- name: NETBOX_WIRELESS_LINK TESTS - ansible.builtin.include_tasks: - file: netbox_wireless_link.yml - apply: - tags: - - netbox_wireless_link - tags: - - netbox_wireless_link - -- name: NETBOX_CUSTOM_FIELD TESTS - ansible.builtin.include_tasks: - file: netbox_custom_field.yml - apply: - tags: - - netbox_custom_field - tags: - - netbox_custom_field - -- name: NETBOX_CUSTOM_LINK TESTS - ansible.builtin.include_tasks: - file: netbox_custom_link.yml - apply: - tags: - - netbox_custom_link - tags: - - netbox_custom_link - -- name: NETBOX_EXPORT_TEMPLATE TESTS - ansible.builtin.include_tasks: - file: netbox_export_template.yml - apply: - tags: - - netbox_export_template - tags: - - netbox_export_template - -- name: NETBOX_WEBHOOK TESTS - ansible.builtin.include_tasks: - file: netbox_webhook.yml - apply: - tags: - - netbox_webhook - tags: - - netbox_webhook - -- name: NETBOX_L2VPN TESTS - ansible.builtin.include_tasks: - file: netbox_l2vpn.yml - apply: - tags: - - netbox_l2vpn - tags: - - netbox_l2vpn - -- name: NETBOX_L2VPN_TERMINATION TESTS - ansible.builtin.include_tasks: - file: netbox_l2vpn_termination.yml - apply: - tags: - - netbox_l2vpn_termination - tags: - - netbox_l2vpn_termination - -- name: NETBOX_INVENTORY_ITEM_ROLE TESTS - ansible.builtin.include_tasks: - file: netbox_inventory_item_role.yml - apply: - tags: - - netbox_inventory_item_role - tags: - - netbox_inventory_item_role - -- name: NETBOX_MODULE_TYPE TESTS - ansible.builtin.include_tasks: - file: netbox_module_type.yml - apply: - tags: - - netbox_module_type - tags: - - netbox_module_type - -- name: NETBOX_SERVICE_TEMPLATE TESTS - ansible.builtin.include_tasks: - file: netbox_service_template.yml - apply: - tags: - - netbox_service_template - tags: - - netbox_service_template - -- name: NETBOX_ASN TESTS - ansible.builtin.include_tasks: netbox_asn.yml - -- name: NETBOX_FHRP_GROUP TESTS - ansible.builtin.include_tasks: netbox_fhrp_group.yml - -- name: NETBOX_JOURNAL_ENTRY TESTS - ansible.builtin.include_tasks: - file: netbox_journal_entry.yml - apply: - tags: - - netbox_journal_entry - tags: - - netbox_journal_entry - -- name: NETBOX_FHRP_GROUP_ASSIGNMENT TESTS - ansible.builtin.include_tasks: - file: netbox_fhrp_group_assignment.yml - apply: - tags: - - netbox_fhrp_group_assignmen - tags: - - netbox_fhrp_group_assignmen - -- name: NETBOX_CONFIG_TEMPLATE - ansible.builtin.include_tasks: netbox_config_template.yml - tags: - - netbox_config_template - -- name: NETBOX_CUSTOM_FIELD_CHOICE_SET - ansible.builtin.include_tasks: netbox_custom_field_choice_set.yml - tags: - - netbox_custom_field_choice_set diff --git a/tests/integration/targets/v3.6/tasks/netbox_aggregate.yml b/tests/integration/targets/v3.6/tasks/netbox_aggregate.yml deleted file mode 100644 index d45b9c835..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_aggregate.yml +++ /dev/null @@ -1,115 +0,0 @@ ---- -## -## -### NETBOX_AGGEGATE -## -## -- name: "AGGREGATE 1: Necessary info creation" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - rir: Example RIR - state: present - register: test_one - -- name: "AGGREGATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['aggregate']['prefix'] == "10.0.0.0/8" - # - test_one['aggregate']['family'] == 4 - - test_one['aggregate']['rir'] == 1 - - test_one['msg'] == "aggregate 10.0.0.0/8 created" - -- name: "AGGREGATE 2: Create duplicate" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - state: present - register: test_two - -- name: "AGGREGATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['aggregate']['prefix'] == "10.0.0.0/8" - - test_two['aggregate']['family'] == 4 - - test_two['aggregate']['rir'] == 1 - - test_two['msg'] == "aggregate 10.0.0.0/8 already exists" - -- name: "AGGREGATE 3: ASSERT - Update" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - rir: Example RIR - date_added: "1989-01-18" - description: Test Description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "AGGREGATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['date_added'] == "1989-01-18" - - test_three['diff']['after']['description'] == "Test Description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['aggregate']['prefix'] == "10.0.0.0/8" - - test_three['aggregate']['family'] == 4 - - test_three['aggregate']['rir'] == 1 - - test_three['aggregate']['date_added'] == "1989-01-18" - - test_three['aggregate']['description'] == "Test Description" - - test_three['aggregate']['tags'][0] == 4 - - test_three['msg'] == "aggregate 10.0.0.0/8 updated" - -- name: "AGGREGATE 4: ASSERT - Delete" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - state: absent - register: test_four - -- name: "AGGREGATE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['aggregate']['prefix'] == "10.0.0.0/8" - - test_four['aggregate']['family'] == 4 - - test_four['aggregate']['rir'] == 1 - - test_four['aggregate']['date_added'] == "1989-01-18" - - test_four['aggregate']['description'] == "Test Description" - - test_four['aggregate']['tags'][0] == 4 - - test_four['msg'] == "aggregate 10.0.0.0/8 deleted" - -- name: "AGGREGATE 5: Necessary info creation" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 2001::/32 - rir: Example RIR - state: present - register: test_five - -- name: "AGGREGATE 5: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['aggregate']['prefix'] == "2001::/32" - # - test_five['aggregate']['family'] == 6 - - test_five['aggregate']['rir'] == 1 - - test_five['msg'] == "aggregate 2001::/32 created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_asn.yml b/tests/integration/targets/v3.6/tasks/netbox_asn.yml deleted file mode 100644 index fab4270a9..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_asn.yml +++ /dev/null @@ -1,88 +0,0 @@ ---- -## -## -### NETBOX_ASN -## -## -- name: "ASN 1: Test ASN creation" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - state: present - register: test_one - -- name: "ASN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['asn']['asn'] == 1111111111 - - test_one['asn']['rir'] == 1 - - test_one['msg'] == "asn 1111111111 created" - -- name: "ASN 2: Create duplicate" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - state: present - register: test_two - -- name: "ASN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['asn']['asn'] == 1111111111 - - test_two['asn']['rir'] == 1 - - test_two['msg'] == "asn 1111111111 already exists" - -- name: "ASN 3: Update ASN with other fields" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - tenant: Test Tenant - description: Test description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "ASN 3: ASSERT - Update ASN with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['tenant'] == 1 - - test_three['diff']['after']['description'] == "Test description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['asn']['asn'] == 1111111111 - - test_three['asn']['rir'] == 1 - - test_three['asn']['tenant'] == 1 - - test_three['asn']['description'] == "Test description" - - test_three['asn']['tags'][0] == 4 - - test_three['msg'] == "asn 1111111111 updated" - -- name: "ASN 4: ASSERT - Delete" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - state: absent - register: test_four - -- name: "ASN 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "asn 1111111111 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_cable.yml b/tests/integration/targets/v3.6/tasks/netbox_cable.yml deleted file mode 100644 index d6f0ab02e..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_cable.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CABLE -## -## -- name: "CABLE 1: Necessary info creation" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: present - register: test_one - -- name: "CABLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cable']['termination_a_type'] == "dcim.interface" - - test_one['cable']['termination_a_id'] == 15 - - test_one['cable']['termination_b_type'] == "dcim.interface" - - test_one['cable']['termination_b_id'] == 2 - - test_one['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 created" - -- name: "CABLE 2: Create duplicate" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: present - register: test_two - -- name: "CABLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cable']['termination_a_type'] == "dcim.interface" - - test_two['cable']['termination_a_id'] == 15 - - test_two['cable']['termination_b_type'] == "dcim.interface" - - test_two['cable']['termination_b_id'] == 2 - - test_two['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 already exists" - -- name: "CABLE 3: Update Cable with other fields" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - type: mmf-om4 - status: planned - label: label123 - color: abcdef - length: 30 - length_unit: m - tags: - - Schnozzberry - tenant: Test Tenant - state: present - register: test_three - -- name: "CABLE 3: ASSERT - Update Cable with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "mmf-om4" - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['label'] == "label123" - - test_three['diff']['after']['color'] == "abcdef" - - test_three['diff']['after']['length'] == 30 - - test_three['diff']['after']['length_unit'] == "m" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['diff']['after']['tenant'] == 1 - - test_three['cable']['termination_a_type'] == "dcim.interface" - - test_three['cable']['termination_a_id'] == 15 - - test_three['cable']['termination_b_type'] == "dcim.interface" - - test_three['cable']['termination_b_id'] == 2 - - test_three['cable']['type'] == "mmf-om4" - - test_three['cable']['status'] == "planned" - - test_three['cable']['label'] == "label123" - - test_three['cable']['color'] == "abcdef" - - test_three['cable']['length'] == 30 - - test_three['cable']['length_unit'] == "m" - - test_three['cable']['tags'][0] == 4 - - test_three['cable']['tenant'] == 1 - - test_three['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 updated" - -- name: "CABLE 4: ASSERT - Delete" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: absent - register: test_four - -- name: "CABLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 deleted" - -- name: "CABLE 5: Connect Console Port and Console Server Port" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.consoleserverport - termination_a: - name: Console Server Port - device: test100 - termination_b_type: dcim.consoleport - termination_b: - name: Console Port - device: test100 - state: present - register: test_five - -- name: "CABLE 5: ASSERT - Connect Console Port and Console Server Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['cable']['termination_a_type'] == "dcim.consoleserverport" - - test_five['cable']['termination_a_id'] == 1 - - test_five['cable']['termination_b_type'] == "dcim.consoleport" - - test_five['cable']['termination_b_id'] == 1 - - test_five['msg'] == "cable dcim.consoleserverport Console Server Port <> dcim.consoleport Console Port created" - -- name: "CABLE 6: Circuits Termination as side A" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: circuits.circuittermination - termination_a: - circuit: Test Circuit Two - term_side: A - termination_b_type: dcim.interface - termination_b: - device: test100 - name: GigabitEthernet2 - state: present - register: test_six - -- name: "CABLE 6: ASSERT - Circuits Termination as side A" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['cable']['termination_a_type'] == "circuits.circuittermination" - - test_six['cable']['termination_a_id'] == 1 - - test_six['cable']['termination_b_type'] == "dcim.interface" - - test_six['cable']['termination_b_id'] == 4 - - test_six['msg'] == "cable circuits.circuittermination 1 <> dcim.interface GigabitEthernet2 created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_circuit.yml b/tests/integration/targets/v3.6/tasks/netbox_circuit.yml deleted file mode 100644 index 8bfd265ac..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_circuit.yml +++ /dev/null @@ -1,109 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT -## -## -- name: "NETBOX_CIRCUIT 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - state: present - register: test_one - -- name: "NETBOX_CIRCUIT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit']['cid'] == "Test Circuit One" - - test_one['circuit']['provider'] == 1 - - test_one['circuit']['type'] == 1 - - test_one['msg'] == "circuit Test Circuit One created" - -- name: "NETBOX_CIRCUIT 2: Duplicate" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - state: present - register: test_two - -- name: "NETBOX_CIRCUIT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit']['cid'] == "Test Circuit One" - - test_two['circuit']['provider'] == 1 - - test_two['circuit']['type'] == 1 - - test_two['msg'] == "circuit Test Circuit One already exists" - -- name: "NETBOX_CIRCUIT 3: Update provider with other fields" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - status: Planned - tenant: Test Tenant - install_date: "2018-12-25" - commit_rate: 10000 - description: "Test circuit " - comments: FAST CIRCUIT - state: present - register: test_three - -- name: "NETBOX_CIRCUIT 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['tenant'] == 1 - - test_three['diff']['after']['install_date'] == "2018-12-25" - - test_three['diff']['after']['commit_rate'] == 10000 - - test_three['diff']['after']['description'] == "Test circuit" - - test_three['diff']['after']['comments'] == "FAST CIRCUIT" - - test_three['circuit']['cid'] == "Test Circuit One" - - test_three['circuit']['provider'] == 1 - - test_three['circuit']['type'] == 1 - - test_three['circuit']['status'] == "planned" - - test_three['circuit']['tenant'] == 1 - - test_three['circuit']['install_date'] == "2018-12-25" - - test_three['circuit']['commit_rate'] == 10000 - - test_three['circuit']['description'] == "Test circuit" - - test_three['circuit']['comments'] == "FAST CIRCUIT" - - test_three['msg'] == "circuit Test Circuit One updated" - -- name: "NETBOX_CIRCUIT 4: Delete provider within netbox" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - state: absent - register: test_four - -- name: "NETBOX_CIRCUIT 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['circuit']['cid'] == "Test Circuit One" - - test_four['circuit']['provider'] == 1 - - test_four['circuit']['type'] == 1 - - test_four['circuit']['status'] == "planned" - - test_four['circuit']['tenant'] == 1 - - test_four['circuit']['install_date'] == "2018-12-25" - - test_four['circuit']['commit_rate'] == 10000 - - test_four['circuit']['description'] == "Test circuit" - - test_four['circuit']['comments'] == "FAST CIRCUIT" - - test_four['msg'] == "circuit Test Circuit One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_circuit_termination.yml b/tests/integration/targets/v3.6/tasks/netbox_circuit_termination.yml deleted file mode 100644 index cbc749f63..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_circuit_termination.yml +++ /dev/null @@ -1,129 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT_TERMINATION -## -## -- name: "NETBOX_CIRCUIT_TERMINATION 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - site: Test Site - port_speed: 10000 - state: present - register: test_one - -- name: "NETBOX_CIRCUIT_TERMINATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit_termination']['circuit'] == 1 - - test_one['circuit_termination']['term_side'] == "A" - - test_one['circuit_termination']['site'] == 1 - - test_one['circuit_termination']['port_speed'] == 10000 - - test_one['msg'] == "circuit_termination test_circuit_a created" - -- name: "NETBOX_CIRCUIT_TERMINATION 2: Duplicate" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - state: present - register: test_two - -- name: "NETBOX_CIRCUIT_TERMINATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit_termination']['circuit'] == 1 - - test_two['circuit_termination']['term_side'] == "A" - - test_two['circuit_termination']['site'] == 1 - - test_two['circuit_termination']['port_speed'] == 10000 - - test_two['msg'] == "circuit_termination test_circuit_a already exists" - -- name: "NETBOX_CIRCUIT_TERMINATION 3: Update provider with other fields" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - upstream_speed: 1000 - xconnect_id: 10X100 - pp_info: PP10-24 - description: Test description - state: present - register: test_three - -- name: "NETBOX_CIRCUIT_TERMINATION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['upstream_speed'] == 1000 - - test_three['diff']['after']['xconnect_id'] == "10X100" - - test_three['diff']['after']['pp_info'] == "PP10-24" - - test_three['diff']['after']['description'] == "Test description" - - test_three['circuit_termination']['circuit'] == 1 - - test_three['circuit_termination']['term_side'] == "A" - - test_three['circuit_termination']['site'] == 1 - - test_three['circuit_termination']['port_speed'] == 10000 - - test_three['circuit_termination']['upstream_speed'] == 1000 - - test_three['circuit_termination']['xconnect_id'] == "10X100" - - test_three['circuit_termination']['pp_info'] == "PP10-24" - - test_three['circuit_termination']['description'] == "Test description" - - test_three['msg'] == "circuit_termination test_circuit_a updated" - -- name: "NETBOX_CIRCUIT_TERMINATION 4: Create Z Side" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: Z - site: Test Site - port_speed: 10000 - state: present - register: test_four - -- name: "NETBOX_CIRCUIT_TERMINATION 4: ASSERT - Create Z Side" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['circuit_termination']['circuit'] == 1 - - test_four['circuit_termination']['term_side'] == "Z" - - test_four['circuit_termination']['site'] == 1 - - test_four['circuit_termination']['port_speed'] == 10000 - - test_four['msg'] == "circuit_termination test_circuit_z created" - -- name: "NETBOX_CIRCUIT_TERMINATION 5: Delete provider within netbox" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - state: absent - register: test_five - -- name: "NETBOX_CIRCUIT_TERMINATION 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['circuit_termination']['circuit'] == 1 - - test_five['circuit_termination']['term_side'] == "A" - - test_five['circuit_termination']['site'] == 1 - - test_five['circuit_termination']['port_speed'] == 10000 - - test_five['circuit_termination']['upstream_speed'] == 1000 - - test_five['circuit_termination']['xconnect_id'] == "10X100" - - test_five['circuit_termination']['pp_info'] == "PP10-24" - - test_five['circuit_termination']['description'] == "Test description" - - test_five['msg'] == "circuit_termination test_circuit_a deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_circuit_type.yml b/tests/integration/targets/v3.6/tasks/netbox_circuit_type.yml deleted file mode 100644 index 08dc67985..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_circuit_type.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT_TYPE -## -## -- name: "CIRCUIT_TYPE 1: Necessary info creation" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: present - register: test_one - -- name: "CIRCUIT_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit_type']['name'] == "Test Circuit Type One" - - test_one['circuit_type']['slug'] == "test-circuit-type-one" - - test_one['msg'] == "circuit_type Test Circuit Type One created" - -- name: "CIRCUIT_TYPE 2: Create duplicate" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: present - register: test_two - -- name: "CIRCUIT_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit_type']['name'] == "Test Circuit Type One" - - test_two['circuit_type']['slug'] == "test-circuit-type-one" - - test_two['msg'] == "circuit_type Test Circuit Type One already exists" - -- name: "CIRCUIT_TYPE 3: User specified slug" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type Two - slug: test-circuit-type-2 - state: present - register: test_three - -- name: "CIRCUIT_TYPE 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['circuit_type']['name'] == "Test Circuit Type Two" - - test_three['circuit_type']['slug'] == "test-circuit-type-2" - - test_three['msg'] == "circuit_type Test Circuit Type Two created" - -- name: "CIRCUIT_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: absent - register: test_four - -- name: "CIRCUIT_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['circuit_type']['name'] == "Test Circuit Type One" - - test_four['circuit_type']['slug'] == "test-circuit-type-one" - - test_four['msg'] == "circuit_type Test Circuit Type One deleted" - -- name: "CIRCUIT_TYPE 5: ASSERT - Delete" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type Two - slug: test-circuit-type-2 - state: absent - register: test_five - -- name: "CIRCUIT_TYPE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['circuit_type']['name'] == "Test Circuit Type Two" - - test_five['circuit_type']['slug'] == "test-circuit-type-2" - - test_five['msg'] == "circuit_type Test Circuit Type Two deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_cluster.yml b/tests/integration/targets/v3.6/tasks/netbox_cluster.yml deleted file mode 100644 index b2810a1be..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_cluster.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER -## -## -- name: "CLUSTER 1: Necessary info creation" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - state: present - register: test_one - -- name: "CLUSTER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster']['name'] == "Test Cluster One" - - test_one['cluster']['type'] == 1 - - test_one['msg'] == "cluster Test Cluster One created" - -- name: "CLUSTER 2: Create duplicate" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - state: present - register: test_two - -- name: "CLUSTER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster']['name'] == "Test Cluster One" - - test_two['cluster']['type'] == 1 - - test_two['msg'] == "cluster Test Cluster One already exists" - -- name: "CLUSTER 3: Update" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - cluster_group: Test Cluster Group - site: Test Site - comments: Updated cluster - tenant: Test Tenant - tags: - - Schnozzberry - state: present - register: test_three - -- name: "CLUSTER 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['group'] == 1 - - test_three['diff']['after']['site'] == 1 - - test_three['diff']['after']['comments'] == "Updated cluster" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['diff']['after']['tenant'] == 1 - - test_three['cluster']['name'] == "Test Cluster One" - - test_three['cluster']['type'] == 1 - - test_three['cluster']['group'] == 1 - - test_three['cluster']['site'] == 1 - - test_three['cluster']['comments'] == "Updated cluster" - - test_three['cluster']['tags'][0] == 4 - - test_three['cluster']['tenant'] == 1 - - test_three['msg'] == "cluster Test Cluster One updated" - -- name: "CLUSTER 4: ASSERT - Delete" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - state: absent - register: test_four - -- name: "CLUSTER 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster']['name'] == "Test Cluster One" - - test_four['cluster']['type'] == 1 - - test_four['cluster']['group'] == 1 - - test_four['cluster']['site'] == 1 - - test_four['cluster']['comments'] == "Updated cluster" - - test_four['cluster']['tags'][0] == 4 - - test_four['msg'] == "cluster Test Cluster One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_cluster_group.yml b/tests/integration/targets/v3.6/tasks/netbox_cluster_group.yml deleted file mode 100644 index 64dda6c44..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_cluster_group.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER_GROUP -## -## -- name: "CLUSTER_GROUP 1: Necessary info creation" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: present - register: test_one - -- name: "CLUSTER_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster_group']['name'] == "Test Cluster Group One" - - test_one['cluster_group']['slug'] == "test-cluster-group-one" - - test_one['msg'] == "cluster_group Test Cluster Group One created" - -- name: "CLUSTER_GROUP 2: Create duplicate" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: present - register: test_two - -- name: "CLUSTER_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster_group']['name'] == "Test Cluster Group One" - - test_two['cluster_group']['slug'] == "test-cluster-group-one" - - test_two['msg'] == "cluster_group Test Cluster Group One already exists" - -- name: "CLUSTER_GROUP 3: User specified slug" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group Two - slug: test-cluster-group-2 - state: present - register: test_three - -- name: "CLUSTER_GROUP 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['cluster_group']['name'] == "Test Cluster Group Two" - - test_three['cluster_group']['slug'] == "test-cluster-group-2" - - test_three['msg'] == "cluster_group Test Cluster Group Two created" - -- name: "CLUSTER_GROUP 4: ASSERT - Delete" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: absent - register: test_four - -- name: "CLUSTER_GROUP 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster_group']['name'] == "Test Cluster Group One" - - test_four['cluster_group']['slug'] == "test-cluster-group-one" - - test_four['msg'] == "cluster_group Test Cluster Group One deleted" - -- name: "CLUSTER_GROUP 5: ASSERT - Delete" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group Two - slug: test-cluster-group-2 - state: absent - register: test_five - -- name: "CLUSTER_GROUP 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['cluster_group']['name'] == "Test Cluster Group Two" - - test_five['cluster_group']['slug'] == "test-cluster-group-2" - - test_five['msg'] == "cluster_group Test Cluster Group Two deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_cluster_type.yml b/tests/integration/targets/v3.6/tasks/netbox_cluster_type.yml deleted file mode 100644 index bc09ac8a6..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_cluster_type.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER_TYPE -## -## -- name: "CLUSTER_TYPE 1: Necessary info creation" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: present - register: test_one - -- name: "CLUSTER_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster_type']['name'] == "Test Cluster Type One" - - test_one['cluster_type']['slug'] == "test-cluster-type-one" - - test_one['msg'] == "cluster_type Test Cluster Type One created" - -- name: "CLUSTER_TYPE 2: Create duplicate" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: present - register: test_two - -- name: "CLUSTER_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster_type']['name'] == "Test Cluster Type One" - - test_two['cluster_type']['slug'] == "test-cluster-type-one" - - test_two['msg'] == "cluster_type Test Cluster Type One already exists" - -- name: "CLUSTER_TYPE 3: User specified slug" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type Two - slug: test-cluster-type-2 - state: present - register: test_three - -- name: "CLUSTER_TYPE 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['cluster_type']['name'] == "Test Cluster Type Two" - - test_three['cluster_type']['slug'] == "test-cluster-type-2" - - test_three['msg'] == "cluster_type Test Cluster Type Two created" - -- name: "CLUSTER_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: absent - register: test_four - -- name: "CLUSTER_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster_type']['name'] == "Test Cluster Type One" - - test_four['cluster_type']['slug'] == "test-cluster-type-one" - - test_four['msg'] == "cluster_type Test Cluster Type One deleted" - -- name: "CLUSTER_TYPE 5: ASSERT - Delete" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type Two - slug: test-cluster-type-2 - state: absent - register: test_five - -- name: "CLUSTER_TYPE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['cluster_type']['name'] == "Test Cluster Type Two" - - test_five['cluster_type']['slug'] == "test-cluster-type-2" - - test_five['msg'] == "cluster_type Test Cluster Type Two deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_config_context.yml b/tests/integration/targets/v3.6/tasks/netbox_config_context.yml deleted file mode 100644 index 910ec82ca..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_config_context.yml +++ /dev/null @@ -1,107 +0,0 @@ ---- -## -## -### NETBOX_CONFIG_CONTEXTS -## -## -- name: "CONFIG_CONTEXT 1: Necessary info creation" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Test context - data: '{ "testkey": { "testsubkey": [ "testvaule" ] } }' - state: present - register: test_one - -- name: "CONFIG_CONTEXT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['config_context']['name'] == "test_context" - - test_one['config_context']['description'] == "Test context" - - test_one['config_context']['is_active'] == true - - test_one['config_context']['weight'] == 1000 - - test_one['config_context']['data'].testkey.testsubkey[0] == "testvaule" - - test_one['msg'] == "config_context test_context created" - -- name: "CONFIG_CONTEXT 2: Create duplicate" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Test context - data: '{ "testkey": { "testsubkey": [ "testvaule" ] } }' - state: present - register: test_two - -- name: "CONFIG_CONTEXT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['config_context']['name'] == "test_context" - - test_two['msg'] == "config_context test_context already exists" - -- name: "CONFIG_CONTEXT 3: Update data and attach to site" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Updated test context - data: '{ "testkey": { "testsubkey": [ "updatedvaule" ] } }' - weight: 100 - sites: [test-site] - state: present - register: test_three - -- name: "CONFIG_CONTEXT 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['data'].testkey.testsubkey[0] == "updatedvaule" - - test_three['diff']['after']['description'] == "Updated test context" - - test_three['diff']['after']['weight'] == 100 - - test_three['diff']['after']['sites'][0] == 1 - - test_three['config_context']['name'] == "test_context" - - test_three['msg'] == "config_context test_context updated" - -- name: "CONFIG_CONTEXT 4: Detach from site" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - data: '{ "testkey": { "testsubkey": [ "updatedvaule" ] } }' - sites: [] - state: present - register: test_four - -- name: "CONFIG_CONTEXT 4: ASSERT - Detached" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['sites']|length == 0 - - test_four['config_context']['name'] == "test_context" - - test_four['msg'] == "config_context test_context updated" - -- name: "CONFIG_CONTEXT 5: Delete" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - state: absent - register: test_five - -- name: "CONFIG_CONTEXT 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['config_context']['name'] == "test_context" - - test_five['msg'] == "config_context test_context deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_console_port.yml b/tests/integration/targets/v3.6/tasks/netbox_console_port.yml deleted file mode 100644 index 6be028bec..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_console_port.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_PORT -## -## -- name: "CONSOLE_PORT 1: Necessary info creation" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - state: present - register: test_one - -- name: "CONSOLE_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_port']['name'] == "Console Port" - - test_one['console_port']['device'] == 1 - - test_one['msg'] == "console_port Console Port created" - -- name: "CONSOLE_PORT 2: Create duplicate" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - state: present - register: test_two - -- name: "CONSOLE_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_port']['name'] == "Console Port" - - test_two['console_port']['device'] == 1 - - test_two['msg'] == "console_port Console Port already exists" - -- name: "CONSOLE_PORT 3: Update Console Port with other fields" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - type: usb-a - description: test description - state: present - register: test_three - -- name: "CONSOLE_PORT 3: ASSERT - Update Console Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['diff']['after']['description'] == "test description" - - test_three['console_port']['name'] == "Console Port" - - test_three['console_port']['device'] == 1 - - test_three['console_port']['type'] == "usb-a" - - test_three['console_port']['description'] == "test description" - - test_three['msg'] == "console_port Console Port updated" - -- name: "CONSOLE_PORT 4: Create Console Port for Delete Test" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port 2 - device: test100 - state: present - register: test_four - -- name: "CONSOLE_PORT 4: ASSERT - Create Console Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_port']['name'] == "Console Port 2" - - test_four['console_port']['device'] == 1 - - test_four['msg'] == "console_port Console Port 2 created" - -- name: "CONSOLE_PORT 5: Delete Console Port" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port 2 - device: test100 - state: absent - register: test_five - -- name: "CONSOLE_PORT 5: ASSERT - Delete Console Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_port Console Port 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_console_port_template.yml b/tests/integration/targets/v3.6/tasks/netbox_console_port_template.yml deleted file mode 100644 index ef6149214..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_console_port_template.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_PORT_TEMPLATE -## -## -- name: "CONSOLE_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - state: present - register: test_one - -- name: "CONSOLE_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_port_template']['name'] == "Console Port Template" - - test_one['console_port_template']['device_type'] == 1 - - test_one['msg'] == "console_port_template Console Port Template created" - -- name: "CONSOLE_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - state: present - register: test_two - -- name: "CONSOLE_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_port_template']['name'] == "Console Port Template" - - test_two['console_port_template']['device_type'] == 1 - - test_two['msg'] == "console_port_template Console Port Template already exists" - -- name: "CONSOLE_PORT_TEMPLATE 3: Update Console Port Template with other fields" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - type: usb-a - state: present - register: test_three - -- name: "CONSOLE_PORT_TEMPLATE 3: ASSERT - Update Console Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['console_port_template']['name'] == "Console Port Template" - - test_three['console_port_template']['device_type'] == 1 - - test_three['console_port_template']['type'] == "usb-a" - - test_three['msg'] == "console_port_template Console Port Template updated" - -- name: "CONSOLE_PORT_TEMPLATE 4: Create Console Port Template for Delete Test" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template 2 - device_type: Cisco Test - state: present - register: test_four - -- name: "CONSOLE_PORT_TEMPLATE 4: ASSERT - Create Console Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_port_template']['name'] == "Console Port Template 2" - - test_four['console_port_template']['device_type'] == 1 - - test_four['msg'] == "console_port_template Console Port Template 2 created" - -- name: "CONSOLE_PORT_TEMPLATE 5: Delete Console Port Template" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template 2 - device_type: Cisco Test - state: absent - register: test_five - -- name: "CONSOLE_PORT_TEMPLATE 5: ASSERT - Delete Console Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_port_template Console Port Template 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_console_server_port.yml b/tests/integration/targets/v3.6/tasks/netbox_console_server_port.yml deleted file mode 100644 index 0ac7b65d0..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_console_server_port.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_SERVER_PORT -## -## -- name: "CONSOLE_SERVER_PORT 1: Necessary info creation" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - state: present - register: test_one - -- name: "CONSOLE_SERVER_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_server_port']['name'] == "Console Server Port" - - test_one['console_server_port']['device'] == 1 - - test_one['msg'] == "console_server_port Console Server Port created" - -- name: "CONSOLE_SERVER_PORT 2: Create duplicate" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - state: present - register: test_two - -- name: "CONSOLE_SERVER_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_server_port']['name'] == "Console Server Port" - - test_two['console_server_port']['device'] == 1 - - test_two['msg'] == "console_server_port Console Server Port already exists" - -- name: "CONSOLE_SERVER_PORT 3: Update Console Server Port with other fields" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - type: usb-a - description: test description - state: present - register: test_three - -- name: "CONSOLE_SERVER_PORT 3: ASSERT - Update Console Server Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['diff']['after']['description'] == "test description" - - test_three['console_server_port']['name'] == "Console Server Port" - - test_three['console_server_port']['device'] == 1 - - test_three['console_server_port']['type'] == "usb-a" - - test_three['console_server_port']['description'] == "test description" - - test_three['msg'] == "console_server_port Console Server Port updated" - -- name: "CONSOLE_SERVER_PORT 4: Create Console Server Port for Delete Test" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port 2 - device: test100 - state: present - register: test_four - -- name: "CONSOLE_SERVER_PORT 4: ASSERT - Create Console Server Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_server_port']['name'] == "Console Server Port 2" - - test_four['console_server_port']['device'] == 1 - - test_four['msg'] == "console_server_port Console Server Port 2 created" - -- name: "CONSOLE_SERVER_PORT 5: Delete Console Server Port" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port 2 - device: test100 - state: absent - register: test_five - -- name: "CONSOLE_SERVER_PORT 5: ASSERT - Delete Console Server Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_server_port Console Server Port 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_console_server_port_template.yml b/tests/integration/targets/v3.6/tasks/netbox_console_server_port_template.yml deleted file mode 100644 index 4c7dfc846..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_console_server_port_template.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_SERVER_PORT_TEMPLATE -## -## -- name: "CONSOLE_SERVER_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - state: present - register: test_one - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_server_port_template']['name'] == "Console Server Port Template" - - test_one['console_server_port_template']['device_type'] == 1 - - test_one['msg'] == "console_server_port_template Console Server Port Template created" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - state: present - register: test_two - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_server_port_template']['name'] == "Console Server Port Template" - - test_two['console_server_port_template']['device_type'] == 1 - - test_two['msg'] == "console_server_port_template Console Server Port Template already exists" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 3: Update Console Server Port Template with other fields" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - type: usb-a - state: present - register: test_three - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 3: ASSERT - Update Console Server Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['console_server_port_template']['name'] == "Console Server Port Template" - - test_three['console_server_port_template']['device_type'] == 1 - - test_three['console_server_port_template']['type'] == "usb-a" - - test_three['msg'] == "console_server_port_template Console Server Port Template updated" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 4: Create Console Server Port Template for Delete Test" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template 2 - device_type: Cisco Test - state: present - register: test_four - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 4: ASSERT - Create Console Server Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_server_port_template']['name'] == "Console Server Port Template 2" - - test_four['console_server_port_template']['device_type'] == 1 - - test_four['msg'] == "console_server_port_template Console Server Port Template 2 created" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 5: Delete Console Server Port Template" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template 2 - device_type: Cisco Test - state: absent - register: test_five - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 5: ASSERT - Delete Console Server Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_server_port_template Console Server Port Template 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_contact.yml b/tests/integration/targets/v3.6/tasks/netbox_contact.yml deleted file mode 100644 index f5ede9c1a..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_contact.yml +++ /dev/null @@ -1,100 +0,0 @@ ---- -## -## -### NETBOX_CONTACT -## -## -- name: 1 - Test contact creation - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['contact']['name'] == "Contact ABC" - - test_one['msg'] == "contact Contact ABC created" - -- name: Test duplicate contact - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['contact']['name'] == "Contact ABC" - - test_two['msg'] == "contact Contact ABC already exists" - -- name: 3 - Test update - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - title: New Title - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['title'] == "New Title" - - test_three['contact']['name'] == "Contact ABC" - - test_three['contact']['title'] == "New Title" - - test_three['msg'] == "contact Contact ABC updated" - -- name: 4 - Test delete - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "contact Contact ABC deleted" - -- name: 5 - Create contact with all parameters - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - title: Fancy title - phone: "12345678" - email: contact@contact.com - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['contact']['name'] == "Contact ABC" - - test_five['contact']['title'] == "Fancy title" - - test_five['contact']['phone'] == "12345678" - - test_five['contact']['tags'] | length == 3 - - test_five['msg'] == "contact Contact ABC created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_contact_role.yml b/tests/integration/targets/v3.6/tasks/netbox_contact_role.yml deleted file mode 100644 index c84703da9..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_contact_role.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_CONTACT_ROLE -## -## -- name: "CONTACT_ROLE 1: Necessary info creation" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: present - register: test_one - -- name: "CONTACT_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['contact_role']['name'] == "Test Contact Role" - - test_one['contact_role']['slug'] == "test-contact-role" - - test_one['msg'] == "contact_role Test Contact Role created" - -- name: "CONTACT_ROLE 2: Create duplicate" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: present - register: test_two - -- name: "CONTACT ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['contact_role']['name'] == "Test Contact Role" - - test_two['contact_role']['slug'] == "test-contact-role" - - test_two['msg'] == "contact_role Test Contact Role already exists" - -- name: "CONTACT_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - description: Update description - state: present - register: test_three - -- name: "IPAM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Update description" - - test_three['contact_role']['name'] == "Test Contact Role" - - test_three['contact_role']['slug'] == "test-contact-role" - - test_three['contact_role']['description'] == "Update description" - - test_three['msg'] == "contact_role Test Contact Role updated" - -- name: "CONTACT_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: absent - register: test_four - -- name: "CONTACT_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "contact_role Test Contact Role deleted" - -- name: "CONTACT_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: absent - register: test_five - -- name: "CONTACT_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['contact_role'] == None - - test_five['msg'] == "contact_role Test Contact Role already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_custom_field.yml b/tests/integration/targets/v3.6/tasks/netbox_custom_field.yml deleted file mode 100644 index a4ec68866..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_custom_field.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -## -## -### NETBOX_CUSTOM_FIELD -## -## -- name: "CUSTOM_FIELD 1: Necessary info creation" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - type: text - state: present - register: test_one - -- name: "CUSTOM_FIELD 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['custom_field']['name'] == "A_CustomField" - - test_one['custom_field']['required'] == false - - test_one['custom_field']['content_types'] == ["dcim.device"] - - test_one['custom_field']['type'] == "text" - - test_one['custom_field']['weight'] == 100 - - test_one['msg'] == "custom_field A_CustomField created" - -- name: "CUSTOM_FIELD 2: Create duplicate" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - state: present - register: test_two - -- name: "CUSTOM_FIELD 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['custom_field']['name'] == "A_CustomField" - - test_two['msg'] == "custom_field A_CustomField already exists" - -- name: "CUSTOM_FIELD 3: Update data and make it required" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - description: Added a description - required: true - state: present - register: test_three - -- name: "CUSTOM_FIELD 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Added a description" - - test_three['diff']['after']['required'] == true - - test_three['custom_field']['name'] == "A_CustomField" - - test_three['msg'] == "custom_field A_CustomField updated" - -- name: "CUSTOM_FIELD 4: Change content type" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: A_CustomField - description: Added a description - required: true - state: present - register: test_four - -- name: "CUSTOM_FIELD 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['custom_field']['name'] == "A_CustomField" - - test_four['msg'] == "custom_field A_CustomField updated" - -- name: "CUSTOM_FIELD 5: Delete" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_CustomField - state: absent - register: test_five - -- name: "CUSTOM_FIELD 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['custom_field']['name'] == "A_CustomField" - - test_five['msg'] == "custom_field A_CustomField deleted" - -- name: "CUSTOM_FIELD 6: UI Visibility (hidden-ifunset)" - netbox.netbox.netbox_custom_field: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: A_CustomField - type: text - ui_visibility: hidden-ifunset - state: present - register: test_six - -- name: "CUSTOM_FIELD 6: UI Visibility (hidden-ifunset)" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['custom_field']['name'] == "A_CustomField" - - test_six['custom_field']['ui_visibility'] == "hidden-ifunset" diff --git a/tests/integration/targets/v3.6/tasks/netbox_custom_field_choice_set.yml b/tests/integration/targets/v3.6/tasks/netbox_custom_field_choice_set.yml deleted file mode 100644 index 6d255ebdb..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_custom_field_choice_set.yml +++ /dev/null @@ -1,106 +0,0 @@ ---- -## -## -### NETBOX_CUSTOM_FIELD_CHOICE_SET -## -## -- name: "CUSTOM_FIELD_CHOICE_SET 1: Base Choice set creation" - netbox.netbox.netbox_custom_field_choice_set: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_ChoiceSet - description: Added a description - base_choices: IATA - state: present - register: test_one - -- name: "CUSTOM_FIELD_CHOICE_SET 1: ASSERT - Base Choice set creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['choice_set']['name'] == "A_ChoiceSet" - - test_one['choice_set']['description'] == "Added a description" - - test_one['choice_set']['display'] == "A_ChoiceSet" - - test_one['choice_set']['order_alphabetically'] == false - - test_one['choice_set']['extra_choices'] == [] - - test_one['msg'] == "choice_set A_ChoiceSet created" - -- name: "CUSTOM_FIELD_CHOICE_SET 2: Create duplicate" - netbox.netbox.netbox_custom_field_choice_set: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_ChoiceSet - description: Added a description - base_choices: IATA - state: present - register: test_two - -- name: "CUSTOM_FIELD_CHOICE_SET 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['choice_set']['name'] == "A_ChoiceSet" - - test_two['msg'] == "choice_set A_ChoiceSet already exists" - -- name: "CUSTOM_FIELD_CHOICE_SET 3: Update data and change base_choice" - netbox.netbox.netbox_custom_field_choice_set: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_ChoiceSet - description: Added a description - base_choices: ISO_3166 - state: present - register: test_three - -- name: "CUSTOM_FIELD_CHOICE_SET 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['base_choices'] == "ISO_3166" - - test_three['choice_set']['name'] == "A_ChoiceSet" - - test_three['msg'] == "choice_set A_ChoiceSet updated" - -- name: "CUSTOM_FIELD_CHOICE_SET 4: Update extra choice and order alphabetically" - netbox.netbox.netbox_custom_field_choice_set: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_ChoiceSet - description: Added a description - order_alphabetically: true - extra_choices: - - [test, label] - - [test2, label2] - state: present - register: test_four - -- name: "CUSTOM_FIELD_CHOICE_SET 4: ASSERT - Change extra choice and order alphabetically" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['extra_choices'] == [["test","label"],["test2","label2"]] - - test_four['diff']['after']['order_alphabetically'] == true - - test_four['choice_set']['name'] == "A_ChoiceSet" - - test_four['msg'] == "choice_set A_ChoiceSet updated" - -- name: "CUSTOM_FIELD_CHOICE_SET 5: Delete" - netbox.netbox.netbox_custom_field_choice_set: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: A_ChoiceSet - state: absent - register: test_five - -- name: "CUSTOM_FIELD_CHOICE_SET 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['choice_set']['name'] == "A_ChoiceSet" - - test_five['msg'] == "choice_set A_ChoiceSet deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_custom_link.yml b/tests/integration/targets/v3.6/tasks/netbox_custom_link.yml deleted file mode 100644 index b9bbcc8a7..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_custom_link.yml +++ /dev/null @@ -1,113 +0,0 @@ ---- -## -## -### NETBOX_CUSTOM_LINK -## -## -- name: "CUSTOM_LINK 1: Necessary info creation" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_one - -- name: "CUSTOM_LINK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['custom_link']['name'] == "Custom Link" - - test_one['custom_link']['content_types'] == ["dcim.device"] - - test_one['custom_link']['link_text'] == "Open Web management" - - test_one['msg'] == "custom_link Custom Link created" - -- name: "CUSTOM_LINK 2: Create duplicate" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_two - -- name: "CUSTOM_LINK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['custom_link']['name'] == "Custom Link" - - test_two['msg'] == "custom_link Custom Link already exists" - -- name: "CUSTOM_FIELD 3: Update data and add weight" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - weight: 50 - state: present - register: test_three - -- name: "CUSTOM_FIELD 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['weight'] == 50 - - test_three['custom_link']['name'] == "Custom Link" - - test_three['msg'] == "custom_link Custom Link updated" - -- name: "CUSTOM_LINK 4: Change content type" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_four - -- name: "CUSTOM_LINK 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['custom_link']['name'] == "Custom Link" - - test_four['msg'] == "custom_link Custom Link updated" - -- name: "CUSTOM_LINK 5: Delete" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: absent - register: test_five - -- name: "CUSTOM_LINK 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['custom_link']['name'] == "Custom Link" - - test_five['msg'] == "custom_link Custom Link deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_bay.yml b/tests/integration/targets/v3.6/tasks/netbox_device_bay.yml deleted file mode 100644 index b892d2160..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_device_bay.yml +++ /dev/null @@ -1,87 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_BAY -## -## -- name: "DEVICE_BAY 1: Necessary info creation" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - state: present - register: test_one - -- name: "DEVICE_BAY 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_bay']['name'] == "Device Bay One" - - test_one['device_bay']['device'] == 4 - - test_one['msg'] == "device_bay Device Bay One created" - -- name: "DEVICE_BAY 2: Create duplicate" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - state: present - register: test_two - -- name: "DEVICE_BAY 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_bay']['name'] == "Device Bay One" - - test_two['device_bay']['device'] == 4 - - test_two['msg'] == "device_bay Device Bay One already exists" - -- name: "DEVICE_BAY 3: ASSERT - Update" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - installed_device: Test Nexus Child One - tags: - - Schnozzberry - state: present - register: test_three - -- name: "DEVICE_BAY 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['installed_device'] == 5 - - test_three['diff']['after']['tags'][0] == 4 - - test_three['device_bay']['name'] == "Device Bay One" - - test_three['device_bay']['device'] == 4 - - test_three['device_bay']['installed_device'] == 5 - - test_three['device_bay']['tags'][0] == 4 - - test_three['msg'] == "device_bay Device Bay One updated" - -- name: "DEVICE_BAY 4: ASSERT - Delete" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Bay One - state: absent - register: test_four - -- name: "DEVICE_BAY 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['device_bay']['name'] == "Device Bay One" - - test_four['device_bay']['device'] == 4 - - test_four['device_bay']['installed_device'] == 5 - - test_four['device_bay']['tags'][0] == 4 - - test_four['msg'] == "device_bay Device Bay One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_bay_template.yml b/tests/integration/targets/v3.6/tasks/netbox_device_bay_template.yml deleted file mode 100644 index c2ba1e32c..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_device_bay_template.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_BAY_TEMPLATE -## -## -- name: "DEVICE_BAY_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template One - state: present - register: test_one - -- name: "DEVICE_BAY_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_bay_template']['name'] == "Device Bay Template One" - - test_one['device_bay_template']['device_type'] == 7 - - test_one['msg'] == "device_bay_template Device Bay Template One created" - -- name: "DEVICE_BAY_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template One - state: present - register: test_two - -- name: "DEVICE_BAY_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_bay_template']['name'] == "Device Bay Template One" - - test_two['device_bay_template']['device_type'] == 7 - - test_two['msg'] == "device_bay_template Device Bay Template One already exists" - -- name: "DEVICE_BAY_TEMPLATE 3: ASSERT - Create Device Bay Template for Delete Test" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template Two - state: present - register: test_three - -- name: "DEVICE_BAY_TEMPLATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['device_bay_template']['name'] == "Device Bay Template Two" - - test_three['device_bay_template']['device_type'] == 7 - - test_three['msg'] == "device_bay_template Device Bay Template Two created" - -- name: "DEVICE_BAY_TEMPLATE 4: ASSERT - Delete" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Bay Template Two - device_type: WS Test 3850 - state: absent - register: test_four - -- name: "DEVICE_BAY_TEMPLATE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['device_bay_template']['name'] == "Device Bay Template Two" - - test_four['device_bay_template']['device_type'] == 7 - - test_four['msg'] == "device_bay_template Device Bay Template Two deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_interface_template.yml b/tests/integration/targets/v3.6/tasks/netbox_device_interface_template.yml deleted file mode 100644 index abe8f3405..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_device_interface_template.yml +++ /dev/null @@ -1,109 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_INTERFACE_TEMPLATE -## -## -- name: 1 - Interface with required information - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['msg'] == "interface_template 10GBASE-T (10GE) created" - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['interface_template']['name'] == "10GBASE-T (10GE)" - - test_one['interface_template']['device_type'] == 2 - - test_one['interface_template']['type'] == '10gbase-t' - -- name: 2 - Update 10GBASE-T (10GE) - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - mgmt_only: true - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "interface_template 10GBASE-T (10GE) updated" - - test_two['diff']['after']['mgmt_only'] == true - - test_two['interface_template']['name'] == "10GBASE-T (10GE)" - - test_two['interface_template']['device_type'] == 2 - - test_two['interface_template']['mgmt_only'] == true - -- name: 3 - Delete interface template 10GBASE-T (10GE) - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['msg'] == "interface_template 10GBASE-T (10GE) deleted" - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - -- name: 4 - Create LAG with several specified options - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: port channel template - type: lag - mgmt_only: false - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['msg'] == "interface_template port channel template created" - - test_four['diff']['before']['state'] == 'absent' - - test_four['diff']['after']['state'] == 'present' - - test_four['interface_template']['name'] == "port channel template" - - test_four['interface_template']['device_type'] == 2 - - test_four['interface_template']['type'] == "lag" - - test_four['interface_template']['mgmt_only'] == false - -- name: 5 - Duplicate Interface Template port channel template - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: port channel template - type: lag - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['msg'] == "interface_template port channel template already exists" - - test_five['interface_template']['name'] == "port channel template" - - test_five['interface_template']['device_type'] == 2 - - test_five['interface_template']['type'] == "lag" diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_role.yml b/tests/integration/targets/v3.6/tasks/netbox_device_role.yml deleted file mode 100644 index b85ee2c86..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_device_role.yml +++ /dev/null @@ -1,101 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_ROLE -## -## -- name: "DEVICE_ROLE 1: Necessary info creation" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: FFFFFF - state: present - register: test_one - -- name: "DEVICE_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_role']['name'] == "Test Device Role" - - test_one['device_role']['slug'] == "test-device-role" - - test_one['device_role']['color'] == "ffffff" - - test_one['msg'] == "device_role Test Device Role created" - -- name: "DEVICE_ROLE 2: Create duplicate" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: FFFFFF - state: present - register: test_two - -- name: "DEVICE_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_role']['name'] == "Test Device Role" - - test_two['device_role']['slug'] == "test-device-role" - - test_two['device_role']['color'] == "ffffff" - - test_two['msg'] == "device_role Test Device Role already exists" - -- name: "DEVICE_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: "003EFF" - vm_role: false - state: present - register: test_three - -- name: "DEVICE_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['diff']['after']['vm_role'] == false - - test_three['device_role']['name'] == "Test Device Role" - - test_three['device_role']['slug'] == "test-device-role" - - test_three['device_role']['color'] == "003eff" - - test_three['device_role']['vm_role'] == false - - test_three['msg'] == "device_role Test Device Role updated" - -- name: "DEVICE_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - state: absent - register: test_four - -- name: "DEVICE_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "device_role Test Device Role deleted" - -- name: "DEVICE_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - state: absent - register: test_five - -- name: "DEVICE_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['device_role'] == None - - test_five['msg'] == "device_role Test Device Role already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_type.yml b/tests/integration/targets/v3.6/tasks/netbox_device_type.yml deleted file mode 100644 index 3027f6fd1..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_device_type.yml +++ /dev/null @@ -1,132 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_TYPE -## -## -- name: "DEVICE_TYPE 1: Necessary info creation" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_one - -- name: "DEVICE_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_type']['slug'] == "test-device-type" - - test_one['device_type']['model'] == "ws-test-3750" - - test_one['device_type']['manufacturer'] == 3 - - test_one['msg'] == "device_type test-device-type created" - -- name: "DEVICE_TYPE 2: Create duplicate" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_two - -- name: "DEVICE_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_one['device_type']['slug'] == "test-device-type" - - test_one['device_type']['model'] == "ws-test-3750" - - test_one['device_type']['manufacturer'] == 3 - - test_two['msg'] == "device_type test-device-type already exists" - -- name: "DEVICE_TYPE 3: ASSERT - Update" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - part_number: ws-3750g-v2 - u_height: 1.5 - is_full_depth: false - subdevice_role: parent - state: present - register: test_three - -- name: "DEVICE_TYPE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['is_full_depth'] == false - - test_three['diff']['after']['part_number'] == "ws-3750g-v2" - - test_three['diff']['after']['subdevice_role'] == "parent" - - test_three['device_type']['slug'] == "test-device-type" - - test_three['device_type']['model'] == "ws-test-3750" - - test_three['device_type']['manufacturer'] == 3 - - test_three['device_type']['is_full_depth'] == false - - test_three['device_type']['part_number'] == "ws-3750g-v2" - - test_three['device_type']['subdevice_role'] == "parent" - - test_three['msg'] == "device_type test-device-type updated" - -- name: "DEVICE_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: test-device-type - state: absent - register: test_four - -- name: "DEVICE_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "device_type test-device-type deleted" - -- name: "DEVICE_TYPE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Test Device Type - state: absent - register: test_five - -- name: "DEVICE_TYPE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['device_type'] == None - - test_five['msg'] == "device_type Test Device Type already absent" - -- name: "DEVICE_TYPE 6: Without Slug" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: WS Test 3850 - manufacturer: Test Manufacturer - subdevice_role: parent - state: present - register: test_six - -- name: "DEVICE_TYPE 6: ASSERT - Without Slug" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['device_type']['slug'] == "ws-test-3850" - - test_six['device_type']['model'] == "WS Test 3850" - - test_six['device_type']['manufacturer'] == 3 - - test_six['msg'] == "device_type WS Test 3850 created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_export_template.yml b/tests/integration/targets/v3.6/tasks/netbox_export_template.yml deleted file mode 100644 index ffdc0424f..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_export_template.yml +++ /dev/null @@ -1,118 +0,0 @@ ---- -## -## -### NETBOX_EXPORT_TEMPLATE -## -## -- name: "EXPORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_one - -- name: "EXPORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['export_template']['name'] == "Example Export Template" - - test_one['export_template']['content_types'] == ["dcim.device"] - - test_one['export_template']['description'] == "Export Devices" - - test_one['msg'] == "export_template Example Export Template created" - -- name: "EXPORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_two - -- name: "EXPORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['export_template']['name'] == "Example Export Template" - - test_two['msg'] == "export_template Example Export Template already exists" - -- name: "EXPORT_TEMPLATE 3: Update data and remove as_attachment" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - as_attachment: false - state: present - register: test_three - -- name: "EXPORT_TEMPLATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['as_attachment'] == false - - test_three['export_template']['name'] == "Example Export Template" - - test_three['msg'] == "export_template Example Export Template updated" - -- name: "EXPORT_TEMPLATE 4: Change content type" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: present - register: test_four - -- name: "EXPORT_TEMPLATE 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['export_template']['name'] == "Example Export Template" - - test_four['msg'] == "export_template Example Export Template updated" - -- name: "EXPORT_TEMPLATE 5: Delete" - netbox.netbox.netbox_export_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Export Template - description: Export Devices - template_code: !unsafe >- - {% for obj in queryset %}{{ obj.name }}{% endfor %} - state: absent - register: test_five - -- name: "EXPORT_TEMPLATE 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['export_template']['name'] == "Example Export Template" - - test_five['msg'] == "export_template Example Export Template deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_fhrp_group.yml b/tests/integration/targets/v3.6/tasks/netbox_fhrp_group.yml deleted file mode 100644 index eed3f2f88..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_fhrp_group.yml +++ /dev/null @@ -1,91 +0,0 @@ ---- -## -## -### NETBOX_FHRP_GROUP -## -## -- name: "FHRP group 1: Test FHRP group creation" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - state: present - register: test_one - -- name: "FHRP group: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['fhrp_group']['group_id'] == 111 - - test_one['fhrp_group']['protocol'] == "glbp" - - test_one['msg'] == "fhrp_group 111 created" - -- name: "FHRP group 2: Create duplicate" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - state: present - register: test_two - -- name: "FHRP group 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['fhrp_group']['group_id'] == 111 - - test_two['fhrp_group']['protocol'] == "glbp" - - test_two['msg'] == "fhrp_group 111 already exists" - -- name: "FHRP group 3: Update FHRP group with other fields" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - auth_type: md5 - auth_key: 11111 - description: Test description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "FHRP group 3: ASSERT - Update FHRP group with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['auth_type'] == "md5" - - test_three['diff']['after']['auth_key'] == "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER" - - test_three['diff']['after']['description'] == "Test description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['fhrp_group']['group_id'] == 111 - - test_three['fhrp_group']['protocol'] == "glbp" - - test_three['fhrp_group']['auth_type'] == "md5" - - test_three['fhrp_group']['auth_key'] == "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER" - - test_three['fhrp_group']['description'] == "Test description" - - test_three['fhrp_group']['tags'][0] == 4 - - test_three['msg'] == "fhrp_group 111 updated" - -- name: "FHRP group 4: ASSERT - Delete" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - group_id: 111 - state: absent - register: test_four - -- name: "FHRP group 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "fhrp_group 111 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_fhrp_group_assignment.yml b/tests/integration/targets/v3.6/tasks/netbox_fhrp_group_assignment.yml deleted file mode 100644 index 2dd2f6d61..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_fhrp_group_assignment.yml +++ /dev/null @@ -1,92 +0,0 @@ ---- -## -## -### NETBOX_FHRP_GROUP_ASSIGNMENT -## -## -- name: "FHRP group assignment 1: Test FHRP group assignment creation" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 1 - state: present - register: test_one - -- name: "FHRP group assignment: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['fhrp_group_assignment']['group'] == 1 - - test_one['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_one['fhrp_group_assignment']['interface_id'] == 1 - - test_one['fhrp_group_assignment']['priority'] == 1 - - test_one['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 created" - -- name: "FHRP group assignment 2: Create duplicate" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 1 - state: present - register: test_two - -- name: "FHRP group assignment 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['fhrp_group_assignment']['group'] == 1 - - test_two['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_two['fhrp_group_assignment']['interface_id'] == 1 - - test_two['fhrp_group_assignment']['priority'] == 1 - - test_two['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 already exists" - -- name: "FHRP group assignment 3: Update FHRP group assignment" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 2 - state: present - register: test_three - -- name: "FHRP group assignment 3: ASSERT - Update FHRP group assignment" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['fhrp_group_assignment']['group'] == 1 - - test_three['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_three['fhrp_group_assignment']['interface_id'] == 1 - - test_three['fhrp_group_assignment']['priority'] == 2 - - test_three['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 updated" - -- name: "FHRP group assignment 4: Delete FHRP group assignment" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - state: absent - register: test_four - -- name: "FHRP group assignment 3: ASSERT - Delete FHRP group assignment" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_front_port.yml b/tests/integration/targets/v3.6/tasks/netbox_front_port.yml deleted file mode 100644 index 7088bbeef..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_front_port.yml +++ /dev/null @@ -1,150 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_FRONT_PORT -## -## -- name: "FRONT_PORT 1: Necessary info creation" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_one - -- name: "FRONT_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['front_port']['name'] == "Front Port" - - test_one['front_port']['device'] == 1 - - test_one['front_port']['type'] == "bnc" - - test_one['front_port']['rear_port'] == 1 - - test_one['msg'] == "front_port Front Port created" - -- name: "FRONT_PORT 2: Create duplicate" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_two - -- name: "FRONT_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['front_port']['name'] == "Front Port" - - test_two['front_port']['device'] == 1 - - test_two['front_port']['type'] == "bnc" - - test_two['front_port']['rear_port'] == 1 - - test_two['msg'] == "front_port Front Port already exists" - -- name: "FRONT_PORT 3: Update Front Port with other fields" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - rear_port_position: 5 - description: test description - state: present - register: test_three - -- name: "FRONT_PORT 3: ASSERT - Update Front Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['rear_port_position'] == 5 - - test_three['diff']['after']['description'] == "test description" - - test_three['front_port']['name'] == "Front Port" - - test_three['front_port']['device'] == 1 - - test_three['front_port']['type'] == "bnc" - - test_three['front_port']['rear_port'] == 1 - - test_three['front_port']['rear_port_position'] == 5 - - test_three['front_port']['description'] == "test description" - - test_three['msg'] == "front_port Front Port updated" - -- name: "FRONT_PORT 4: Create Front Port for Delete Test" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port 2 - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_four - -- name: "FRONT_PORT 4: ASSERT - Create Front Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['front_port']['name'] == "Front Port 2" - - test_four['front_port']['device'] == 1 - - test_four['front_port']['type'] == "bnc" - - test_four['front_port']['rear_port'] == 1 - - test_four['msg'] == "front_port Front Port 2 created" - -- name: "FRONT_PORT 5: Delete Front Port" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port 2 - device: test100 - type: bnc - rear_port: Rear Port - state: absent - register: test_five - -- name: "FRONT_PORT 5: ASSERT - Delete Front Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "front_port Front Port 2 deleted" - -- name: "FRONT_PORT 6: Create duplicate with rear_port dictionary" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: - device: test100 - name: Rear Port - state: present - register: test_six - -- name: "FRONT_PORT 6: ASSERT - Create duplicate with rear_port dictionary" - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['front_port']['name'] == "Front Port" - - test_six['front_port']['device'] == 1 - - test_six['front_port']['type'] == "bnc" - - test_six['front_port']['rear_port'] == 1 - - test_six['msg'] == "front_port Front Port already exists" diff --git a/tests/integration/targets/v3.6/tasks/netbox_front_port_template.yml b/tests/integration/targets/v3.6/tasks/netbox_front_port_template.yml deleted file mode 100644 index 966279fa8..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_front_port_template.yml +++ /dev/null @@ -1,147 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_FRONT_PORT_TEMPLATE -## -## -- name: "FRONT_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_one - -- name: "FRONT_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['front_port_template']['name'] == "Front Port Template" - - test_one['front_port_template']['device_type'] == 1 - - test_one['front_port_template']['type'] == "bnc" - - test_one['front_port_template']['rear_port'] == 1 - - test_one['msg'] == "front_port_template Front Port Template created" - -- name: "FRONT_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_two - -- name: "FRONT_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['front_port_template']['name'] == "Front Port Template" - - test_two['front_port_template']['device_type'] == 1 - - test_two['front_port_template']['type'] == "bnc" - - test_two['front_port_template']['rear_port'] == 1 - - test_two['msg'] == "front_port_template Front Port Template already exists" - -- name: "FRONT_PORT_TEMPLATE 3: Update Front Port Template with other fields" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - rear_port_template_position: 5 - state: present - register: test_three - -- name: "FRONT_PORT_TEMPLATE 3: ASSERT - Update Front Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['rear_port_position'] == 5 - - test_three['front_port_template']['name'] == "Front Port Template" - - test_three['front_port_template']['device_type'] == 1 - - test_three['front_port_template']['type'] == "bnc" - - test_three['front_port_template']['rear_port_position'] == 5 - - test_three['front_port_template']['rear_port'] == 1 - - test_three['msg'] == "front_port_template Front Port Template updated" - -- name: "FRONT_PORT_TEMPLATE 4: Create Front Port Template for Delete Test" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template 2 - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_four - -- name: "FRONT_PORT_TEMPLATE 4: ASSERT - Create Front Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['front_port_template']['name'] == "Front Port Template 2" - - test_four['front_port_template']['device_type'] == 1 - - test_four['front_port_template']['type'] == "bnc" - - test_four['front_port_template']['rear_port'] == 1 - - test_four['msg'] == "front_port_template Front Port Template 2 created" - -- name: "FRONT_PORT_TEMPLATE 5: Delete Front Port Template" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template 2 - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: absent - register: test_five - -- name: "FRONT_PORT_TEMPLATE 5: ASSERT - Delete Front Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "front_port_template Front Port Template 2 deleted" - -- name: "FRONT_PORT 6: Create duplicate with rear_port_template dictionary" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: - device: Cisco Test - name: Rear Port Template - state: present - register: test_six - -- name: "FRONT_PORT 6: ASSERT - Create duplicate with rear_port_template dictionary" - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['front_port_template']['name'] == "Front Port Template" - - test_six['front_port_template']['device_type'] == 1 - - test_six['front_port_template']['type'] == "bnc" - - test_six['front_port_template']['rear_port'] == 1 - - test_six['msg'] == "front_port_template Front Port Template already exists" diff --git a/tests/integration/targets/v3.6/tasks/netbox_inventory_item.yml b/tests/integration/targets/v3.6/tasks/netbox_inventory_item.yml deleted file mode 100644 index 5b330c3a5..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_inventory_item.yml +++ /dev/null @@ -1,203 +0,0 @@ ---- -## -## -### NETBOX_INVENTORY_ITEM -## -## -- name: "INVENTORY_ITEM 1: Necessary info creation" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: present - register: test_one - -- name: "INVENTORY_ITEM 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one.diff.before.state == "absent" - - test_one.diff.after.state == "present" - - test_one.inventory_item.name == "10G-SFP+" - - test_one.inventory_item.device == 1 - - test_one.msg == "inventory_item 10G-SFP+ created" - -- name: "INVENTORY_ITEM 2: Create duplicate" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: present - register: test_two - -- name: "INVENTORY_ITEM 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two.changed - - test_two.inventory_item.name == "10G-SFP+" - - test_two.inventory_item.device == 1 - - test_two.msg == "inventory_item 10G-SFP+ already exists" - -- name: "INVENTORY_ITEM 3: Update properties" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - manufacturer: Cisco - part_id: 10G-SFP+ - serial: "1234" - asset_tag: "1234" - description: New SFP - discovered: true - tags: - - Schnozzberry - state: present - register: test_three - -- name: "INVENTORY_ITEM 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three.diff.after.asset_tag == "1234" - - test_three.diff.after.serial == "1234" - - test_three.diff.after.description == "New SFP" - - test_three.diff.after.manufacturer == 1 - - test_three.diff.after.part_id == "10G-SFP+" - - test_three.diff.after.tags[0] == 4 - - test_three.diff.after.discovered == True - - test_three.inventory_item.name == "10G-SFP+" - - test_three.inventory_item.device == 1 - - test_three.inventory_item.asset_tag == "1234" - - test_three.inventory_item.serial == "1234" - - test_three.inventory_item.description == "New SFP" - - test_three.inventory_item.manufacturer == 1 - - test_three.inventory_item.part_id == "10G-SFP+" - - test_three.inventory_item.tags[0] == 4 - - test_three.inventory_item.discovered == True - - test_three.msg == "inventory_item 10G-SFP+ updated" - -- name: "INVENTORY_ITEM 4: Delete inventory item" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: absent - register: test_four - -- name: "INVENTORY_ITEM 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four.inventory_item.name == "10G-SFP+" - - test_four.inventory_item.device == 1 - - test_four.inventory_item.asset_tag == "1234" - - test_four.inventory_item.serial == "1234" - - test_four.inventory_item.description == "New SFP" - - test_four.inventory_item.manufacturer == 1 - - test_four.inventory_item.part_id == "10G-SFP+" - - test_four.inventory_item.tags[0] == 4 - - test_four.msg == "inventory_item 10G-SFP+ deleted" - -- name: "INVENTORY_ITEM 5: PREWORK - Create inventory item role" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Processor - color: FFFFFF - state: present - register: test_five_prework - -- name: "INVENTORY_ITEM 5: Create inventory item with role" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_processor - inventory_item_role: Processor - state: present - register: test_five - -- name: "INVENTORY_ITEM 5: ASSERT - Inventory item creation with role" - ansible.builtin.assert: - that: - - test_five is changed - - test_five.diff.before.state == "absent" - - test_five.diff.after.state == "present" - - test_five.inventory_item.name == "test_processor" - - test_five.inventory_item.role == test_five_prework.inventory_item_role.id - - test_five.inventory_item.device == 1 - - test_five.msg == "inventory_item test_processor created" - -- name: "INVENTORY_ITEM 6: Create inventory item with missing role" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_processor - inventory_item_role: Foo - state: present - ignore_errors: true - register: test_six - -- name: "INVENTORY_ITEM 6: ASSERT - Inventory item creation with missing role" - ansible.builtin.assert: - that: - - test_six.failed - - test_six.msg == "Could not resolve id of inventory_item_role: Foo" - -- name: "INVENTORY_ITEM 7: Create inventory item with component" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_component - component_type: dcim.interface - component: - name: GigabitEthernet2 - device: test100 - state: present - register: test_seven - -- name: "INVENTORY_ITEM 7: ASSERT - Inventory item creation with component" - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven.diff.before.state == "absent" - - test_seven.diff.after.state == "present" - - test_seven.inventory_item.name == "test_component" - - test_seven.inventory_item.component_type == "dcim.interface" - - test_seven.inventory_item.component_id == 4 - - test_seven.inventory_item.device == 1 - - test_seven.msg == "inventory_item test_component created" - -- name: "INVENTORY_ITEM 8: Create inventory item with missing component_type" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_component - component: - name: GigabitEthernet2 - device: test100 - state: present - ignore_errors: true - register: test_eight - -- name: "INVENTORY_ITEM 8: ASSERT - Inventory item creation with missing component_type" - ansible.builtin.assert: - that: - - test_eight.failed - - test_eight.msg == "parameters are required together: component_type, component" diff --git a/tests/integration/targets/v3.6/tasks/netbox_inventory_item_role.yml b/tests/integration/targets/v3.6/tasks/netbox_inventory_item_role.yml deleted file mode 100644 index 71d86d747..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_inventory_item_role.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- -## -## -### NETBOX_INVENTORY_ITEM_ROLE -## -## -- name: "INVENTORY_ITEM_ROLE 1: Necessary info creation" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: FFFFFF - state: present - register: test_one - -- name: "INVENTORY_ITEM_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_one['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_one['inventory_item_role']['color'] == "ffffff" - - test_one['msg'] == "inventory_item_role Test Inventory Item Role created" - -- name: "INVENTORY_ITEM_ROLE 2: Create duplicate" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: FFFFFF - state: present - register: test_two - -- name: "INVENTORY_ITEM_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_two['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_two['inventory_item_role']['color'] == "ffffff" - - test_two['msg'] == "inventory_item_role Test Inventory Item Role already exists" - -- name: "INVENTORY_ITEM_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: "003EFF" - state: present - register: test_three - -- name: "INVENTORY_ITEM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_three['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_three['inventory_item_role']['color'] == "003eff" - - test_three['msg'] == "inventory_item_role Test Inventory Item Role updated" - -- name: "INVENTORY_ITEM_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - state: absent - register: test_four - -- name: "INVENTORY_ITEM_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "inventory_item_role Test Inventory Item Role deleted" - -- name: "INVENTORY_ITEM_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - state: absent - register: test_five - -- name: "INVENTORY_ITEM_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['inventory_item_role'] == None - - test_five['msg'] == "inventory_item_role Test Inventory Item Role already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_ip_address.yml b/tests/integration/targets/v3.6/tasks/netbox_ip_address.yml deleted file mode 100644 index c73fb9dfb..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_ip_address.yml +++ /dev/null @@ -1,399 +0,0 @@ ---- -## -## -### NETBOX_IP_ADDRESS -## -## -- name: "1 - Create IP address within NetBox with only required information - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['msg'] == "ip_address 192.168.1.10/30 created" - - test_one['ip_address']['address'] == "192.168.1.10/30" - -- name: 2 - Update 192.168.1.10/30 - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - description: Updated ip address - tags: - - Updated - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['diff']['after']['description'] == "Updated ip address" - - test_two['diff']['after']['tags'][0] == 10 - - test_two['msg'] == "ip_address 192.168.1.10/30 updated" - - test_two['ip_address']['address'] == "192.168.1.10/30" - - test_two['ip_address']['tags'][0] == 10 - - test_two['ip_address']['description'] == "Updated ip address" - -- name: "3 - Delete IP - 192.168.1.10 - State: Absent" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.10/30 - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "ip_address 192.168.1.10/30 deleted" - -- name: "4 - Create IP in global VRF - 192.168.1.20/30 - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.20/30 - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['msg'] == "ip_address 192.168.1.20/30 created" - - test_four['ip_address']['address'] == "192.168.1.20/30" - -- name: "5 - Create IP in global VRF - 192.168.1.20/30 - State: New" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.1.20/30 - state: new - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['msg'] == "ip_address 192.168.1.20/30 created" - - test_five['ip_address']['address'] == "192.168.1.20/30" - -- name: "6 - Create new address with only prefix specified - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 192.168.100.0/24 - state: new - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['msg'] == "ip_address 192.168.100.1/24 created" - - test_six['ip_address']['address'] == "192.168.100.1/24" - -- name: 7 - Create IP address with several specified - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 172.16.1.20/24 - vrf: Test VRF - tenant: Test Tenant - status: Reserved - role: Loopback - description: Test description - tags: - - Schnozzberry - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "absent" - - test_seven['diff']['after']['state'] == "present" - - test_seven['msg'] == "ip_address 172.16.1.20/24 created" - - test_seven['ip_address']['address'] == "172.16.1.20/24" - - test_seven['ip_address']['description'] == "Test description" - - test_seven['ip_address']['family'] == 4 - - test_seven['ip_address']['role'] == "loopback" - - test_seven['ip_address']['status'] == "reserved" - - test_seven['ip_address']['tags'][0] == 4 - - test_seven['ip_address']['tenant'] == 1 - - test_seven['ip_address']['vrf'] == 1 - -- name: 8 - Create IP address and assign a nat_inside IP - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.1.30/16 - vrf: Test VRF - nat_inside: - address: 172.16.1.20 - vrf: Test VRF - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "absent" - - test_eight['diff']['after']['state'] == "present" - - test_eight['msg'] == "ip_address 10.10.1.30/16 created" - - test_eight['ip_address']['address'] == "10.10.1.30/16" - - test_eight['ip_address']['family'] == 4 - - test_eight['ip_address'].get('nat_inside') - - test_eight['ip_address']['vrf'] == 1 - -- name: "9 - Create IP address on GigabitEthernet2 - test100 - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.200.30/16 - assigned_object: - name: GigabitEthernet2 - device: test100 - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "absent" - - test_nine['diff']['after']['state'] == "present" - - test_nine['msg'] == "ip_address 10.10.200.30/16 created" - - test_nine['ip_address']['address'] == "10.10.200.30/16" - - test_nine['ip_address']['family'] == 4 - - test_nine['ip_address']['assigned_object_type'] == "dcim.interface" - - test_nine['ip_address']['assigned_object_id'] == 4 - -- name: "10 - Create IP address on GigabitEthernet2 - test100 - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.10.0.0/16 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: new - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['diff']['before']['state'] == "absent" - - test_ten['diff']['after']['state'] == "present" - - test_ten['msg'] == "ip_address 10.10.0.1/16 created" - - test_ten['ip_address']['address'] == "10.10.0.1/16" - - test_ten['ip_address']['family'] == 4 - - test_ten['ip_address']['assigned_object_type'] == "dcim.interface" - - test_ten['ip_address']['assigned_object_id'] == 4 - -- name: "11 - Create IP address on GigabitEthernet2 - test100 - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 192.168.100.0/24 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: present - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is changed - - test_eleven['diff']['before']['state'] == "absent" - - test_eleven['diff']['after']['state'] == "present" - - test_eleven['msg'] == "ip_address 192.168.100.2/24 created" - - test_eleven['ip_address']['address'] == "192.168.100.2/24" - -- name: 12 - Duplicate - 192.168.100.2/24 on interface - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.100.2/24 - assigned_object: - name: GigabitEthernet2 - device: test100 - state: present - register: test_twelve - -- name: 12 - ASSERT - ansible.builtin.assert: - that: - - not test_twelve['changed'] - - test_twelve['msg'] == "ip_address 192.168.100.2/24 already exists" - - test_twelve['ip_address']['address'] == "192.168.100.2/24" - - test_twelve['ip_address']['assigned_object_type'] == "dcim.interface" - - test_twelve['ip_address']['assigned_object_id'] == 4 - -- name: 13 - Duplicate - 192.168.100.2/24 - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 192.168.100.2/24 - state: present - register: test_thirteen - -- name: 13 - ASSERT - ansible.builtin.assert: - that: - - not test_thirteen['changed'] - - test_thirteen['msg'] == "ip_address 192.168.100.2/24 already exists" - - test_thirteen['ip_address']['address'] == "192.168.100.2/24" - -- name: "14 - Create IP address on Eth0 - test100-vm - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.188.1.100/24 - assigned_object: - name: Eth0 - virtual_machine: test100-vm - register: test_fourteen - -- name: 14 - ASSERT - ansible.builtin.assert: - that: - - test_fourteen is changed - - test_fourteen['diff']['before']['state'] == "absent" - - test_fourteen['diff']['after']['state'] == "present" - - test_fourteen['msg'] == "ip_address 10.188.1.100/24 created" - - test_fourteen['ip_address']['address'] == "10.188.1.100/24" - - test_fourteen['ip_address']['family'] == 4 - - test_fourteen['ip_address']['assigned_object_type'] == "virtualization.vminterface" - - test_fourteen['ip_address']['assigned_object_id'] == 1 - -- name: "15 - Create same IP address on Eth0 - test101-vm - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.188.1.100/24 - assigned_object: - name: Eth0 - virtual_machine: test101-vm - state: present - register: test_fifteen - -- name: 15 - ASSERT - ansible.builtin.assert: - that: - - test_fifteen is changed - - test_fifteen['diff']['before']['state'] == "absent" - - test_fifteen['diff']['after']['state'] == "present" - - test_fifteen['msg'] == "ip_address 10.188.1.100/24 created" - - test_fifteen['ip_address']['address'] == "10.188.1.100/24" - - test_fifteen['ip_address']['family'] == 4 - - test_fifteen['ip_address']['assigned_object_type'] == "virtualization.vminterface" - - test_fifteen['ip_address']['assigned_object_id'] == 6 - -- name: "16 - Create IP address with no mask - State: Present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - address: 10.120.10.1 - state: present - register: test_sixteen - -- name: 16 - ASSERT - ansible.builtin.assert: - that: - - test_sixteen is changed - - test_sixteen['diff']['before']['state'] == "absent" - - test_sixteen['diff']['after']['state'] == "present" - - test_sixteen['msg'] == "ip_address 10.120.10.1/32 created" - - test_sixteen['ip_address']['address'] == "10.120.10.1/32" - -- name: "17 - Create IP address on GigabitEthernet2 - test100 with interface value - State: present" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - address: 10.10.200.31/16 - interface: - device: test100 - name: GigabitEthernet2 - register: test_seventeen - -- name: 17 - ASSERT - ansible.builtin.assert: - that: - - test_seventeen is changed - - test_seventeen['diff']['before']['state'] == "absent" - - test_seventeen['diff']['after']['state'] == "present" - - test_seventeen['msg'] == "ip_address 10.10.200.31/16 created" - - test_seventeen['ip_address']['address'] == "10.10.200.31/16" - - test_seventeen['ip_address']['family'] == 4 - - test_seventeen['ip_address']['assigned_object_type'] == "dcim.interface" - - test_seventeen['ip_address']['assigned_object_id'] == 4 - -- name: "18 - Create IP address on GigabitEthernet2 - test100 with interface value - State: new" - netbox.netbox.netbox_ip_address: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.10.0.0/16 - interface: - name: GigabitEthernet2 - device: test100 - state: new - register: test_eighteen - -- name: 18 - ASSERT - ansible.builtin.assert: - that: - - test_eighteen is changed - - test_eighteen['diff']['before']['state'] == "absent" - - test_eighteen['diff']['after']['state'] == "present" - - test_eighteen['msg'] == "ip_address 10.10.0.2/16 created" - - test_eighteen['ip_address']['address'] == "10.10.0.2/16" - - test_eighteen['ip_address']['family'] == 4 - - test_eighteen['ip_address']['assigned_object_type'] == "dcim.interface" - - test_eighteen['ip_address']['assigned_object_id'] == 4 diff --git a/tests/integration/targets/v3.6/tasks/netbox_ipam_role.yml b/tests/integration/targets/v3.6/tasks/netbox_ipam_role.yml deleted file mode 100644 index 9f376c2ed..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_ipam_role.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_IPAM_ROLE -## -## -- name: "IPAM_ROLE 1: Necessary info creation" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: present - register: test_one - -- name: "IPAM_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['role']['name'] == "Test IPAM Role" - - test_one['role']['slug'] == "test-ipam-role" - - test_one['msg'] == "role Test IPAM Role created" - -- name: "IPAM_ROLE 2: Create duplicate" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: present - register: test_two - -- name: "IPAM_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['role']['name'] == "Test IPAM Role" - - test_two['role']['slug'] == "test-ipam-role" - - test_two['msg'] == "role Test IPAM Role already exists" - -- name: "IPAM_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - weight: 4096 - state: present - register: test_three - -- name: "IPAM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['weight'] == 4096 - - test_three['role']['name'] == "Test IPAM Role" - - test_three['role']['slug'] == "test-ipam-role" - - test_three['role']['weight'] == 4096 - - test_three['msg'] == "role Test IPAM Role updated" - -- name: "IPAM_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: absent - register: test_four - -- name: "IPAM_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "role Test IPAM Role deleted" - -- name: "IPAM_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: absent - register: test_five - -- name: "IPAM_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['role'] == None - - test_five['msg'] == "role Test IPAM Role already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_journal_entry.yml b/tests/integration/targets/v3.6/tasks/netbox_journal_entry.yml deleted file mode 100644 index 7eead8db1..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_journal_entry.yml +++ /dev/null @@ -1,26 +0,0 @@ ---- -## -## -### NETBOX_JOURNAL_ENTRY -## -## -- name: "JOURNAL ENTRY 1: Creation" - netbox.netbox.netbox_journal_entry: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - assigned_object_type: dcim.device - assigned_object_id: 1 - comments: | - Comment on device - state: new - register: test_one - -- name: "JOURNAL_ENTRY 1: ASSERT - Creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['journal_entry']['kind'] == "info" - - test_one['msg'] == "journal_entry created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_l2vpn.yml b/tests/integration/targets/v3.6/tasks/netbox_l2vpn.yml deleted file mode 100644 index 655be9455..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_l2vpn.yml +++ /dev/null @@ -1,99 +0,0 @@ ---- -## -## -### NETBOX_L2VPN -## -## -- name: "L2VPN 1: Necessary info creation" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: present - register: test_one - -- name: "L2VPN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['l2vpn']['name'] == "Test L2VPN" - - test_one['l2vpn']['type'] == "vxlan" - - test_one['msg'] == "l2vpn Test L2VPN created" - -- name: "L2VPN 2: Create duplicate" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: present - register: test_two - -- name: "L2VPN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['l2vpn']['name'] == "Test L2VPN" - - test_two['l2vpn']['type'] == "vxlan" - - test_two['msg'] == "l2vpn Test L2VPN already exists" - -- name: "L2VPN 4: ASSERT - Update" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - tenant: Test Tenant - description: Updated description - import_targets: - - 4000:4000 - - 5000:5000 - export_targets: - - 6000:6000 - tags: - - Schnozzberry - state: present - register: test_four - -- name: "L2VPN: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['import_targets'] == [1, 2] - - test_four['diff']['after']['export_targets'] == [3] - - test_four['diff']['after']['tags'][0] == 4 - - test_four['l2vpn']['name'] == "Test L2VPN" - - test_four['l2vpn']['tenant'] == 1 - - test_four['l2vpn']['import_targets'] == [1, 2] - - test_four['l2vpn']['export_targets'] == [3] - - test_four['l2vpn']['description'] == "Updated description" - - test_four['l2vpn']['tags'][0] == 4 - - test_four['msg'] == "l2vpn Test L2VPN updated" - -- name: "L2VPN: ASSERT - Delete" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: absent - register: test_six - -- name: "L2VPN 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['l2vpn']['name'] == "Test L2VPN" - - test_six['l2vpn']['tenant'] == 1 - - test_six['l2vpn']['type'] == "vxlan" - - test_six['l2vpn']['description'] == "Updated description" - - test_six['l2vpn']['tags'][0] == 4 - - test_six['msg'] == "l2vpn Test L2VPN deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_l2vpn_termination.yml b/tests/integration/targets/v3.6/tasks/netbox_l2vpn_termination.yml deleted file mode 100644 index 0dd539943..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_l2vpn_termination.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_L2VPN_TERMINATION -## -## -- name: "L2VPN_TERMINATION 1: Necessary info creation" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: present - register: test_one - -- name: "L2VPN_TERMINATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['l2vpn_termination']['l2vpn'] == 1 - - test_one['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_one['l2vpn_termination']['assigned_object_id'] == 1 - - test_one['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 created" - -- name: "L2VPN_TERMINATION 2: Create duplicate" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: present - register: test_two - -- name: "L2VPN_TERMINATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['l2vpn_termination']['l2vpn'] == 1 - - test_two['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_two['l2vpn_termination']['assigned_object_id'] == 1 - - test_two['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 already exists" - -- name: "L2VPN_TERMINATION 3: Update" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - tags: - - Schnozzberry - state: present - register: test_three - -- name: "L2VPN_TERMINATION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['tags'][0] == 4 - - test_three['l2vpn_termination']['l2vpn'] == 1 - - test_three['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_three['l2vpn_termination']['assigned_object_id'] == 1 - - test_three['l2vpn_termination']['tags'][0] == 4 - - test_three['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 updated" - -- name: "L2VPN_TERMINATION 4: Delete" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: absent - register: test_four - -- name: "L2VPN_TERMINATION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['l2vpn_termination']['l2vpn'] == 1 - - test_four['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_four['l2vpn_termination']['assigned_object_id'] == 1 - - test_four['l2vpn_termination']['tags'][0] == 4 - - test_four['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_location.yml b/tests/integration/targets/v3.6/tasks/netbox_location.yml deleted file mode 100644 index 2e37c7682..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_location.yml +++ /dev/null @@ -1,85 +0,0 @@ ---- -## -## -### NETBOX_LOCATION -## -## -- name: "LOCATION 1: Necessary info creation" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - site: Test Site - state: present - register: test_one - -- name: "LOCATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['location']['name'] == "Location" - - test_one['location']['slug'] == "location" - - test_one['location']['site'] == 1 - - test_one['msg'] == "location Location created" - -- name: "LOCATION 2: Create duplicate" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - site: Test Site - state: present - register: test_two - -- name: "LOCATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['location']['name'] == "Location" - - test_two['location']['slug'] == "location" - - test_two['location']['site'] == 1 - - test_two['msg'] == "location Location already exists" - -- name: "LOCATION 3: Update" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - parent_location: Parent Rack Group - description: This is a location - state: present - register: test_three - -- name: "LOCATION 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 2 - - test_three['diff']['after']['description'] == "This is a location" - - test_three['location']['name'] == "Location" - - test_three['location']['slug'] == "location" - - test_three['location']['parent'] == 2 - - test_three['location']['description'] == "This is a location" - - test_three['msg'] == "location Location updated" - -- name: "LOCATION 4: Delete" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - state: absent - register: test_four - -- name: "LOCATION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "location Location deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_lookup.yml b/tests/integration/targets/v3.6/tasks/netbox_lookup.yml deleted file mode 100644 index 046f327eb..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_lookup.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -## -## -### NETBOX_LOOKUP -## -## -- name: "NETBOX_LOOKUP 1: Lookup returns exactly two sites" - ansible.builtin.assert: - that: query_result == "3" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'sites', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | count }}" - -- name: "NETBOX_LOOKUP 2: Query doesn't return Wibble (sanity check json_query)" - ansible.builtin.assert: - that: query_result == "0" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.display==`Wibble`]') - | count }}" - -- name: "NETBOX_LOOKUP 3: Device query returns exactly one TestDeviceR1" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.display==`TestDeviceR1`]') - | count }}" - -- name: "NETBOX_LOOKUP 4: VLAN ID 400 can be queried and is named 'Test VLAN'" - ansible.builtin.assert: - that: query_result == 'Test VLAN' - vars: - query_result: "{{ (query('netbox.netbox.nb_lookup', 'vlans', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.vid==`400`].value.name'))[0] - }}" - -- name: "NETBOX_LOOKUP 5: Add one of two devices for lookup filter test." - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: L1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - nolookup - state: present - -- name: "NETBOX_LOOKUP 6: Add two of two devices for lookup filter test." - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: L2 - device_type: Cisco Test - device_role: Core Switch - site: Test Site2 - status: Staged - tags: - - lookup - state: present - -- name: "NETBOX_LOOKUP 7: Device query returns exactly the L2 device" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch tag=lookup', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') - | community.general.json_query('[?value.display==`L2`]') | count }}" - -- name: "NETBOX_LOOKUP 8: Device query specifying raw data returns payload without key/value dict" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch tag=lookup', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567', - raw_data=True) | community.general.json_query('[?display==`L2`]') | count }}" - -- name: "NETBOX_LOOKUP 9: Device query specifying multiple sites, Make sure L1 and L2 are in the results" - ansible.builtin.assert: - that: - - "'L1' in query_result" - - "'L2' in query_result" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch site=test-site site=test-site2', api_endpoint='http://localhost:32768', - token='0123456789abcdef0123456789abcdef01234567', raw_data=True) | community.general.json_query('[*].display') }}" - -- name: "NETBOX_LOOKUP 10: Device query by ID" - ansible.builtin.assert: - that: query_result - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='id=1', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') - }}" - -- name: "NETBOX_LOOKUP 11: Device query by ansible variable" - ansible.builtin.set_fact: - hostname: "L2" - -- name: "NETBOX LOOKUP 11.1: Obtain details of a single device from NetBox" - ansible.builtin.debug: - msg: > - "Device {{item.0.value.display}} (ID: {{item.0.key}}) was - manufactured by {{ item.0.value.device_type.manufacturer.name }}" - loop: - - '{{ query("netbox.netbox.nb_lookup", "devices", - api_filter="name=" ~hostname, - api_endpoint="http://localhost:32768", - token="0123456789abcdef0123456789abcdef01234567") }}' diff --git a/tests/integration/targets/v3.6/tasks/netbox_manufacturer.yml b/tests/integration/targets/v3.6/tasks/netbox_manufacturer.yml deleted file mode 100644 index 39804659b..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_manufacturer.yml +++ /dev/null @@ -1,91 +0,0 @@ ---- -## -## -### NETBOX_MANUFACTURER -## -## -- name: "MANUFACTURER 1: Necessary info creation" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: present - register: test_one - -- name: "MANUFACTURER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['manufacturer']['name'] == "Test Manufacturer Two" - - test_one['manufacturer']['slug'] == "test-manufacturer-two" - - test_one['msg'] == "manufacturer Test Manufacturer Two created" - -- name: "MANUFACTURER 2: Create duplicate" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: present - register: test_two - -- name: "MANUFACTURER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['manufacturer']['name'] == "Test Manufacturer Two" - - test_two['manufacturer']['slug'] == "test-manufacturer-two" - - test_two['msg'] == "manufacturer Test Manufacturer Two already exists" - -- name: "MANUFACTURER 3: Update" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test manufacturer two - state: present - register: test_three - -- name: "MANUFACTURER 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three['changed'] - - test_three['manufacturer']['name'] == "test manufacturer two" - - test_three['manufacturer']['slug'] == "test-manufacturer-two" - - test_three['msg'] == "manufacturer test manufacturer two updated" - -- name: "MANUFACTURER 4: ASSERT - Delete" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test manufacturer two - state: absent - register: test_four - -- name: "MANUFACTURER 3: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "manufacturer test manufacturer two deleted" - -- name: "MANUFACTURER 5: ASSERT - Delete non existing" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: absent - register: test_five - -- name: "MANUFACTURER 5: ASSERT - Delete non existing" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['manufacturer'] == None - - test_five['msg'] == "manufacturer Test Manufacturer Two already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_module.yml b/tests/integration/targets/v3.6/tasks/netbox_module.yml deleted file mode 100644 index 0a18f3894..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_module.yml +++ /dev/null @@ -1,107 +0,0 @@ ---- -## -## -### NETBOX_MODULE -## -## -- name: "MODULE 1: Necessary info creation" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: present - register: test_one - -- name: "MODULE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module']['device'] == "C9300-DEMO" - - test_one['module']['module_bay'] == "Network Module" - - test_one['module']['module_type'] == "C9300-NM-8X" - - test_one['msg'] == "module ws-test-3750 created" - -- name: "MODULE 2: Create duplicate" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: present - register: test_two - -- name: "MODULE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['module']['device'] == "C9300-DEMO" - - test_two['module']['module_bay'] == "Network Module" - - test_two['module']['module_type'] == "C9300-NM-8X" - - test_two['msg'] == "module C9300-NM-8X already exists in slot Network Module of C9300-DEMO" - -- name: "MODULE 3: ASSERT - Update" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - serial: XXXNNNNXXXX - state: present - register: test_three - -- name: "MODULE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['serial'] == "XXXNNNNXXXX" - - test_three['module']['device'] == "C9300-DEMO" - - test_three['module']['module_bay'] == "Network Module" - - test_three['module']['module_type'] == "C9300-NM-8X" - - test_three['module']['serial'] == "XXXNNNNXXXX" - - test_three['msg'] == "module C9300-DEMO - Network Module - C9300-NM-8X updated" - -- name: "MODULE 4: ASSERT - Delete" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: absent - register: test_four - -- name: "MODULE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module C9300-NM-8X deleted in slot Network Module of C9300-DEMO" - -- name: "MODULE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-2Y - state: absent - register: test_five - -- name: "MODULE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module'] == None - - test_five['msg'] == "module Test Module Type already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_module_bay.yml b/tests/integration/targets/v3.6/tasks/netbox_module_bay.yml deleted file mode 100644 index 843a4767e..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_module_bay.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -## -## -### NETBOX_MODULE_BAY -## -## -- name: "MODULE 1: Necessary info creation" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - state: present - register: test_one - -- name: "MODULE BAY 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module_bay']['device'] == "C9300-DEMO" - - test_one['module_bay']['name'] == "Network Module" - - test_one['module_bay']['position'] == "0" - - test_one['msg'] == "module_bay Network Module in C9300-DEMO position 0 created" - -- name: "MODULE BAY 2: Create duplicate" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - state: present - register: test_two - -- name: "MODULE BAY 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['module_bay']['device'] == "C9300-DEMO" - - test_two['module_bay']['name'] == "Network Module" - - test_two['module_bay']['position'] == "0" - - test_two['msg'] == "module_bay Network Module in C9300-DEMO position 0 already exists" - -- name: "MODULE BAY 3: ASSERT - Update" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - label: TEST - state: present - register: test_three - -- name: "MODULE BAY 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['label'] == "TEST" - - test_three['module_bay']['device'] == "C9300-DEMO" - - test_three['module_bay']['name'] == "Network Module" - - test_three['module_bay']['position'] == "0" - - test_three['module_bay']['label'] == "TEST" - - test_three['msg'] == "module_bay Network Module in C9300-DEMO position 0 updated with label TEST" - -- name: "MODULE BAY 4: ASSERT - Delete" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - state: absent - register: test_four - -- name: "MODULE BAY 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module_bay Network Module in C9300-DEMO position 0 deleted" - -- name: "MODULE BAY 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - state: absent - register: test_five - -- name: "MODULE BAY 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module_bay'] == None - - test_five['msg'] == "module_bay Network Module already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_module_type.yml b/tests/integration/targets/v3.6/tasks/netbox_module_type.yml deleted file mode 100644 index 8ab077803..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_module_type.yml +++ /dev/null @@ -1,97 +0,0 @@ ---- -## -## -### NETBOX_MODULE_TYPE -## -## -- name: "MODULE_TYPE 1: Necessary info creation" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_one - -- name: "MODULE_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module_type']['model'] == "ws-test-3750" - - test_one['module_type']['manufacturer'] == 3 - - test_one['msg'] == "module_type ws-test-3750 created" - -- name: "MODULE_TYPE 2: Create duplicate" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_two - -- name: "MODULE_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_one['module_type']['model'] == "ws-test-3750" - - test_one['module_type']['manufacturer'] == 3 - - test_two['msg'] == "module_type ws-test-3750 already exists" - -- name: "MODULE_TYPE 3: ASSERT - Update" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - part_number: ws-3750g-v2 - state: present - register: test_three - -- name: "MODULE_TYPE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['part_number'] == "ws-3750g-v2" - - test_three['module_type']['model'] == "ws-test-3750" - - test_three['module_type']['manufacturer'] == 3 - - test_three['module_type']['part_number'] == "ws-3750g-v2" - - test_three['msg'] == "module_type ws-test-3750 updated" - -- name: "MODULE_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - state: absent - register: test_four - -- name: "MODULE_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module_type ws-test-3750 deleted" - -- name: "MODULE_TYPE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Test Module Type - state: absent - register: test_five - -- name: "MODULE_TYPE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module_type'] == None - - test_five['msg'] == "module_type Test Module Type already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_feed.yml b/tests/integration/targets/v3.6/tasks/netbox_power_feed.yml deleted file mode 100644 index f4ac71e01..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_feed.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_FEED -## -## -- name: "POWER_FEED 1: Necessary info creation" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - state: present - register: test_one - -- name: "POWER_FEED 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_feed']['name'] == "Power Feed" - - test_one['power_feed']['power_panel'] == 1 - - test_one['msg'] == "power_feed Power Feed created" - -- name: "POWER_FEED 2: Create duplicate" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - state: present - register: test_two - -- name: "POWER_FEED 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_feed']['name'] == "Power Feed" - - test_two['power_feed']['power_panel'] == 1 - - test_two['msg'] == "power_feed Power Feed already exists" - -- name: "POWER_FEED 3: Update power_feed with other fields" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - status: offline - type: redundant - supply: dc - phase: three-phase - voltage: 400 - amperage: 32 - max_utilization: 25 - comments: totally normal power feed - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update power_feed with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "offline" - - test_three['diff']['after']['type'] == "redundant" - - test_three['diff']['after']['supply'] == "dc" - - test_three['diff']['after']['phase'] == "three-phase" - - test_three['diff']['after']['voltage'] == 400 - - test_three['diff']['after']['amperage'] == 32 - - test_three['diff']['after']['max_utilization'] == 25 - - test_three['diff']['after']['comments'] == "totally normal power feed" - - test_three['power_feed']['name'] == "Power Feed" - - test_three['power_feed']['power_panel'] == 1 - - test_three['power_feed']['status'] == "offline" - - test_three['power_feed']['type'] == "redundant" - - test_three['power_feed']['supply'] == "dc" - - test_three['power_feed']['phase'] == "three-phase" - - test_three['power_feed']['voltage'] == 400 - - test_three['power_feed']['amperage'] == 32 - - test_three['power_feed']['max_utilization'] == 25 - - test_three['power_feed']['comments'] == "totally normal power feed" - - test_three['msg'] == "power_feed Power Feed updated" - -- name: "POWER_FEED 4: Create Power Feed for Delete Test" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed 2 - power_panel: Power Panel - state: present - register: test_four - -- name: "POWER_FEED 4: ASSERT - Create Power Feed for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_feed']['name'] == "Power Feed 2" - - test_four['power_feed']['power_panel'] == 1 - - test_four['msg'] == "power_feed Power Feed 2 created" - -- name: "POWER_FEED 5: Delete Power Feed" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed 2 - power_panel: Power Panel - state: absent - register: test_five - -- name: "POWER_FEED 5: ASSERT - Delete Power Feed" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_feed Power Feed 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_outlet.yml b/tests/integration/targets/v3.6/tasks/netbox_power_outlet.yml deleted file mode 100644 index 84f9d3255..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_outlet.yml +++ /dev/null @@ -1,114 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_OUTLET -## -## -- name: "POWER_OUTLET 1: Necessary info creation" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - state: present - register: test_one - -- name: "POWER_OUTLET 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_outlet']['name'] == "Power Outlet" - - test_one['power_outlet']['device'] == 10 - - test_one['msg'] == "power_outlet Power Outlet created" - -- name: "POWER_OUTLET 2: Create duplicate" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - state: present - register: test_two - -- name: "POWER_OUTLET 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_outlet']['name'] == "Power Outlet" - - test_two['power_outlet']['device'] == 10 - - test_two['msg'] == "power_outlet Power Outlet already exists" - -- name: "POWER_OUTLET 3: Update power_outlet with other fields" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - type: ita-e - power_port: Power Port - feed_leg: B - description: test description - state: present - register: test_three - -- name: "POWER_OUTLET 3: ASSERT - Update power_outlet with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['power_port'] == 1 - - test_three['diff']['after']['feed_leg'] == "B" - - test_three['diff']['after']['description'] == "test description" - - test_three['power_outlet']['name'] == "Power Outlet" - - test_three['power_outlet']['device'] == 10 - - test_three['power_outlet']['type'] == "ita-e" - - test_three['power_outlet']['power_port'] == 1 - - test_three['power_outlet']['feed_leg'] == "B" - - test_three['power_outlet']['description'] == "test description" - - test_three['msg'] == "power_outlet Power Outlet updated" - -- name: "POWER_OUTLET 4: Create Power Outlet for Delete Test" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet 2 - device: Device Power Tests - state: present - register: test_four - -- name: "POWER_OUTLET 4: ASSERT - Create Power Outlet for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_outlet']['name'] == "Power Outlet 2" - - test_four['power_outlet']['device'] == 10 - - test_four['msg'] == "power_outlet Power Outlet 2 created" - -- name: "POWER_OUTLET 5: Delete Power Outlet" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet 2 - device: Device Power Tests - state: absent - register: test_five - -- name: "POWER_OUTLET 5: ASSERT - Delete Power Outlet" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_outlet Power Outlet 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_outlet_template.yml b/tests/integration/targets/v3.6/tasks/netbox_power_outlet_template.yml deleted file mode 100644 index 14ff49d0c..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_outlet_template.yml +++ /dev/null @@ -1,111 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_OUTLET_TEMPLATE -## -## -- name: "POWER_OUTLET_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - state: present - register: test_one - -- name: "POWER_OUTLET_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_outlet_template']['name'] == "Power Outlet Template" - - test_one['power_outlet_template']['device_type'] == 8 - - test_one['msg'] == "power_outlet_template Power Outlet Template created" - -- name: "POWER_OUTLET_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - state: present - register: test_two - -- name: "POWER_OUTLET_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_outlet_template']['name'] == "Power Outlet Template" - - test_two['power_outlet_template']['device_type'] == 8 - - test_two['msg'] == "power_outlet_template Power Outlet Template already exists" - -- name: "POWER_OUTLET_TEMPLATE 3: Update power_outlet_template with other fields" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - type: ita-e - power_port_template: Power Port Template - feed_leg: B - state: present - register: test_three - -- name: "POWER_OUTLET_TEMPLATE 3: ASSERT - Update power_outlet_template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['power_port'] == 1 - - test_three['diff']['after']['feed_leg'] == "B" - - test_three['power_outlet_template']['name'] == "Power Outlet Template" - - test_three['power_outlet_template']['device_type'] == 8 - - test_three['power_outlet_template']['type'] == "ita-e" - - test_three['power_outlet_template']['power_port'] == 1 - - test_three['power_outlet_template']['feed_leg'] == "B" - - test_three['msg'] == "power_outlet_template Power Outlet Template updated" - -- name: "POWER_OUTLET_TEMPLATE 4: Create Power Outlet Template for Delete Test" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template 2 - device_type: Device Type Power Tests - state: present - register: test_four - -- name: "POWER_OUTLET_TEMPLATE 4: ASSERT - Create Power Outlet Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_outlet_template']['name'] == "Power Outlet Template 2" - - test_four['power_outlet_template']['device_type'] == 8 - - test_four['msg'] == "power_outlet_template Power Outlet Template 2 created" - -- name: "POWER_OUTLET_TEMPLATE 5: Delete Power Outlet Template" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template 2 - device_type: Device Type Power Tests - state: absent - register: test_five - -- name: "POWER_OUTLET_TEMPLATE 5: ASSERT - Delete Power Outlet Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_outlet_template Power Outlet Template 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_panel.yml b/tests/integration/targets/v3.6/tasks/netbox_power_panel.yml deleted file mode 100644 index e568a75f4..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_panel.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PANEL -## -## -- name: "POWER_PANEL 1: Necessary info creation" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - state: present - register: test_one - -- name: "POWER_PANEL 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_panel']['name'] == "Power Panel" - - test_one['power_panel']['site'] == 1 - - test_one['msg'] == "power_panel Power Panel created" - -- name: "POWER_PANEL 2: Create duplicate" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - state: present - register: test_two - -- name: "POWER_PANEL 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_panel']['name'] == "Power Panel" - - test_two['power_panel']['site'] == 1 - - test_two['msg'] == "power_panel Power Panel already exists" - -- name: "POWER_PANEL 3: Update power_panel with other fields" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - location: Test Rack Group - state: present - register: test_three - -- name: "POWER_PANEL 3: ASSERT - Update power_panel with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['location'] == 1 - - test_three['power_panel']['name'] == "Power Panel" - - test_three['power_panel']['site'] == 1 - - test_three['power_panel']['location'] == 1 - - test_three['msg'] == "power_panel Power Panel updated" - -- name: "POWER_PANEL 4: Create Power Panel for Delete Test" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel 2 - site: Test Site - state: present - register: test_four - -- name: "POWER_PANEL 4: ASSERT - Create Power Panel for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_panel']['name'] == "Power Panel 2" - - test_four['power_panel']['site'] == 1 - - test_four['msg'] == "power_panel Power Panel 2 created" - -- name: "POWER_PANEL 5: Delete Power Panel" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel 2 - site: Test Site - state: absent - register: test_five - -- name: "POWER_PANEL 5: ASSERT - Delete Power Panel" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_panel Power Panel 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_port.yml b/tests/integration/targets/v3.6/tasks/netbox_power_port.yml deleted file mode 100644 index 311820ccd..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_port.yml +++ /dev/null @@ -1,125 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PORT -## -## -- name: "POWER_PORT 0: Create device for testing power ports" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Power Tests - device_type: Cisco Test - device_role: Core Switch - site: Test Site - state: present - -- name: "POWER_PORT 1: Necessary info creation" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - state: present - register: test_one - -- name: "POWER_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_port']['name'] == "Power Port" - - test_one['power_port']['device'] == 10 - - test_one['msg'] == "power_port Power Port created" - -- name: "POWER_PORT 2: Create duplicate" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - state: present - register: test_two - -- name: "POWER_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_port']['name'] == "Power Port" - - test_two['power_port']['device'] == 10 - - test_two['msg'] == "power_port Power Port already exists" - -- name: "POWER_FEED 3: Update power_port with other fields" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - description: test description - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update power_port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['allocated_draw'] == 10 - - test_three['diff']['after']['maximum_draw'] == 20 - - test_three['diff']['after']['description'] == "test description" - - test_three['power_port']['name'] == "Power Port" - - test_three['power_port']['device'] == 10 - - test_three['power_port']['type'] == "ita-e" - - test_three['power_port']['allocated_draw'] == 10 - - test_three['power_port']['maximum_draw'] == 20 - - test_three['power_port']['description'] == "test description" - - test_three['msg'] == "power_port Power Port updated" - -- name: "POWER_PORT 4: Create Power Port for Delete Test" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port 2 - device: Device Power Tests - state: present - register: test_four - -- name: "POWER_PORT 4: ASSERT - Create Power Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_port']['name'] == "Power Port 2" - - test_four['power_port']['device'] == 10 - - test_four['msg'] == "power_port Power Port 2 created" - -- name: "POWER_PORT 5: Delete Power Port" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port 2 - device: Device Power Tests - state: absent - register: test_five - -- name: "POWER_PORT 5: ASSERT - Delete Power Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_port Power Port 2 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_power_port_template.yml b/tests/integration/targets/v3.6/tasks/netbox_power_port_template.yml deleted file mode 100644 index b413c29ce..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_power_port_template.yml +++ /dev/null @@ -1,212 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PORT_TEMPLATE -## -## -- name: "POWER_PORT_TEMPLATE 0.1: Create device type for testing power ports on device types" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Device Type Power Tests - manufacturer: Test Manufacturer - state: present - -- name: "POWER_PORT_TEMPLATE 0.2: Create module type for testing power ports on module types" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Module Type Power Tests - manufacturer: Test Manufacturer - state: present - -- name: "POWER_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - state: present - register: test_one - -- name: "POWER_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_port_template']['name'] == "Power Port Template" - - test_one['power_port_template']['device_type'] == 8 - - test_one['msg'] == "power_port_template Power Port Template created" - -- name: "POWER_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - state: present - register: test_two - -- name: "POWER_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_port_template']['name'] == "Power Port Template" - - test_two['power_port_template']['device_type'] == 8 - - test_two['msg'] == "power_port_template Power Port Template already exists" - -- name: "POWER_PORT_TEMPLATE 3: Update power_port_template with other fields" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - state: present - register: test_three - -- name: "POWER_PORT_TEMPLATE 3: ASSERT - Update power_port_template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['allocated_draw'] == 10 - - test_three['diff']['after']['maximum_draw'] == 20 - - test_three['power_port_template']['name'] == "Power Port Template" - - test_three['power_port_template']['device_type'] == 8 - - test_three['power_port_template']['type'] == "ita-e" - - test_three['power_port_template']['allocated_draw'] == 10 - - test_three['power_port_template']['maximum_draw'] == 20 - - test_three['msg'] == "power_port_template Power Port Template updated" - -- name: "POWER_PORT_TEMPLATE 4: Create Power Port Template for Delete Test" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template 2 - device_type: Device Type Power Tests - state: present - register: test_four - -- name: "POWER_PORT_TEMPLATE 4: ASSERT - Create Power Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_port_template']['name'] == "Power Port Template 2" - - test_four['power_port_template']['device_type'] == 8 - - test_four['msg'] == "power_port_template Power Port Template 2 created" - -- name: "POWER_PORT_TEMPLATE 5: Delete Power Port Template" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template 2 - device_type: Device Type Power Tests - state: absent - register: test_five - -- name: "POWER_PORT_TEMPLATE 5: ASSERT - Delete Power Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_port_template Power Port Template 2 deleted" - -- name: "POWER_PORT_TEMPLATE 6: Necessary info creation" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: present - register: test_six - -- name: "POWER_PORT_TEMPLATE 6: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['power_port_template']['name'] == "Module Power Port Template" - - test_six['power_port_template']['module_type'] == 1 - - test_six['msg'] == "power_port_template Module Power Port Template created" - -- name: "POWER_PORT_TEMPLATE 7: Create duplicate" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: present - register: test_seven - -- name: "POWER_PORT_TEMPLATE 7: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_seven['changed'] - - test_seven['power_port_template']['name'] == "Module Power Port Template" - - test_seven['power_port_template']['module_type'] == 1 - - test_seven['msg'] == "power_port_template Module Power Port Template already exists" - -- name: "POWER_PORT_TEMPLATE 8: Update power_port_template with other fields" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - state: present - register: test_eight - -- name: "POWER_PORT_TEMPLATE 8: ASSERT - Update power_port_template with other fields" - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['after']['type'] == "ita-e" - - test_eight['diff']['after']['allocated_draw'] == 10 - - test_eight['diff']['after']['maximum_draw'] == 20 - - test_eight['power_port_template']['name'] == "Module Power Port Template" - - test_eight['power_port_template']['module_type'] == 1 - - test_eight['power_port_template']['type'] == "ita-e" - - test_eight['power_port_template']['allocated_draw'] == 10 - - test_eight['power_port_template']['maximum_draw'] == 20 - - test_eight['msg'] == "power_port_template Module Power Port Template updated" - -- name: "POWER_PORT_TEMPLATE 9: Delete Power Port Template" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: absent - register: test_nine - -- name: "POWER_PORT_TEMPLATE 9: ASSERT - Delete Power Port Template" - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "present" - - test_nine['diff']['after']['state'] == "absent" - - test_nine['msg'] == "power_port_template Module Power Port Template deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_prefix.yml b/tests/integration/targets/v3.6/tasks/netbox_prefix.yml deleted file mode 100644 index 64adae855..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_prefix.yml +++ /dev/null @@ -1,245 +0,0 @@ ---- -## -## -### NETBOX_PREFIX -## -## -- name: 1 - Create prefix within NetBox with only required information - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['msg'] == "prefix 10.156.0.0/19 created" - - test_one['prefix']['prefix'] == "10.156.0.0/19" - -- name: 2 - Duplicate - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "prefix 10.156.0.0/19 already exists" - - test_two['prefix']['prefix'] == "10.156.0.0/19" - -- name: 3 - Update 10.156.0.0/19 - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - site: Test Site - status: Reserved - description: This prefix has been updated - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['site'] == 1 - - test_three['diff']['after']['status'] == "reserved" - - test_three['diff']['after']['description'] == "This prefix has been updated" - - test_three['msg'] == "prefix 10.156.0.0/19 updated" - - test_three['prefix']['prefix'] == "10.156.0.0/19" - - test_three['prefix']['site'] == 1 - - test_three['prefix']['status'] == "reserved" - - test_three['prefix']['description'] == "This prefix has been updated" - -- name: 4 - Delete prefix within netbox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "prefix 10.156.0.0/19 deleted" - -- name: 5 - Create prefix with several specified options - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.156.32.0/19 - site: Test Site - vrf: Test VRF - tenant: Test Tenant - vlan: - name: Test VLAN - site: Test Site - tenant: Test Tenant - vlan_group: Test Vlan Group - status: Reserved - prefix_role: Network of care - description: Test description - is_pool: true - tags: - - Schnozzberry - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['msg'] == "prefix 10.156.32.0/19 created" - - test_five['prefix']['prefix'] == "10.156.32.0/19" - - test_five['prefix']['family'] == 4 - - test_five['prefix']['site'] == 1 - - test_five['prefix']['vrf'] == 1 - - test_five['prefix']['tenant'] == 1 - - test_five['prefix']['vlan'] == 4 - - test_five['prefix']['status'] == "reserved" - - test_five['prefix']['role'] == 1 - - test_five['prefix']['description'] == "Test description" - - test_five['prefix']['is_pool'] == true - - test_five['prefix']['tags'][0] == 4 - -- name: 6 - Get a new /24 inside 10.156.0.0/19 within NetBox - Parent doesn't exist - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['msg'] == "Parent prefix does not exist - 10.156.0.0/19" - -- name: 7 - Create prefix within NetBox with only required information - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "absent" - - test_seven['diff']['after']['state'] == "present" - - test_seven['msg'] == "prefix 10.156.0.0/19 created" - - test_seven['prefix']['prefix'] == "10.156.0.0/19" - -- name: 8 - Get a new /24 inside 10.156.0.0/19 within NetBox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "absent" - - test_eight['diff']['after']['state'] == "present" - - test_eight['msg'] == "prefix 10.156.0.0/24 created" - - test_eight['prefix']['prefix'] == "10.156.0.0/24" - -- name: 9 - Create 10.157.0.0/19 - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.157.0.0/19 - vrf: Test VRF - site: Test Site - state: present - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "absent" - - test_nine['diff']['after']['state'] == "present" - - test_nine['msg'] == "prefix 10.157.0.0/19 created" - - test_nine['prefix']['prefix'] == "10.157.0.0/19" - - test_nine['prefix']['site'] == 1 - - test_nine['prefix']['vrf'] == 1 - -- name: 10 - Get a new /24 inside 10.157.0.0/19 within NetBox with additional values - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.157.0.0/19 - prefix_length: 24 - vrf: Test VRF - site: Test Site - state: present - first_available: true - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['diff']['before']['state'] == "absent" - - test_ten['diff']['after']['state'] == "present" - - test_ten['msg'] == "prefix 10.157.0.0/24 created" - - test_ten['prefix']['prefix'] == "10.157.0.0/24" - - test_ten['prefix']['site'] == 1 - - test_ten['prefix']['vrf'] == 1 - -- name: 11 - Get a new /24 inside 10.156.0.0/19 within NetBox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is changed - - test_eleven['diff']['before']['state'] == "absent" - - test_eleven['diff']['after']['state'] == "present" - - test_eleven['msg'] == "prefix 10.156.1.0/24 created" - - test_eleven['prefix']['prefix'] == "10.156.1.0/24" diff --git a/tests/integration/targets/v3.6/tasks/netbox_provider.yml b/tests/integration/targets/v3.6/tasks/netbox_provider.yml deleted file mode 100644 index ec7b2c30a..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_provider.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_PROVIDER -## -## -- name: "NETBOX_PROVIDER 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: present - register: test_one - -- name: "NETBOX_PROVIDER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['provider']['name'] == "Test Provider One" - - test_one['provider']['slug'] == "test-provider-one" - - test_one['msg'] == "provider Test Provider One created" - -- name: "NETBOX_PROVIDER 2: Duplicate" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: present - register: test_two - -- name: "NETBOX_PROVIDER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['provider']['name'] == "Test Provider One" - - test_two['provider']['slug'] == "test-provider-one" - - test_two['msg'] == "provider Test Provider One already exists" - -- name: "NETBOX_PROVIDER 3: Update provider with other fields" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - comments: BAD PROVIDER - state: present - register: test_three - -- name: "NETBOX_PROVIDER 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "BAD PROVIDER" - - test_three['provider']['name'] == "Test Provider One" - - test_three['provider']['slug'] == "test-provider-one" - - test_three['provider']['comments'] == "BAD PROVIDER" - - test_three['msg'] == "provider Test Provider One updated" - -- name: "NETBOX_PROVIDER 4: Delete provider within netbox" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: absent - register: test_four - -- name: "NETBOX_PROVIDER 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['provider']['name'] == "Test Provider One" - - test_four['provider']['slug'] == "test-provider-one" - - test_four['provider']['comments'] == "BAD PROVIDER" - - test_four['msg'] == "provider Test Provider One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_provider_network.yml b/tests/integration/targets/v3.6/tasks/netbox_provider_network.yml deleted file mode 100644 index 6f8b2b331..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_provider_network.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -## -## -### NETBOX_PROVIDER -## -## -- name: "NETBOX_PROVIDER_NETWORK 1: Create provider network within NetBox with only required information" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: present - register: test_one - -- name: "NETBOX_PROVIDER_NETWORK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['provider_network']['name'] == "Test Provider Network One" - - test_one['msg'] == "provider_network Test Provider Network One created" - -- name: "NETBOX_PROVIDER_NETWORK 2: Duplicate" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: present - register: test_two - -- name: "NETBOX_PROVIDER_NETWORK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['provider_network']['name'] == "Test Provider Network One" - - test_two['msg'] == "provider_network Test Provider Network One already exists" - -- name: "NETBOX_PROVIDER_NETWORK 3: Update provider network with other fields" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - description: Describe a Provider Network - comments: A provider network - state: present - register: test_three - -- name: "NETBOX_PROVIDER_NETWORK 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "A provider network" - - test_three['diff']['after']['description'] == "Describe a Provider Network" - - test_three['provider_network']['name'] == "Test Provider Network One" - - test_three['provider_network']['comments'] == "A provider network" - - test_three['provider_network']['description'] == "Describe a Provider Network" - - test_three['msg'] == "provider_network Test Provider Network One updated" - -- name: "NETBOX_PROVIDER_NETWORK 4: Delete provider within netbox" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: absent - register: test_four - -- name: "NETBOX_PROVIDER_NETWORK 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['provider_network']['name'] == "Test Provider Network One" - - test_four['provider_network']['comments'] == "A provider network" - - test_four['provider_network']['description'] == "Describe a Provider Network" - - test_four['msg'] == "provider_network Test Provider Network One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_rack_group.yml b/tests/integration/targets/v3.6/tasks/netbox_rack_group.yml deleted file mode 100644 index 40dba8408..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_rack_group.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -## -## -### NETBOX_RACK_GROUP -## -## -- name: "RACK_GROUP 1: Necessary info creation" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - site: Test Site - state: present - register: test_one - -- name: "RACK_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack_group']['name'] == "Rack Group" - - test_one['rack_group']['slug'] == "rack-group" - - test_one['rack_group']['site'] == 1 - - test_one['msg'] == "rack_group Rack Group created" - -- name: "RACK_GROUP 2: Create duplicate" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - site: Test Site - state: present - register: test_two - -- name: "RACK_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack_group']['name'] == "Rack Group" - - test_two['rack_group']['slug'] == "rack-group" - - test_two['rack_group']['site'] == 1 - - test_two['msg'] == "rack_group Rack Group already exists" - -- name: "RACK_GROUP 3: ASSERT - Delete" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - state: absent - register: test_three - -- name: "RACK_GROUP 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "rack_group Rack Group deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_rack_role.yml b/tests/integration/targets/v3.6/tasks/netbox_rack_role.yml deleted file mode 100644 index b60fcab8c..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_rack_role.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -## -## -### NETBOX_RACK_ROLE -## -## -- name: "RACK_ROLE 1: Necessary info creation" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - color: ffffff - state: present - register: test_one - -- name: "RACK_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack_role']['name'] == "Rack Role" - - test_one['rack_role']['slug'] == "rack-role" - - test_one['rack_role']['color'] == "ffffff" - - test_one['msg'] == "rack_role Rack Role created" - -- name: "RACK_ROLE 2: Create duplicate" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - state: present - register: test_two - -- name: "RACK_ROLE 1: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack_role']['name'] == "Rack Role" - - test_two['rack_role']['slug'] == "rack-role" - - test_two['rack_role']['color'] == "ffffff" - - test_two['msg'] == "rack_role Rack Role already exists" - -- name: "RACK_ROLE 3: Update" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - color: "003EFF" - description: This is a Rack Role test - state: present - register: test_three - -- name: "RACK_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['rack_role']['name'] == "Rack Role" - - test_three['rack_role']['slug'] == "rack-role" - - test_three['rack_role']['color'] == "003eff" - - test_three['rack_role']['description'] == "This is a Rack Role test" - - test_three['msg'] == "rack_role Rack Role updated" - -- name: "RACK_ROLE 4: Delete" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - state: absent - register: test_four - -- name: "RACK_ROLE 4: ASSERT - Update" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "rack_role Rack Role deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_rear_port.yml b/tests/integration/targets/v3.6/tasks/netbox_rear_port.yml deleted file mode 100644 index d186233be..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_rear_port.yml +++ /dev/null @@ -1,139 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_REAR_PORT -## -## -- name: "REAR_PORT 1: Necessary info creation" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - state: present - register: test_one - -- name: "REAR_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rear_port']['name'] == "Rear Port" - - test_one['rear_port']['device'] == 1 - - test_one['rear_port']['type'] == "bnc" - - test_one['msg'] == "rear_port Rear Port created" - -- name: "REAR_PORT 2: Create duplicate" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - state: present - register: test_two - -- name: "REAR_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rear_port']['name'] == "Rear Port" - - test_two['rear_port']['device'] == 1 - - test_two['rear_port']['type'] == "bnc" - - test_two['msg'] == "rear_port Rear Port already exists" - -- name: "REAR_PORT 3: Update Rear Port with other fields" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - positions: 5 - description: test description - state: present - register: test_three - -- name: "REAR_PORT 3: ASSERT - Update Rear Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['positions'] == 5 - - test_three['diff']['after']['description'] == "test description" - - test_three['rear_port']['name'] == "Rear Port" - - test_three['rear_port']['device'] == 1 - - test_three['rear_port']['type'] == "bnc" - - test_three['rear_port']['positions'] == 5 - - test_three['rear_port']['description'] == "test description" - - test_three['msg'] == "rear_port Rear Port updated" - -- name: "REAR_PORT 4: Create Rear Port for Delete Test" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port 2 - device: test100 - type: bnc - state: present - register: test_four - -- name: "REAR_PORT 4: ASSERT - Create Rear Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['rear_port']['name'] == "Rear Port 2" - - test_four['rear_port']['device'] == 1 - - test_four['rear_port']['type'] == "bnc" - - test_four['msg'] == "rear_port Rear Port 2 created" - -- name: "REAR_PORT 5: Delete Rear Port" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port 2 - device: test100 - type: bnc - state: absent - register: test_five - -- name: "REAR_PORT 5: ASSERT - Delete Rear Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "rear_port Rear Port 2 deleted" - -- name: "REAR_PORT 6: Create second Rear Port" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: Test Nexus One - type: bnc - state: present - register: test_six - -- name: "REAR_PORT 6: ASSERT - Create second Rear Port" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['rear_port']['name'] == "Rear Port" - - test_six['rear_port']['device'] == 4 - - test_six['rear_port']['type'] == "bnc" - - test_six['msg'] == "rear_port Rear Port created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_rear_port_template.yml b/tests/integration/targets/v3.6/tasks/netbox_rear_port_template.yml deleted file mode 100644 index 5342627d0..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_rear_port_template.yml +++ /dev/null @@ -1,136 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_REAR_PORT_TEMPLATE -## -## -- name: "REAR_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - state: present - register: test_one - -- name: "REAR_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rear_port_template']['name'] == "Rear Port Template" - - test_one['rear_port_template']['device_type'] == 1 - - test_one['rear_port_template']['type'] == "bnc" - - test_one['msg'] == "rear_port_template Rear Port Template created" - -- name: "REAR_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - state: present - register: test_two - -- name: "REAR_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rear_port_template']['name'] == "Rear Port Template" - - test_two['rear_port_template']['device_type'] == 1 - - test_two['rear_port_template']['type'] == "bnc" - - test_two['msg'] == "rear_port_template Rear Port Template already exists" - -- name: "REAR_PORT_TEMPLATE 3: Update Rear Port Template with other fields" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - positions: 5 - state: present - register: test_three - -- name: "REAR_PORT_TEMPLATE 3: ASSERT - Update Rear Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['positions'] == 5 - - test_three['rear_port_template']['name'] == "Rear Port Template" - - test_three['rear_port_template']['device_type'] == 1 - - test_three['rear_port_template']['type'] == "bnc" - - test_three['rear_port_template']['positions'] == 5 - - test_three['msg'] == "rear_port_template Rear Port Template updated" - -- name: "REAR_PORT_TEMPLATE 4: Create Rear Port Template for Delete Test" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Cisco Test - type: bnc - state: present - register: test_four - -- name: "REAR_PORT_TEMPLATE 4: ASSERT - Create Rear Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['rear_port_template']['name'] == "Rear Port Template 2" - - test_four['rear_port_template']['device_type'] == 1 - - test_four['rear_port_template']['type'] == "bnc" - - test_four['msg'] == "rear_port_template Rear Port Template 2 created" - -- name: "REAR_PORT_TEMPLATE 5: Delete Rear Port Template" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Cisco Test - type: bnc - state: absent - register: test_five - -- name: "REAR_PORT_TEMPLATE 5: ASSERT - Delete Rear Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "rear_port_template Rear Port Template 2 deleted" - -- name: "REAR_PORT_TEMPLATE 6: Create second Rear Port Template" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Arista Test - type: bnc - state: present - register: test_six - -- name: "REAR_PORT_TEMPLATE 6: ASSERT - Create second Rear Port Template" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['rear_port_template']['name'] == "Rear Port Template 2" - - test_six['rear_port_template']['device_type'] == 2 - - test_six['rear_port_template']['type'] == "bnc" - - test_six['msg'] == "rear_port_template Rear Port Template 2 created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_region.yml b/tests/integration/targets/v3.6/tasks/netbox_region.yml deleted file mode 100644 index 0395db435..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_region.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_REGION -## -## -- name: "REGION 1: Necessary info creation" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: present - register: test_one - -- name: "REGION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['region']['name'] == "Test Region One" - - test_one['region']['slug'] == "test-region-one" - - test_one['msg'] == "region Test Region One created" - -- name: "REGION 2: Create duplicate" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: present - register: test_two - -- name: "REGION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['region']['name'] == "Test Region One" - - test_two['region']['slug'] == "test-region-one" - - test_two['msg'] == "region Test Region One already exists" - -- name: "REGION 3: ASSERT - Update" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - parent_region: Test Region - state: present - register: test_three - -- name: "REGION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 1 - - test_three['region']['name'] == "Test Region One" - - test_three['region']['slug'] == "test-region-one" - - test_three['region']['parent'] == 1 - - test_three['msg'] == "region Test Region One updated" - -- name: "REGION 4: ASSERT - Delete" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: absent - register: test_four - -- name: "REGION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['region']['name'] == "Test Region One" - - test_four['region']['slug'] == "test-region-one" - - test_four['region']['parent'] == 1 - - test_four['msg'] == "region Test Region One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_rir.yml b/tests/integration/targets/v3.6/tasks/netbox_rir.yml deleted file mode 100644 index 3a7bf79fa..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_rir.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_RIR -## -## -- name: "RIR 1: Necessary info creation" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: present - register: test_one - -- name: "RIR 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rir']['name'] == "Test RIR One" - - test_one['rir']['slug'] == "test-rir-one" - - test_one['msg'] == "rir Test RIR One created" - -- name: "RIR 2: Create duplicate" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: present - register: test_two - -- name: "RIR 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rir']['name'] == "Test RIR One" - - test_two['rir']['slug'] == "test-rir-one" - - test_two['msg'] == "rir Test RIR One already exists" - -- name: "RIR 3: ASSERT - Update" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - is_private: true - state: present - register: test_three - -- name: "RIR 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['is_private'] == true - - test_three['rir']['name'] == "Test RIR One" - - test_three['rir']['slug'] == "test-rir-one" - - test_three['rir']['is_private'] == true - - test_three['msg'] == "rir Test RIR One updated" - -- name: "RIR 4: ASSERT - Delete" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: absent - register: test_four - -- name: "RIR 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['rir']['name'] == "Test RIR One" - - test_four['rir']['slug'] == "test-rir-one" - - test_four['rir']['is_private'] == true - - test_four['msg'] == "rir Test RIR One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_route_target.yml b/tests/integration/targets/v3.6/tasks/netbox_route_target.yml deleted file mode 100644 index c2576c4cc..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_route_target.yml +++ /dev/null @@ -1,204 +0,0 @@ ---- -# -# ADD (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_ADD: Check Mode - Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD: (ASSERT) Check Mode - Add all fields except description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['diff']['after']['state'] == "present" - - test_results['diff']['before']['state'] == "absent" - - test_results['msg'] == "route_target 65000:65001 created" - -# ADD -- name: "NETBOX_ROUTE_TARGET_ADD: Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD: (ASSERT) Add all fields except description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['diff']['after']['state'] == "present" - - test_results['diff']['before']['state'] == "absent" - - test_results['msg'] == "route_target 65000:65001 created" - -# ADD (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_ADD_IDEM: (IDEMPOTENT) Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD_IDEM: (IDEMPOTENT) Add all fields except description" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['msg'] == "route_target 65000:65001 already exists" - -# -# UPDATE (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_UPDATE: Check Mode - Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - description: NEW DESCRIPTION - tenant: Test Tenant - tags: - - first - - second - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE: (ASSERT) Check Mode - Update description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['diff']['after']['description'] == "NEW DESCRIPTION" - - test_results['diff']['before']['description'] == "" - - test_results['msg'] == "route_target 65000:65001 updated" - -# UPDATE -- name: "NETBOX_ROUTE_TARGET_UPDATE: Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - description: NEW DESCRIPTION - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE: (ASSERT) Update description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['diff']['after']['description'] == "NEW DESCRIPTION" - - test_results['diff']['before']['description'] == "" - - test_results['msg'] == "route_target 65000:65001 updated" - -# UPDATE (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_UPDATE_IDEM: (IDEMPOTENT) Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - description: NEW DESCRIPTION - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE_IDEM: (IDEMPOTENT) Update description" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['msg'] == "route_target 65000:65001 already exists" - -# -# DELETE (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_DELETE: Check Mode - Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE: (ASSERT) Check Mode - Delete route target" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['diff']['after']['state'] == "absent" - - test_results['diff']['before']['state'] == "present" - - test_results['msg'] == "route_target 65000:65001 deleted" - -# DELETE -- name: "NETBOX_ROUTE_TARGET_DELETE: Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE: (ASSERT) Delete route target" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['diff']['after']['state'] == "absent" - - test_results['diff']['before']['state'] == "present" - - test_results['msg'] == "route_target 65000:65001 deleted" - -# DELETE (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_DELETE_IDEM: (IDEMPOTENT) Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE_IDEM: (IDEMPOTENT) Delete route target" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['msg'] == "route_target 65000:65001 already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_service.yml b/tests/integration/targets/v3.6/tasks/netbox_service.yml deleted file mode 100644 index d937e50a6..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_service.yml +++ /dev/null @@ -1,196 +0,0 @@ ---- -## -## -### NETBOX_SERVICE -## -## -- name: 1 - Device with required information needs to add new service - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: FOR_SERVICE - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - -- name: "NETBOX_SERVICE: Create new service" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_create - -- name: NETBOX_SERVICE ASSERT - Create - ansible.builtin.assert: - that: - - test_service_create is changed - - test_service_create['services']['name'] == "node-exporter" - - test_service_create['services']['ports'] == [9100] - - test_service_create['services']['protocol'] == "tcp" - - test_service_create['diff']['after']['state'] == "present" - - test_service_create['diff']['before']['state'] == "absent" - - test_service_create['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Test idempotence" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_idempotence - -- name: NETBOX_SERVICE ASSERT - Not changed - ansible.builtin.assert: - that: - - test_service_idempotence['services']['name'] == "node-exporter" - - test_service_idempotence['services']['ports'] == [9100] - - test_service_idempotence['services']['protocol'] == "tcp" - - test_service_idempotence['msg'] == "services node-exporter already exists" - -- name: "NETBOX_SERVICE: Test update" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - ports: - - 9100 - - 9200 - protocol: TCP - tags: - - Schnozzberry - state: present - register: test_service_update - -- name: NETBOX_SERVICE ASSERT - Service has been updated - ansible.builtin.assert: - that: - - test_service_update is changed - - test_service_update['diff']['after']['tags'][0] == 4 - - test_service_update['diff']['after']['ports'] == [9100, 9200] - - test_service_update['msg'] == "services node-exporter updated" - -- name: "NETBOX_SERVICE: Test same details, but different protocol - Create" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: UDP - state: present - register: test_service_protocol - -- name: NETBOX_SERVICE ASSERT - Different protocol - Create - ansible.builtin.assert: - that: - - test_service_protocol is changed - - test_service_protocol['diff']['after']['state'] == "present" - - test_service_protocol['diff']['before']['state'] == "absent" - - test_service_protocol['services']['name'] == "node-exporter" - - test_service_protocol['services']['ports'] == [9100] - - test_service_protocol['services']['protocol'] == "udp" - - test_service_protocol['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Test service deletion" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: UDP - state: absent - register: test_service_delete - -- name: NETBOX_SERVICE ASSERT - Service has been deleted - ansible.builtin.assert: - that: - - test_service_delete is changed - - test_service_delete['diff']['after']['state'] == "absent" - - test_service_delete['diff']['before']['state'] == "present" - - test_service_delete['msg'] == "services node-exporter deleted" - -- name: "NETBOX_SERVICE: Test service IP addresses" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: node-exporter - port: 9100 - protocol: UDP - ipaddresses: - - address: 172.16.180.1/24 - state: present - register: test_service_ip_addresses - -- name: NETBOX_SERVICE ASSERT - Service has been created with IP address - ansible.builtin.assert: - that: - - test_service_ip_addresses is changed - - test_service_ip_addresses['diff']['after']['state'] == "present" - - test_service_ip_addresses['diff']['before']['state'] == "absent" - - test_service_ip_addresses['services']['name'] == "node-exporter" - - test_service_ip_addresses['services']['ports'] == [9100] - - test_service_ip_addresses['services']['protocol'] == "udp" - - test_service_ip_addresses['services']['ipaddresses'] is defined - - test_service_ip_addresses['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Missing both device & virtual_machine options - Tests required_one_of" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: node-exporter - port: 9100 - protocol: UDP - ipaddresses: - - address: 172.16.180.1/24 - state: present - ignore_errors: true - register: test_service_required_one_of - -- name: NETBOX_SERVICE ASSERT - Failed due to missing arguments - ansible.builtin.assert: - that: - - test_service_required_one_of is failed - - 'test_service_required_one_of["msg"] == "one of the following is required: device, virtual_machine"' - -- name: "NETBOX_SERVICE: Create new service on virtual_machine" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_create_vm - -- name: NETBOX_SERVICE ASSERT - Create - ansible.builtin.assert: - that: - - test_service_create_vm is changed - - test_service_create_vm['services']['name'] == "node-exporter" - - test_service_create_vm['services']['ports'] == [9100] - - test_service_create_vm['services']['protocol'] == "tcp" - - test_service_create_vm['diff']['after']['state'] == "present" - - test_service_create_vm['diff']['before']['state'] == "absent" - - test_service_create_vm['msg'] == "services node-exporter created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_service_template.yml b/tests/integration/targets/v3.6/tasks/netbox_service_template.yml deleted file mode 100644 index 507a566a4..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_service_template.yml +++ /dev/null @@ -1,115 +0,0 @@ ---- -## -## -### NETBOX_SERVICE_TEMPLATE -## -## -- name: "SERVICE_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - state: present - register: test_one - -- name: "SERVICE_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['service_template']['name'] == "Service Template for SSH" - - test_one['service_template']['ports'] == [22] - - test_one['service_template']['protocol'] == "tcp" - - test_one['msg'] == "service_template Service Template for SSH created" - -- name: "SERVICE_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - state: present - register: test_two - -- name: "SERVICE_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['service_template']['name'] == "Service Template for SSH" - - test_two['service_template']['ports'] == [22] - - test_two['service_template']['protocol'] == "tcp" - - test_two['msg'] == "service_template Service Template for SSH already exists" - -- name: "SERVICE_TEMPLATE 3: Update Service Template with other fields" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - comments: For SSH service - state: present - register: test_three - -- name: "SERVICE_TEMPLATE 3: ASSERT - Update Service Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "For SSH service" - - test_three['service_template']['name'] == "Service Template for SSH" - - test_three['service_template']['ports'] == [22] - - test_three['service_template']['protocol'] == "tcp" - - test_three['service_template']['comments'] == "For SSH service" - - test_three['msg'] == "service_template Service Template for SSH updated" - -- name: "SERVICE_TEMPLATE 4: Create Service Template for Delete Test" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for DNS - ports: - - 53 - protocol: udp - comments: Domain Name System - state: present - register: test_four - -- name: "SERVICE_TEMPLATE 4: ASSERT - Create Service Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['service_template']['name'] == "Service Template for DNS" - - test_four['service_template']['ports'] == [53] - - test_four['service_template']['protocol'] == "udp" - - test_four['service_template']['comments'] == "Domain Name System" - - test_four['msg'] == "service_template Service Template for DNS created" - -- name: "SERVICE_TEMPLATE 5: Delete Service Template" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for DNS - state: absent - register: test_five - -- name: "SERVICE_TEMPLATE 5: ASSERT - Delete Service Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "service_template Service Template for DNS deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_site.yml b/tests/integration/targets/v3.6/tasks/netbox_site.yml deleted file mode 100644 index a5861522e..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_site.yml +++ /dev/null @@ -1,165 +0,0 @@ ---- -## -## -### NETBOX_SITE -## -## -- name: 1 - Create site within NetBox with only required information - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['site']['name'] == "Test - Colorado" - - test_one['msg'] == "site Test - Colorado created" - -- name: 2 - Duplicate - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "site Test - Colorado already exists" - - test_two['site']['name'] == "Test - Colorado" - -- name: 3 - Update Test - Colorado - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - status: Planned - region: Test Region - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['region'] == 1 - - test_three['msg'] == "site Test - Colorado updated" - - test_three['site']['name'] == "Test - Colorado" - - test_three['site']['status'] == "planned" - - test_three['site']['region'] == 1 - -- name: 4 - Create site with all parameters - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - California - status: Planned - region: Test Region - site_group: Test Site Group - tenant: Test Tenant - facility: EquinoxCA7 - time_zone: America/Los Angeles - description: This is a test description - physical_address: Hollywood, CA, 90210 - shipping_address: Hollywood, CA, 90210 - latitude: "22.169141" - longitude: "-100.994041" - comments: "### Placeholder" - slug: test_california - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['site']['name'] == "Test - California" - - test_four['msg'] == "site Test - California created" - - test_four['site']['status'] == "planned" - - test_four['site']['region'] == 1 - - test_four['site']['group'] == 4 - - test_four['site']['tenant'] == 1 - - test_four['site']['facility'] == "EquinoxCA7" - - test_four['site']['time_zone'] == "America/Los_Angeles" - - test_four['site']['description'] == "This is a test description" - - test_four['site']['physical_address'] == "Hollywood, CA, 90210" - - test_four['site']['shipping_address'] == "Hollywood, CA, 90210" - - test_four['site']['latitude'] == 22.169141 - - test_four['site']['longitude'] == -100.994041 - - test_four['site']['comments'] == "### Placeholder" - - test_four['site']['slug'] == "test_california" - -- name: "NETBOX_SITE_IDEM: Idempotency - Create duplicate site with all parameters" - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - California - status: Planned - region: Test Region - site_group: Test Site Group - tenant: Test Tenant - facility: EquinoxCA7 - time_zone: America/Los Angeles - description: This is a test description - physical_address: Hollywood, CA, 90210 - shipping_address: Hollywood, CA, 90210 - latitude: "22.169141" - longitude: "-100.994041" - comments: "### Placeholder" - slug: test_california - state: present - register: test_results - -- name: "NETBOX_SITE_IDEM: (ASSERT) Idempotency - Duplicate device site with all parameters" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['site']['name'] == "Test - California" - - test_results['msg'] == "site Test - California already exists" - - test_results['site']['status'] == "planned" - - test_results['site']['region'] == 1 - - test_results['site']['group'] == 4 - - test_results['site']['tenant'] == 1 - - test_results['site']['facility'] == "EquinoxCA7" - - test_results['site']['time_zone'] == "America/Los_Angeles" - - test_results['site']['description'] == "This is a test description" - - test_results['site']['physical_address'] == "Hollywood, CA, 90210" - - test_results['site']['shipping_address'] == "Hollywood, CA, 90210" - - test_results['site']['latitude'] == 22.169141 - - test_results['site']['longitude'] == -100.994041 - - test_results['site']['comments'] == "### Placeholder" - - test_results['site']['slug'] == "test_california" - -- name: 5 - Delete site within netbox - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: absent - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['site']['name'] == "Test - Colorado" - - test_five['msg'] == "site Test - Colorado deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_site_group.yml b/tests/integration/targets/v3.6/tasks/netbox_site_group.yml deleted file mode 100644 index 11b9cbb24..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_site_group.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -## -## -### NETBOX_SITE_GROUP -## -## -- name: "SITE_GROUP 1: Necessary info creation" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: present - register: test_one - -- name: "SITE_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['site_group']['name'] == "Site Group" - - test_one['site_group']['slug'] == "site-group" - - test_one['msg'] == "site_group Site Group created" - -- name: "SITE_GROUP 2: Create duplicate" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: present - register: test_two - -- name: "SITE_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['site_group']['name'] == "Site Group" - - test_two['site_group']['slug'] == "site-group" - - test_two['msg'] == "site_group Site Group already exists" - -- name: "SITE_GROUP 3: Update" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - parent_site_group: Test Site Group - description: This is a site group - state: present - register: test_three - -- name: "SITE_GROUP 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 4 - - test_three['diff']['after']['description'] == "This is a site group" - - test_three['site_group']['name'] == "Site Group" - - test_three['site_group']['slug'] == "site-group" - - test_three['site_group']['parent'] == 4 - - test_three['site_group']['description'] == "This is a site group" - - test_three['msg'] == "site_group Site Group updated" - -- name: "SITE_GROUP 4: Delete" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: absent - register: test_four - -- name: "SITE_GROUP 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "site_group Site Group deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_tag.yml b/tests/integration/targets/v3.6/tasks/netbox_tag.yml deleted file mode 100644 index f3fcbac39..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_tag.yml +++ /dev/null @@ -1,110 +0,0 @@ ---- -## -## -### NETBOX_TAGS -## -## -- name: "TAG 1: ASSERT - Necessary info creation" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 test - color: "0000ff" - state: present - register: test_one - -- name: "TAG 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tags']['color'] == "0000ff" - - test_one['tags']['description'] == "Tag 1 test" - - test_one['tags']['name'] == "Test Tag 1" - - test_one['tags']['slug'] == "test-tag-1" - - test_one['msg'] == "tags Test Tag 1 created" - -- name: "TAG 2: Create duplicate" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 test - color: "0000ff" - state: present - register: test_two - -- name: "TAG 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tags']['name'] == "Test Tag 1" - - test_two['msg'] == "tags Test Tag 1 already exists" - -- name: "TAG 3: ASSERT - Update" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 update test - color: "00ff00" - state: present - register: test_three - -- name: "TAG 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "00ff00" - - test_three['diff']['after']['description'] == "Tag 1 update test" - - test_three['tags']['name'] == "Test Tag 1" - - test_three['tags']['description'] == "Tag 1 update test" - - test_three['tags']['color'] == "00ff00" - - test_three['msg'] == "tags Test Tag 1 updated" - -- name: "TAG 4: ASSERT - Delete" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - state: absent - register: test_four - -- name: "TAG 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['state'] == "absent" - - test_four['tags']['name'] == "Test Tag 1" - - test_four['tags']['slug'] == "test-tag-1" - - test_four['msg'] == "tags Test Tag 1 deleted" - -- name: "TAG 5: ASSERT - Necessary info creation" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 5 - slug: test-tag-five - description: Tag 5 test - color: "0000ff" - state: present - register: test_five - -- name: "TAG 5: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tags']['color'] == "0000ff" - - test_five['tags']['description'] == "Tag 5 test" - - test_five['tags']['name'] == "Test Tag 5" - - test_five['tags']['slug'] == "test-tag-five" - - test_five['msg'] == "tags Test Tag 5 created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_tenant.yml b/tests/integration/targets/v3.6/tasks/netbox_tenant.yml deleted file mode 100644 index 0731e0268..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_tenant.yml +++ /dev/null @@ -1,106 +0,0 @@ ---- -## -## -### NETBOX_TENANT -## -## -- name: 1 - Test tenant creation - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tenant']['name'] == "Tenant ABC" - - test_one['tenant']['slug'] == "tenant-abc" - - test_one['msg'] == "tenant Tenant ABC created" - -- name: Test duplicate tenant - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tenant']['name'] == "Tenant ABC" - - test_two['tenant']['slug'] == "tenant-abc" - - test_two['msg'] == "tenant Tenant ABC already exists" - -- name: 3 - Test update - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - description: Updated description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Updated description" - - test_three['tenant']['name'] == "Tenant ABC" - - test_three['tenant']['slug'] == "tenant-abc" - - test_three['tenant']['description'] == "Updated description" - - test_three['msg'] == "tenant Tenant ABC updated" - -- name: 4 - Test delete - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "tenant Tenant ABC deleted" - -- name: 5 - Create tenant with all parameters - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - description: ABC Incorporated - comments: "### This tenant is super cool" - tenant_group: Test Tenant Group - slug: tenant_abc - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tenant']['name'] == "Tenant ABC" - - test_five['tenant']['slug'] == "tenant_abc" - - test_five['tenant']['description'] == "ABC Incorporated" - - test_five['tenant']['comments'] == "### This tenant is super cool" - - test_five['tenant']['group'] == 1 - - test_five['tenant']['tags'] | length == 3 - - test_five['msg'] == "tenant Tenant ABC created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_tenant_group.yml b/tests/integration/targets/v3.6/tasks/netbox_tenant_group.yml deleted file mode 100644 index f7f57f3c2..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_tenant_group.yml +++ /dev/null @@ -1,129 +0,0 @@ ---- -## -## -### NETBOX_TENANT_GROUP -## -## -- name: 1 - Test tenant group creation - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tenant_group']['name'] == "Test Tenant Group Two" - - test_one['tenant_group']['slug'] == "test-tenant-group-two" - - test_one['msg'] == "tenant_group Test Tenant Group Two created" - -- name: Test duplicate tenant group - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tenant_group']['name'] == "Test Tenant Group Two" - - test_two['tenant_group']['slug'] == "test-tenant-group-two" - - test_two['msg'] == "tenant_group Test Tenant Group Two already exists" - -- name: 3 - Test delete - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "tenant_group Test Tenant Group Two deleted" - -- name: 4 - Test tenant group creation with custom slug - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group ABC - slug: test_tenant_group_four - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['tenant_group']['name'] == "Test Tenant Group ABC" - - test_four['tenant_group']['slug'] == "test_tenant_group_four" - - test_four['msg'] == "tenant_group Test Tenant Group ABC created" - -- name: 5 - Test child tenant group creation - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Child Test Tenant Group - parent_tenant_group: "{{ test_four.tenant_group.slug }}" - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tenant_group']['name'] == "Child Test Tenant Group" - - test_five['tenant_group']['parent'] == test_four.tenant_group.id - - test_five['msg'] == "tenant_group Child Test Tenant Group created" - -- name: 6 - Test child tenant group deletion - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Child Test Tenant Group - state: absent - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "present" - - test_six['diff']['after']['state'] == "absent" - - test_six['msg'] == "tenant_group Child Test Tenant Group deleted" - -- name: 7 - Test deletion of the tenant group with custom slug - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group ABC - slug: test_tenant_group_four - state: absent - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "present" - - test_seven['diff']['after']['state'] == "absent" - - test_seven['msg'] == "tenant_group Test Tenant Group ABC deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_virtual_chassis.yml b/tests/integration/targets/v3.6/tasks/netbox_virtual_chassis.yml deleted file mode 100644 index 395be8395..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_virtual_chassis.yml +++ /dev/null @@ -1,131 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_VIRTUAL_CHASSIS -## -## -- name: "VIRTUAL_CHASSIS 0: Create device for testing virtual chassis" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Virtual Chassis Tests - device_type: Cisco Test - device_role: Core Switch - site: Test Site - vc_position: 1 - vc_priority: 1 - state: present - -- name: "VIRTUAL_CHASSIS 1: Necessary info creation" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - state: present - register: test_one - -- name: "VIRTUAL_CHASSIS 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['virtual_chassis']['master'] == 11 - - test_one['virtual_chassis']['name'] == "First VC" - - test_one['msg'] == "virtual_chassis First VC created" - -- name: "VIRTUAL_CHASSIS 2: Create duplicate" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - state: present - register: test_two - -- name: "VIRTUAL_CHASSIS 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['virtual_chassis']['master'] == 11 - - test_two['virtual_chassis']['name'] == "First VC" - - test_two['msg'] == "virtual_chassis First VC already exists" - -- name: "POWER_FEED 3: Update virtual_chassis with other fields" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - domain: Domain Text - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update virtual_chassis with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['domain'] == "Domain Text" - - test_three['virtual_chassis']['master'] == 11 - - test_three['virtual_chassis']['domain'] == "Domain Text" - - test_three['virtual_chassis']['name'] == "First VC" - - test_three['msg'] == "virtual_chassis First VC updated" - -- name: "VIRTUAL_CHASSIS 4: Create device for testing virtual chassis deletion" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Virtual Chassis Tests 2 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - vc_position: 1 - vc_priority: 15 - state: present - -- name: "VIRTUAL_CHASSIS 4: Create Virtual Chassis for Delete Test" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Second VC - master: Device Virtual Chassis Tests 2 - state: present - register: test_four - -- name: "VIRTUAL_CHASSIS 4: ASSERT - Create Virtual Chassis for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['virtual_chassis']['master'] == 12 - - test_four['virtual_chassis']['name'] == "Second VC" - - test_four['msg'] == "virtual_chassis Second VC created" - -- name: "VIRTUAL_CHASSIS 5: Delete Virtual Chassis" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Second VC - master: Device Virtual Chassis Tests 2 - state: absent - register: test_five - -- name: "VIRTUAL_CHASSIS 5: ASSERT - Delete Virtual Chassis" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "virtual_chassis Second VC deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_virtual_machine.yml b/tests/integration/targets/v3.6/tasks/netbox_virtual_machine.yml deleted file mode 100644 index 3fb0e4319..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_virtual_machine.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -## -## -### NETBOX_VIRTUAL_MACHINES -## -## -- name: "VIRTUAL_MACHINE 1: Necessary info creation" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - state: present - register: test_one - -- name: "VIRTUAL_MACHINE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['virtual_machine']['name'] == "Test VM One" - - test_one['virtual_machine']['cluster'] == 1 - - test_one['msg'] == "virtual_machine Test VM One created" - -- name: "VIRTUAL_MACHINE 2: Create duplicate" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - state: present - register: test_two - -- name: "VIRTUAL_MACHINE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['virtual_machine']['name'] == "Test VM One" - - test_two['virtual_machine']['cluster'] == 1 - - test_two['msg'] == "virtual_machine Test VM One already exists" - -- name: "VIRTUAL_MACHINE 3: Update" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - vcpus: 8.5 - memory: 8 - status: Planned - virtual_machine_role: Test VM Role - tags: - - Schnozzberry - state: present - register: test_three - -- name: "VIRTUAL_MACHINE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['vcpus'] == 8.5 - - test_three['diff']['after']['memory'] == 8 - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['role'] == 2 - - test_three['diff']['after']['tags'][0] == 4 - - test_three['virtual_machine']['name'] == "Test VM One" - - test_three['virtual_machine']['cluster'] == 1 - - test_three['virtual_machine']['vcpus'] == 8.5 - - test_three['virtual_machine']['memory'] == 8 - - test_three['virtual_machine']['status'] == "planned" - - test_three['virtual_machine']['role'] == 2 - - test_three['virtual_machine']['tags'][0] == 4 - - test_three['msg'] == "virtual_machine Test VM One updated" - -- name: "VIRTUAL_MACHINE 4: Test idempotence" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - cluster: Test Cluster - vcpus: 8.5 - memory: 8 - status: Planned - virtual_machine_role: Test VM Role - tags: - - Schnozzberry - state: present - register: test_four_idempotence - -- name: "VIRTUAL_MACHINE 4: ASSERT - Not changed" - ansible.builtin.assert: - that: - - test_four_idempotence is not changed - - test_four_idempotence['virtual_machine']['name'] == "Test VM One" - - test_four_idempotence['virtual_machine']['cluster'] == 1 - - test_four_idempotence['virtual_machine']['vcpus'] == 8.5 - - test_four_idempotence['virtual_machine']['memory'] == 8 - - test_four_idempotence['virtual_machine']['status'] == "planned" - - test_four_idempotence['virtual_machine']['role'] == 2 - - test_four_idempotence['virtual_machine']['tags'][0] == 4 - - test_four_idempotence['msg'] == "virtual_machine Test VM One already exists" - -- name: "VIRTUAL_MACHINE 5: Delete" - netbox.netbox.netbox_virtual_machine: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VM One - state: absent - register: test_five - -- name: "VIRTUAL_MACHINE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['virtual_machine']['name'] == "Test VM One" - - test_five['virtual_machine']['cluster'] == 1 - - test_five['virtual_machine']['vcpus'] == 8.5 - - test_five['virtual_machine']['memory'] == 8 - - test_five['virtual_machine']['status'] == "planned" - - test_five['virtual_machine']['role'] == 2 - - test_five['virtual_machine']['tags'][0] == 4 - - test_five['msg'] == "virtual_machine Test VM One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_vlan.yml b/tests/integration/targets/v3.6/tasks/netbox_vlan.yml deleted file mode 100644 index 463873ca5..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_vlan.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -## -## -### NETBOX_VLAN -## -## -- name: "VLAN 1: Necessary info creation" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - state: present - register: test_one - -- name: "VLAN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['vlan']['name'] == "Test VLAN 500" - - test_one['vlan']['vid'] == 500 - - test_one['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 2: Create duplicate" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - state: present - register: test_two - -- name: "VLAN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['vlan']['name'] == "Test VLAN 500" - - test_two['vlan']['vid'] == 500 - - test_two['msg'] == "vlan Test VLAN 500 already exists" - -- name: "VLAN 3: Create VLAN with same name, but different site" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - site: Test Site - tenant: Test Tenant - vlan_group: Test VLAN Group - state: present - register: test_three - -- name: "VLAN 3: ASSERT - Create VLAN with same name, but different site" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['vlan']['name'] == "Test VLAN 500" - - test_three['vlan']['vid'] == 500 - - test_three['vlan']['site'] == 1 - - test_three['vlan']['group'] == 1 - - test_three['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 4: ASSERT - Update" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - tenant: Test Tenant - vlan_group: Test VLAN Group - status: Reserved - vlan_role: Network of care - description: Updated description - site: Test Site - tags: - - Schnozzberry - state: present - register: test_four - -- name: "VLAN 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['status'] == "reserved" - - test_four['diff']['after']['role'] == 1 - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['tags'][0] == 4 - - test_four['vlan']['name'] == "Test VLAN 500" - - test_four['vlan']['tenant'] == 1 - - test_four['vlan']['site'] == 1 - - test_four['vlan']['group'] == 1 - - test_four['vlan']['status'] == "reserved" - - test_four['vlan']['role'] == 1 - - test_four['vlan']['description'] == "Updated description" - - test_four['vlan']['tags'][0] == 4 - - test_four['msg'] == "vlan Test VLAN 500 updated" - -- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - tenant: Test Tenant - vlan_group: Test VLAN Group - status: Reserved - vlan_role: Network of care - description: Updated description - site: Test Site - tags: - - Schnozzberry - state: present - register: idempotent_vlan_group - -- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP" - ansible.builtin.assert: - that: - - idempotent_vlan_group is not changed - -- name: "VLAN: Create VLAN with same name, but different vlan_group" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - site: Test Site - tenant: Test Tenant - vlan_group: Test VLAN Group 2 - state: present - register: new_vlan_group - -- name: "VLAN: ASSERT - Create VLAN with same name, but different vlan_group" - ansible.builtin.assert: - that: - - new_vlan_group is changed - - new_vlan_group['diff']['before']['state'] == "absent" - - new_vlan_group['diff']['after']['state'] == "present" - - new_vlan_group['vlan']['name'] == "Test VLAN 500" - - new_vlan_group['vlan']['vid'] == 500 - - new_vlan_group['vlan']['site'] == 1 - - new_vlan_group['vlan']['group'] == 2 - - new_vlan_group['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 5: ASSERT - Delete more than one result" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - state: absent - ignore_errors: true - register: test_five - -- name: "VLAN 5: ASSERT - Delete more than one result" - ansible.builtin.assert: - that: - - test_five is failed - - test_five['msg'] == "More than one result returned for Test VLAN 500" - -- name: "VLAN 6: ASSERT - Delete" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - site: Test Site - vlan_group: Test VLAN Group - state: absent - register: test_six - -- name: "VLAN 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['vlan']['name'] == "Test VLAN 500" - - test_six['vlan']['tenant'] == 1 - - test_six['vlan']['site'] == 1 - - test_six['vlan']['group'] == 1 - - test_six['vlan']['status'] == "reserved" - - test_six['vlan']['role'] == 1 - - test_six['vlan']['description'] == "Updated description" - - test_six['vlan']['tags'][0] == 4 - - test_six['msg'] == "vlan Test VLAN 500 deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_vlan_group.yml b/tests/integration/targets/v3.6/tasks/netbox_vlan_group.yml deleted file mode 100644 index 9dd4d1789..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_vlan_group.yml +++ /dev/null @@ -1,314 +0,0 @@ ---- -## -## -### NETBOX_VLAN_GROUP -## -## -- name: "VLAN_GROUP 1: Necessary info creation" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site - state: present - register: results - -- name: "VLAN_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group One created" - -- name: "VLAN_GROUP 2: Create duplicate" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site - state: present - register: results - -- name: "VLAN_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not results['changed'] - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group One already exists" - -- name: "VLAN_GROUP 3: ASSERT - Create with same name, different site" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: present - register: results - -- name: "VLAN_GROUP 3: ASSERT - Create with same name, different site" - ansible.builtin.assert: - that: - - results is changed - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group One created" - -- name: "VLAN_GROUP 4: ASSERT - Create vlan group, no site" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - state: present - ignore_errors: true - register: results - -- name: "VLAN_GROUP 4: ASSERT - Create with same name, different site" - ansible.builtin.assert: - that: - - results is failed - - results['msg'] == "More than one result returned for VLAN Group One" - -- name: "VLAN_GROUP 5: ASSERT - Delete" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: absent - register: results - -- name: "VLAN_GROUP 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "present" - - results['diff']['after']['state'] == "absent" - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group One deleted" - -- name: "VLAN_GROUP 6: ASSERT - Delete non existing" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: absent - register: results - -- name: "VLAN_GROUP 6: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not results['changed'] - - results['vlan_group'] == None - - results['msg'] == "vlan_group VLAN Group One already absent" - -- name: "VLAN_GROUP 7: Necessary info creation - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - state: present - register: results - -- name: "VLAN_GROUP 7: ASSERT - Necessary info creation - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group Location created" - -- name: "VLAN_GROUP 8: Necessary info creation - scope_type: dcim.rack" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Rack - scope_type: dcim.rack - scope: Test Rack - state: present - register: results - -- name: "VLAN_GROUP 8: ASSERT - Necessary info creation - scope_type: dcim.rack" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Rack" - - results['vlan_group']['slug'] == "vlan-group-rack" - - results['vlan_group']['scope_type'] == "dcim.rack" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group Rack created" - -- name: "VLAN_GROUP 9: Necessary info creation - scope_type: dcim.region" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Region - scope_type: dcim.region - scope: Test Region - state: present - register: results - -- name: "VLAN_GROUP 9: ASSERT - Necessary info creation - scope_type: dcim.region" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Region" - - results['vlan_group']['slug'] == "vlan-group-region" - - results['vlan_group']['scope_type'] == "dcim.region" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group Region created" - -- name: "VLAN_GROUP 10: Necessary info creation - scope_type: dcim.sitegroup" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Site Group - scope_type: dcim.sitegroup - scope: Test Site Group - state: present - register: results - -- name: "VLAN_GROUP 10: ASSERT - Necessary info creation - scope_type: dcim.sitegroup" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Site Group" - - results['vlan_group']['slug'] == "vlan-group-site-group" - - results['vlan_group']['scope_type'] == "dcim.sitegroup" - - results['vlan_group']['scope_id'] == 4 - - results['msg'] == "vlan_group VLAN Group Site Group created" - -# Commented out due to invalid content type being reported back by API -# - name: "VLAN_GROUP 11: Necessary info creation - scope_type: virtualization.cluster" -# netbox.netbox.netbox_vlan_group: -# netbox_url: http://localhost:32768 -# netbox_token: 0123456789abcdef0123456789abcdef01234567 -# data: -# name: "VLAN Group Cluster" -# scope_type: "virtualization.cluster" -# scope: Test Cluster -# state: present -# register: results - -# - name: "VLAN_GROUP 11: ASSERT - Necessary info creation - scope_type: virtualization.cluster" -# assert: -# that: -# - results is changed -# - results['diff']['before']['state'] == "absent" -# - results['diff']['after']['state'] == "present" -# - results['vlan_group']['name'] == "VLAN Group Cluster" -# - results['vlan_group']['slug'] == "vlan-group-cluster" -# - results['vlan_group']['scope_type'] == "virtualization.cluster" -# - results['vlan_group']['scope_id'] == 1 -# - results['msg'] == "vlan_group VLAN Group Cluster created" - -# - name: "VLAN_GROUP 12: Necessary info creation - scope_type: virtualization.clustergroup" -# netbox.netbox.netbox_vlan_group: -# netbox_url: http://localhost:32768 -# netbox_token: 0123456789abcdef0123456789abcdef01234567 -# data: -# name: "VLAN Group Cluster Group" -# scope_type: "virtualization.clustergroup" -# scope: Test Cluster Group -# state: present -# register: results - -# - name: "VLAN_GROUP 12: ASSERT - Necessary info creation - scope_type: virtualization.clustergroup" -# assert: -# that: -# - results is changed -# - results['diff']['before']['state'] == "absent" -# - results['diff']['after']['state'] == "present" -# - results['vlan_group']['name'] == "VLAN Group Cluster Group" -# - results['vlan_group']['slug'] == "vlan-group-cluster-group" -# - results['vlan_group']['scope_type'] == "virtualization.clustergroup" -# - results['vlan_group']['scope_id'] == 1 -# - results['msg'] == "vlan_group VLAN Group Cluster Group created" - -- name: "VLAN_GROUP 12: Update Description - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - description: Ansible updated description - state: present - register: results - -- name: "VLAN_GROUP 12: ASSERT - Update Description - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['description'] == "" - - results['diff']['after']['description'] == "Ansible updated description" - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['vlan_group']['description'] == "Ansible updated description" - - results['msg'] == "vlan_group VLAN Group Location updated" - -- name: "VLAN_GROUP 12: Update Description (IDEM) - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - description: Ansible updated description - state: present - register: results - -- name: "VLAN_GROUP 12: ASSERT - Update Description (IDEM) - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is not changed - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['vlan_group']['description'] == "Ansible updated description" - - results['msg'] == "vlan_group VLAN Group Location already exists" diff --git a/tests/integration/targets/v3.6/tasks/netbox_vm_interface.yml b/tests/integration/targets/v3.6/tasks/netbox_vm_interface.yml deleted file mode 100644 index 653f31e0e..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_vm_interface.yml +++ /dev/null @@ -1,159 +0,0 @@ ---- -## -## -### NETBOX_VM_INTERFACE -## -## -- name: "NETBOX_VM_INTERFACE 1: Necessary info creation" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - state: present - register: test_one - -- name: "NETBOX_VM_INTERFACE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['interface']['name'] == "Eth10" - - test_one['interface']['virtual_machine'] == 1 - - test_one['msg'] == "interface Eth10 created" - -- name: "NETBOX_VM_INTERFACE 2: Create duplicate" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - state: present - register: test_two - -- name: "NETBOX_VM_INTERFACE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['interface']['name'] == "Eth10" - - test_two['interface']['virtual_machine'] == 1 - - test_two['msg'] == "interface Eth10 already exists" - -- name: "NETBOX_VM_INTERFACE 3: Updated" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth10 - enabled: false - mtu: 9000 - mac_address: "00:00:00:AA:AA:01" - description: Updated test100-vm - mode: Tagged - # untagged_vlan: - # name: Wireless - # site: Test Site - # tagged_vlans: - # - name: Data - # site: Test Site - # - name: VoIP - # site: Test Site - tags: - - Schnozzberry - state: present - register: test_three - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['enabled'] == false - - test_three['diff']['after']['mtu'] == 9000 - - test_three['diff']['after']['mac_address'] == "00:00:00:AA:AA:01" - - test_three['diff']['after']['description'] == "Updated test100-vm" - - test_three['diff']['after']['mode'] == "tagged" - # - test_three['diff']['after']['untagged_vlan'] == 1 - # - test_three['diff']['after']['tagged_vlans'] == [2, 3] - - test_three['diff']['after']['tags'][0] == 4 - - test_three['interface']['name'] == "Eth10" - - test_three['interface']['virtual_machine'] == 1 - - test_three['interface']['enabled'] == false - - test_three['interface']['mtu'] == 9000 - - test_three['interface']['mac_address'] == "00:00:00:AA:AA:01" - - test_three['interface']['description'] == "Updated test100-vm" - - test_three['interface']['mode'] == "tagged" - # - test_three['interface']['untagged_vlan'] == 1 - # - test_three['interface']['tagged_vlans'] == [2, 3] - - test_three['interface']['tags'][0] == 4 - - test_three['msg'] == "interface Eth10 updated" - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Delete" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Eth10 - virtual_machine: test100-vm - state: absent - register: test_four - -- name: "NETBOX_VM_INTERFACE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['interface']['name'] == "Eth10" - - test_four['interface']['virtual_machine'] == 1 - - test_four['msg'] == "interface Eth10 deleted" - -- name: "NETBOX_VM_INTERFACE 5: Attempt to update interface with same name on other VMs" - netbox.netbox.netbox_vm_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: Eth0 - enabled: false - mtu: 9000 - mac_address: "00:00:00:AA:AA:01" - description: Updated test100-vm Eth0 intf - mode: Tagged - # untagged_vlan: - # name: Wireless - # site: Test Site - # tagged_vlans: - # - name: Data - # site: Test Site - # - name: VoIP - # site: Test Site - tags: - - Schnozzberry - state: present - register: test_five - -- name: "NETBOX_VM_INTERFACE 5: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['enabled'] == false - - test_five['diff']['after']['mtu'] == 9000 - - test_five['diff']['after']['mac_address'] == "00:00:00:AA:AA:01" - - test_five['diff']['after']['description'] == "Updated test100-vm Eth0 intf" - - test_five['diff']['after']['mode'] == "tagged" - # - test_five['diff']['after']['untagged_vlan'] == 1 - # - test_five['diff']['after']['tagged_vlans'] == [2, 3] - - test_five['diff']['after']['tags'][0] == 4 - - test_five['interface']['name'] == "Eth0" - - test_five['interface']['virtual_machine'] == 1 - - test_five['interface']['enabled'] == false - - test_five['interface']['mtu'] == 9000 - - test_five['interface']['mac_address'] == "00:00:00:AA:AA:01" - - test_five['interface']['description'] == "Updated test100-vm Eth0 intf" - - test_five['interface']['mode'] == "tagged" - # - test_five['interface']['untagged_vlan'] == 1 - # - test_five['interface']['tagged_vlans'] == [2, 3] - - test_five['interface']['tags'][0] == 4 - - test_five['msg'] == "interface Eth0 updated" diff --git a/tests/integration/targets/v3.6/tasks/netbox_vrf.yml b/tests/integration/targets/v3.6/tasks/netbox_vrf.yml deleted file mode 100644 index 1da7ae382..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_vrf.yml +++ /dev/null @@ -1,137 +0,0 @@ ---- -## -## -### NETBOX_VRF -## -## -- name: "VRF 1: Necessary info creation" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: present - register: test_one - -- name: "VRF 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['vrf']['name'] == "Test VRF One" - - test_one['msg'] == "vrf Test VRF One created" - -- name: "VRF 2: Create duplicate" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: present - register: test_two - -- name: "VRF 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['vrf']['name'] == "Test VRF One" - - test_two['msg'] == "vrf Test VRF One already exists" - -- name: "VRF 3: Create VRF with same name, but different tenant" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - tenant: Test Tenant - state: present - register: test_three - -- name: "VRF 3: ASSERT - Create VRF with same name, but different site" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['vrf']['name'] == "Test VRF One" - - test_three['vrf']['tenant'] == 1 - - test_three['msg'] == "vrf Test VRF One created" - -- name: "VRF 4: ASSERT - Update" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - rd: "65001:1" - enforce_unique: false - tenant: Test Tenant - description: Updated description - import_targets: - - 4000:4000 - - 5000:5000 - export_targets: - - 5000:5000 - tags: - - Schnozzberry - state: present - register: test_four - -- name: "VRF 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['rd'] == "65001:1" - - test_four['diff']['after']['enforce_unique'] == false - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['tags'][0] == 4 - - test_four['diff']['after']['import_targets'] | length == 2 - - test_four['diff']['after']['export_targets'] | length == 1 - - test_four['vrf']['name'] == "Test VRF One" - - test_four['vrf']['tenant'] == 1 - - test_four['vrf']['rd'] == "65001:1" - - test_four['vrf']['enforce_unique'] == false - - test_four['vrf']['description'] == "Updated description" - - test_four['vrf']['tags'][0] == 4 - - test_four['vrf']['import_targets'] | length == 2 - - test_four['vrf']['export_targets'] | length == 1 - - test_four['msg'] == "vrf Test VRF One updated" - -- name: "VRF 5: ASSERT - Delete more than one result" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: absent - ignore_errors: true - register: test_five - -- name: "VRF 5: ASSERT - Delete more than one result" - ansible.builtin.assert: - that: - - test_five is failed - - test_five['msg'] == "More than one result returned for Test VRF One" - -- name: "VRF 6: ASSERT - Delete" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - tenant: Test Tenant - state: absent - register: test_six - -- name: "VRF 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['vrf']['name'] == "Test VRF One" - - test_six['vrf']['tenant'] == 1 - - test_six['vrf']['rd'] == "65001:1" - - test_six['vrf']['enforce_unique'] == false - - test_six['vrf']['description'] == "Updated description" - - test_six['vrf']['tags'][0] == 4 - - test_six['msg'] == "vrf Test VRF One deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_webhook.yml b/tests/integration/targets/v3.6/tasks/netbox_webhook.yml deleted file mode 100644 index a3d5a3825..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_webhook.yml +++ /dev/null @@ -1,121 +0,0 @@ ---- -## -## -### NETBOX_WEBHOOK -## -## -- name: "WEBHOOK 1: Necessary info creation" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Webhook - type_create: true - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_one - -- name: "WEBHOOK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['webhook']['name'] == "Example Webhook" - - test_one['webhook']['type_create'] == True - - test_one['webhook']['payload_url'] == "https://payload.url" - - test_one['webhook']['content_types'] == ["dcim.device"] - - test_one['msg'] == "webhook Example Webhook created" - -- name: "WEBHOOK 2: Create duplicate" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Webhook - type_create: true - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_two - -- name: "WEBHOOK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['webhook']['name'] == "Example Webhook" - - test_two['msg'] == "webhook Example Webhook already exists" - -- name: "WEBHOOK 3: Update data and add on delete" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - type_create: true - type_delete: true - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_three - -- name: "WEBHOOK 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['webhook']['name'] == "Example Webhook" - - test_three['msg'] == "webhook Example Webhook updated" - -- name: "WEBHOOK 4: Change content type" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_four - -- name: "WEBHOOK 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['webhook']['name'] == "Example Webhook" - - test_four['msg'] == "webhook Example Webhook updated" - -- name: "WEBHOOK 5: Delete" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: absent - register: test_five - -- name: "WEBHOOK 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['webhook']['name'] == "Example Webhook" - - test_five['msg'] == "webhook Example Webhook deleted" diff --git a/tests/integration/targets/v3.6/tasks/netbox_wireless_lan.yml b/tests/integration/targets/v3.6/tasks/netbox_wireless_lan.yml deleted file mode 100644 index e70fd3e59..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_wireless_lan.yml +++ /dev/null @@ -1,103 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LAN -## -## -- name: 1 - Test wireless LAN creation - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_lan']['ssid'] == "Wireless LAN One" - - test_one['msg'] == "wireless_lan Wireless LAN One created" - -- name: Test duplicate wireless LAN - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['wireless_lan']['ssid'] == "Wireless LAN One" - - test_two['msg'] == "wireless_lan Wireless LAN One already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - description: New Description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "New Description" - - test_three['wireless_lan']['ssid'] == "Wireless LAN One" - - test_three['wireless_lan']['description'] == "New Description" - - test_three['msg'] == "wireless_lan Wireless LAN One updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_lan Wireless LAN One deleted" - -- name: 5 - Create wireless LAN with all parameters - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless Network One - description: Cool Wireless Network - auth_type: wpa-enterprise - auth_cipher: aes - auth_psk: psk123456 - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_lan']['ssid'] == "Wireless Network One" - - test_five['wireless_lan']['description'] == "Cool Wireless Network" - - test_five['wireless_lan']['auth_type'] == "wpa-enterprise" - - test_five['wireless_lan']['auth_cipher'] == "aes" - - test_five['wireless_lan']['auth_psk'] == "psk123456" - # - test_five['wireless_lan']['tags'] | length == 3 - - test_five['msg'] == "wireless_lan Wireless Network One created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_wireless_lan_group.yml b/tests/integration/targets/v3.6/tasks/netbox_wireless_lan_group.yml deleted file mode 100644 index 57daaf62c..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_wireless_lan_group.yml +++ /dev/null @@ -1,97 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LAN_GROUP -## -## -- name: 1 - Test wireless LAN group creation - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_one['msg'] == "wireless_lan_group Wireless LAN Group One created" - -- name: Test duplicate wireless LAN group - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_two['msg'] == "wireless_lan_group Wireless LAN Group One already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - description: New Description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "New Description" - - test_three['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_three['wireless_lan_group']['description'] == "New Description" - - test_three['msg'] == "wireless_lan_group Wireless LAN Group One updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_lan_group Wireless LAN Group One deleted" - -- name: 5 - Create wireless LAN group with all parameters - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - description: Cool Wireless LAN Group - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_five['wireless_lan_group']['description'] == "Cool Wireless LAN Group" - - test_five['wireless_lan_group']['tags'] | length == 3 - - test_five['msg'] == "wireless_lan_group Wireless LAN Group One created" diff --git a/tests/integration/targets/v3.6/tasks/netbox_wireless_link.yml b/tests/integration/targets/v3.6/tasks/netbox_wireless_link.yml deleted file mode 100644 index b026db81e..000000000 --- a/tests/integration/targets/v3.6/tasks/netbox_wireless_link.yml +++ /dev/null @@ -1,130 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LINK -## -## -- name: 1 - Test wireless link creation - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_link']['interface_a'] == 6 - - test_one['wireless_link']['interface_b'] == 5 - - test_one['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 created" - -- name: Test duplicate wireless link - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - status: planned - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['wireless_link']['status'] == "planned" - - test_three['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 deleted" - -- name: 5 - Create wireless link with all parameters - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - ssid: Wireless Network One - description: Cool Wireless Network - auth_type: wpa-enterprise - auth_cipher: aes - auth_psk: psk123456 - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_link']['ssid'] == "Wireless Network One" - - test_five['wireless_link']['description'] == "Cool Wireless Network" - - test_five['wireless_link']['interface_a'] == 6 - - test_five['wireless_link']['interface_b'] == 5 - - test_five['wireless_link']['auth_type'] == "wpa-enterprise" - - test_five['wireless_link']['auth_cipher'] == "aes" - - test_five['wireless_link']['auth_psk'] == "psk123456" - # - test_five['wireless_link']['tags'] | length == 3 - - test_five['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_aggregate.yml b/tests/integration/targets/v3.7/tasks/netbox_aggregate.yml deleted file mode 100644 index d45b9c835..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_aggregate.yml +++ /dev/null @@ -1,115 +0,0 @@ ---- -## -## -### NETBOX_AGGEGATE -## -## -- name: "AGGREGATE 1: Necessary info creation" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - rir: Example RIR - state: present - register: test_one - -- name: "AGGREGATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['aggregate']['prefix'] == "10.0.0.0/8" - # - test_one['aggregate']['family'] == 4 - - test_one['aggregate']['rir'] == 1 - - test_one['msg'] == "aggregate 10.0.0.0/8 created" - -- name: "AGGREGATE 2: Create duplicate" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - state: present - register: test_two - -- name: "AGGREGATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['aggregate']['prefix'] == "10.0.0.0/8" - - test_two['aggregate']['family'] == 4 - - test_two['aggregate']['rir'] == 1 - - test_two['msg'] == "aggregate 10.0.0.0/8 already exists" - -- name: "AGGREGATE 3: ASSERT - Update" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - rir: Example RIR - date_added: "1989-01-18" - description: Test Description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "AGGREGATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['date_added'] == "1989-01-18" - - test_three['diff']['after']['description'] == "Test Description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['aggregate']['prefix'] == "10.0.0.0/8" - - test_three['aggregate']['family'] == 4 - - test_three['aggregate']['rir'] == 1 - - test_three['aggregate']['date_added'] == "1989-01-18" - - test_three['aggregate']['description'] == "Test Description" - - test_three['aggregate']['tags'][0] == 4 - - test_three['msg'] == "aggregate 10.0.0.0/8 updated" - -- name: "AGGREGATE 4: ASSERT - Delete" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.0.0.0/8 - state: absent - register: test_four - -- name: "AGGREGATE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['aggregate']['prefix'] == "10.0.0.0/8" - - test_four['aggregate']['family'] == 4 - - test_four['aggregate']['rir'] == 1 - - test_four['aggregate']['date_added'] == "1989-01-18" - - test_four['aggregate']['description'] == "Test Description" - - test_four['aggregate']['tags'][0] == 4 - - test_four['msg'] == "aggregate 10.0.0.0/8 deleted" - -- name: "AGGREGATE 5: Necessary info creation" - netbox.netbox.netbox_aggregate: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 2001::/32 - rir: Example RIR - state: present - register: test_five - -- name: "AGGREGATE 5: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['aggregate']['prefix'] == "2001::/32" - # - test_five['aggregate']['family'] == 6 - - test_five['aggregate']['rir'] == 1 - - test_five['msg'] == "aggregate 2001::/32 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_asn.yml b/tests/integration/targets/v3.7/tasks/netbox_asn.yml deleted file mode 100644 index fab4270a9..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_asn.yml +++ /dev/null @@ -1,88 +0,0 @@ ---- -## -## -### NETBOX_ASN -## -## -- name: "ASN 1: Test ASN creation" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - state: present - register: test_one - -- name: "ASN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['asn']['asn'] == 1111111111 - - test_one['asn']['rir'] == 1 - - test_one['msg'] == "asn 1111111111 created" - -- name: "ASN 2: Create duplicate" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - state: present - register: test_two - -- name: "ASN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['asn']['asn'] == 1111111111 - - test_two['asn']['rir'] == 1 - - test_two['msg'] == "asn 1111111111 already exists" - -- name: "ASN 3: Update ASN with other fields" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - rir: Example RIR - tenant: Test Tenant - description: Test description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "ASN 3: ASSERT - Update ASN with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['tenant'] == 1 - - test_three['diff']['after']['description'] == "Test description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['asn']['asn'] == 1111111111 - - test_three['asn']['rir'] == 1 - - test_three['asn']['tenant'] == 1 - - test_three['asn']['description'] == "Test description" - - test_three['asn']['tags'][0] == 4 - - test_three['msg'] == "asn 1111111111 updated" - -- name: "ASN 4: ASSERT - Delete" - netbox.netbox.netbox_asn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - asn: 1111111111 - state: absent - register: test_four - -- name: "ASN 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "asn 1111111111 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_cable.yml b/tests/integration/targets/v3.7/tasks/netbox_cable.yml deleted file mode 100644 index d6f0ab02e..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_cable.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CABLE -## -## -- name: "CABLE 1: Necessary info creation" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: present - register: test_one - -- name: "CABLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cable']['termination_a_type'] == "dcim.interface" - - test_one['cable']['termination_a_id'] == 15 - - test_one['cable']['termination_b_type'] == "dcim.interface" - - test_one['cable']['termination_b_id'] == 2 - - test_one['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 created" - -- name: "CABLE 2: Create duplicate" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: present - register: test_two - -- name: "CABLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cable']['termination_a_type'] == "dcim.interface" - - test_two['cable']['termination_a_id'] == 15 - - test_two['cable']['termination_b_type'] == "dcim.interface" - - test_two['cable']['termination_b_id'] == 2 - - test_two['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 already exists" - -- name: "CABLE 3: Update Cable with other fields" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - type: mmf-om4 - status: planned - label: label123 - color: abcdef - length: 30 - length_unit: m - tags: - - Schnozzberry - tenant: Test Tenant - state: present - register: test_three - -- name: "CABLE 3: ASSERT - Update Cable with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "mmf-om4" - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['label'] == "label123" - - test_three['diff']['after']['color'] == "abcdef" - - test_three['diff']['after']['length'] == 30 - - test_three['diff']['after']['length_unit'] == "m" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['diff']['after']['tenant'] == 1 - - test_three['cable']['termination_a_type'] == "dcim.interface" - - test_three['cable']['termination_a_id'] == 15 - - test_three['cable']['termination_b_type'] == "dcim.interface" - - test_three['cable']['termination_b_id'] == 2 - - test_three['cable']['type'] == "mmf-om4" - - test_three['cable']['status'] == "planned" - - test_three['cable']['label'] == "label123" - - test_three['cable']['color'] == "abcdef" - - test_three['cable']['length'] == 30 - - test_three['cable']['length_unit'] == "m" - - test_three['cable']['tags'][0] == 4 - - test_three['cable']['tenant'] == 1 - - test_three['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 updated" - -- name: "CABLE 4: ASSERT - Delete" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.interface - termination_a: - device: Test Nexus Child One - name: Ethernet2/2 - termination_b_type: dcim.interface - termination_b: - device: Test Nexus Child One - name: Ethernet2/1 - state: absent - register: test_four - -- name: "CABLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "cable dcim.interface Ethernet2/2 <> dcim.interface Ethernet2/1 deleted" - -- name: "CABLE 5: Connect Console Port and Console Server Port" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: dcim.consoleserverport - termination_a: - name: Console Server Port - device: test100 - termination_b_type: dcim.consoleport - termination_b: - name: Console Port - device: test100 - state: present - register: test_five - -- name: "CABLE 5: ASSERT - Connect Console Port and Console Server Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['cable']['termination_a_type'] == "dcim.consoleserverport" - - test_five['cable']['termination_a_id'] == 1 - - test_five['cable']['termination_b_type'] == "dcim.consoleport" - - test_five['cable']['termination_b_id'] == 1 - - test_five['msg'] == "cable dcim.consoleserverport Console Server Port <> dcim.consoleport Console Port created" - -- name: "CABLE 6: Circuits Termination as side A" - netbox.netbox.netbox_cable: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - termination_a_type: circuits.circuittermination - termination_a: - circuit: Test Circuit Two - term_side: A - termination_b_type: dcim.interface - termination_b: - device: test100 - name: GigabitEthernet2 - state: present - register: test_six - -- name: "CABLE 6: ASSERT - Circuits Termination as side A" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['cable']['termination_a_type'] == "circuits.circuittermination" - - test_six['cable']['termination_a_id'] == 1 - - test_six['cable']['termination_b_type'] == "dcim.interface" - - test_six['cable']['termination_b_id'] == 4 - - test_six['msg'] == "cable circuits.circuittermination 1 <> dcim.interface GigabitEthernet2 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_circuit.yml b/tests/integration/targets/v3.7/tasks/netbox_circuit.yml deleted file mode 100644 index 8bfd265ac..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_circuit.yml +++ /dev/null @@ -1,109 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT -## -## -- name: "NETBOX_CIRCUIT 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - state: present - register: test_one - -- name: "NETBOX_CIRCUIT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit']['cid'] == "Test Circuit One" - - test_one['circuit']['provider'] == 1 - - test_one['circuit']['type'] == 1 - - test_one['msg'] == "circuit Test Circuit One created" - -- name: "NETBOX_CIRCUIT 2: Duplicate" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - state: present - register: test_two - -- name: "NETBOX_CIRCUIT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit']['cid'] == "Test Circuit One" - - test_two['circuit']['provider'] == 1 - - test_two['circuit']['type'] == 1 - - test_two['msg'] == "circuit Test Circuit One already exists" - -- name: "NETBOX_CIRCUIT 3: Update provider with other fields" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - provider: Test Provider - circuit_type: Test Circuit Type - status: Planned - tenant: Test Tenant - install_date: "2018-12-25" - commit_rate: 10000 - description: "Test circuit " - comments: FAST CIRCUIT - state: present - register: test_three - -- name: "NETBOX_CIRCUIT 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['tenant'] == 1 - - test_three['diff']['after']['install_date'] == "2018-12-25" - - test_three['diff']['after']['commit_rate'] == 10000 - - test_three['diff']['after']['description'] == "Test circuit" - - test_three['diff']['after']['comments'] == "FAST CIRCUIT" - - test_three['circuit']['cid'] == "Test Circuit One" - - test_three['circuit']['provider'] == 1 - - test_three['circuit']['type'] == 1 - - test_three['circuit']['status'] == "planned" - - test_three['circuit']['tenant'] == 1 - - test_three['circuit']['install_date'] == "2018-12-25" - - test_three['circuit']['commit_rate'] == 10000 - - test_three['circuit']['description'] == "Test circuit" - - test_three['circuit']['comments'] == "FAST CIRCUIT" - - test_three['msg'] == "circuit Test Circuit One updated" - -- name: "NETBOX_CIRCUIT 4: Delete provider within netbox" - netbox.netbox.netbox_circuit: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - cid: Test Circuit One - state: absent - register: test_four - -- name: "NETBOX_CIRCUIT 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['circuit']['cid'] == "Test Circuit One" - - test_four['circuit']['provider'] == 1 - - test_four['circuit']['type'] == 1 - - test_four['circuit']['status'] == "planned" - - test_four['circuit']['tenant'] == 1 - - test_four['circuit']['install_date'] == "2018-12-25" - - test_four['circuit']['commit_rate'] == 10000 - - test_four['circuit']['description'] == "Test circuit" - - test_four['circuit']['comments'] == "FAST CIRCUIT" - - test_four['msg'] == "circuit Test Circuit One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_circuit_termination.yml b/tests/integration/targets/v3.7/tasks/netbox_circuit_termination.yml deleted file mode 100644 index cbc749f63..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_circuit_termination.yml +++ /dev/null @@ -1,129 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT_TERMINATION -## -## -- name: "NETBOX_CIRCUIT_TERMINATION 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - site: Test Site - port_speed: 10000 - state: present - register: test_one - -- name: "NETBOX_CIRCUIT_TERMINATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit_termination']['circuit'] == 1 - - test_one['circuit_termination']['term_side'] == "A" - - test_one['circuit_termination']['site'] == 1 - - test_one['circuit_termination']['port_speed'] == 10000 - - test_one['msg'] == "circuit_termination test_circuit_a created" - -- name: "NETBOX_CIRCUIT_TERMINATION 2: Duplicate" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - state: present - register: test_two - -- name: "NETBOX_CIRCUIT_TERMINATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit_termination']['circuit'] == 1 - - test_two['circuit_termination']['term_side'] == "A" - - test_two['circuit_termination']['site'] == 1 - - test_two['circuit_termination']['port_speed'] == 10000 - - test_two['msg'] == "circuit_termination test_circuit_a already exists" - -- name: "NETBOX_CIRCUIT_TERMINATION 3: Update provider with other fields" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - upstream_speed: 1000 - xconnect_id: 10X100 - pp_info: PP10-24 - description: Test description - state: present - register: test_three - -- name: "NETBOX_CIRCUIT_TERMINATION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['upstream_speed'] == 1000 - - test_three['diff']['after']['xconnect_id'] == "10X100" - - test_three['diff']['after']['pp_info'] == "PP10-24" - - test_three['diff']['after']['description'] == "Test description" - - test_three['circuit_termination']['circuit'] == 1 - - test_three['circuit_termination']['term_side'] == "A" - - test_three['circuit_termination']['site'] == 1 - - test_three['circuit_termination']['port_speed'] == 10000 - - test_three['circuit_termination']['upstream_speed'] == 1000 - - test_three['circuit_termination']['xconnect_id'] == "10X100" - - test_three['circuit_termination']['pp_info'] == "PP10-24" - - test_three['circuit_termination']['description'] == "Test description" - - test_three['msg'] == "circuit_termination test_circuit_a updated" - -- name: "NETBOX_CIRCUIT_TERMINATION 4: Create Z Side" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: Z - site: Test Site - port_speed: 10000 - state: present - register: test_four - -- name: "NETBOX_CIRCUIT_TERMINATION 4: ASSERT - Create Z Side" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['circuit_termination']['circuit'] == 1 - - test_four['circuit_termination']['term_side'] == "Z" - - test_four['circuit_termination']['site'] == 1 - - test_four['circuit_termination']['port_speed'] == 10000 - - test_four['msg'] == "circuit_termination test_circuit_z created" - -- name: "NETBOX_CIRCUIT_TERMINATION 5: Delete provider within netbox" - netbox.netbox.netbox_circuit_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - circuit: Test Circuit - term_side: A - state: absent - register: test_five - -- name: "NETBOX_CIRCUIT_TERMINATION 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['circuit_termination']['circuit'] == 1 - - test_five['circuit_termination']['term_side'] == "A" - - test_five['circuit_termination']['site'] == 1 - - test_five['circuit_termination']['port_speed'] == 10000 - - test_five['circuit_termination']['upstream_speed'] == 1000 - - test_five['circuit_termination']['xconnect_id'] == "10X100" - - test_five['circuit_termination']['pp_info'] == "PP10-24" - - test_five['circuit_termination']['description'] == "Test description" - - test_five['msg'] == "circuit_termination test_circuit_a deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_circuit_type.yml b/tests/integration/targets/v3.7/tasks/netbox_circuit_type.yml deleted file mode 100644 index 08dc67985..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_circuit_type.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CIRCUIT_TYPE -## -## -- name: "CIRCUIT_TYPE 1: Necessary info creation" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: present - register: test_one - -- name: "CIRCUIT_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['circuit_type']['name'] == "Test Circuit Type One" - - test_one['circuit_type']['slug'] == "test-circuit-type-one" - - test_one['msg'] == "circuit_type Test Circuit Type One created" - -- name: "CIRCUIT_TYPE 2: Create duplicate" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: present - register: test_two - -- name: "CIRCUIT_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['circuit_type']['name'] == "Test Circuit Type One" - - test_two['circuit_type']['slug'] == "test-circuit-type-one" - - test_two['msg'] == "circuit_type Test Circuit Type One already exists" - -- name: "CIRCUIT_TYPE 3: User specified slug" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type Two - slug: test-circuit-type-2 - state: present - register: test_three - -- name: "CIRCUIT_TYPE 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['circuit_type']['name'] == "Test Circuit Type Two" - - test_three['circuit_type']['slug'] == "test-circuit-type-2" - - test_three['msg'] == "circuit_type Test Circuit Type Two created" - -- name: "CIRCUIT_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type One - state: absent - register: test_four - -- name: "CIRCUIT_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['circuit_type']['name'] == "Test Circuit Type One" - - test_four['circuit_type']['slug'] == "test-circuit-type-one" - - test_four['msg'] == "circuit_type Test Circuit Type One deleted" - -- name: "CIRCUIT_TYPE 5: ASSERT - Delete" - netbox.netbox.netbox_circuit_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Circuit Type Two - slug: test-circuit-type-2 - state: absent - register: test_five - -- name: "CIRCUIT_TYPE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['circuit_type']['name'] == "Test Circuit Type Two" - - test_five['circuit_type']['slug'] == "test-circuit-type-2" - - test_five['msg'] == "circuit_type Test Circuit Type Two deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_cluster.yml b/tests/integration/targets/v3.7/tasks/netbox_cluster.yml deleted file mode 100644 index b2810a1be..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_cluster.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER -## -## -- name: "CLUSTER 1: Necessary info creation" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - state: present - register: test_one - -- name: "CLUSTER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster']['name'] == "Test Cluster One" - - test_one['cluster']['type'] == 1 - - test_one['msg'] == "cluster Test Cluster One created" - -- name: "CLUSTER 2: Create duplicate" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - state: present - register: test_two - -- name: "CLUSTER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster']['name'] == "Test Cluster One" - - test_two['cluster']['type'] == 1 - - test_two['msg'] == "cluster Test Cluster One already exists" - -- name: "CLUSTER 3: Update" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - cluster_type: Test Cluster Type - cluster_group: Test Cluster Group - site: Test Site - comments: Updated cluster - tenant: Test Tenant - tags: - - Schnozzberry - state: present - register: test_three - -- name: "CLUSTER 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['group'] == 1 - - test_three['diff']['after']['site'] == 1 - - test_three['diff']['after']['comments'] == "Updated cluster" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['diff']['after']['tenant'] == 1 - - test_three['cluster']['name'] == "Test Cluster One" - - test_three['cluster']['type'] == 1 - - test_three['cluster']['group'] == 1 - - test_three['cluster']['site'] == 1 - - test_three['cluster']['comments'] == "Updated cluster" - - test_three['cluster']['tags'][0] == 4 - - test_three['cluster']['tenant'] == 1 - - test_three['msg'] == "cluster Test Cluster One updated" - -- name: "CLUSTER 4: ASSERT - Delete" - netbox.netbox.netbox_cluster: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster One - state: absent - register: test_four - -- name: "CLUSTER 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster']['name'] == "Test Cluster One" - - test_four['cluster']['type'] == 1 - - test_four['cluster']['group'] == 1 - - test_four['cluster']['site'] == 1 - - test_four['cluster']['comments'] == "Updated cluster" - - test_four['cluster']['tags'][0] == 4 - - test_four['msg'] == "cluster Test Cluster One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_cluster_group.yml b/tests/integration/targets/v3.7/tasks/netbox_cluster_group.yml deleted file mode 100644 index 64dda6c44..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_cluster_group.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER_GROUP -## -## -- name: "CLUSTER_GROUP 1: Necessary info creation" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: present - register: test_one - -- name: "CLUSTER_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster_group']['name'] == "Test Cluster Group One" - - test_one['cluster_group']['slug'] == "test-cluster-group-one" - - test_one['msg'] == "cluster_group Test Cluster Group One created" - -- name: "CLUSTER_GROUP 2: Create duplicate" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: present - register: test_two - -- name: "CLUSTER_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster_group']['name'] == "Test Cluster Group One" - - test_two['cluster_group']['slug'] == "test-cluster-group-one" - - test_two['msg'] == "cluster_group Test Cluster Group One already exists" - -- name: "CLUSTER_GROUP 3: User specified slug" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group Two - slug: test-cluster-group-2 - state: present - register: test_three - -- name: "CLUSTER_GROUP 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['cluster_group']['name'] == "Test Cluster Group Two" - - test_three['cluster_group']['slug'] == "test-cluster-group-2" - - test_three['msg'] == "cluster_group Test Cluster Group Two created" - -- name: "CLUSTER_GROUP 4: ASSERT - Delete" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group One - state: absent - register: test_four - -- name: "CLUSTER_GROUP 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster_group']['name'] == "Test Cluster Group One" - - test_four['cluster_group']['slug'] == "test-cluster-group-one" - - test_four['msg'] == "cluster_group Test Cluster Group One deleted" - -- name: "CLUSTER_GROUP 5: ASSERT - Delete" - netbox.netbox.netbox_cluster_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Group Two - slug: test-cluster-group-2 - state: absent - register: test_five - -- name: "CLUSTER_GROUP 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['cluster_group']['name'] == "Test Cluster Group Two" - - test_five['cluster_group']['slug'] == "test-cluster-group-2" - - test_five['msg'] == "cluster_group Test Cluster Group Two deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_cluster_type.yml b/tests/integration/targets/v3.7/tasks/netbox_cluster_type.yml deleted file mode 100644 index bc09ac8a6..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_cluster_type.yml +++ /dev/null @@ -1,96 +0,0 @@ ---- -## -## -### NETBOX_CLUSTER_TYPE -## -## -- name: "CLUSTER_TYPE 1: Necessary info creation" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: present - register: test_one - -- name: "CLUSTER_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['cluster_type']['name'] == "Test Cluster Type One" - - test_one['cluster_type']['slug'] == "test-cluster-type-one" - - test_one['msg'] == "cluster_type Test Cluster Type One created" - -- name: "CLUSTER_TYPE 2: Create duplicate" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: present - register: test_two - -- name: "CLUSTER_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['cluster_type']['name'] == "Test Cluster Type One" - - test_two['cluster_type']['slug'] == "test-cluster-type-one" - - test_two['msg'] == "cluster_type Test Cluster Type One already exists" - -- name: "CLUSTER_TYPE 3: User specified slug" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type Two - slug: test-cluster-type-2 - state: present - register: test_three - -- name: "CLUSTER_TYPE 3: ASSERT - User specified slug" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['cluster_type']['name'] == "Test Cluster Type Two" - - test_three['cluster_type']['slug'] == "test-cluster-type-2" - - test_three['msg'] == "cluster_type Test Cluster Type Two created" - -- name: "CLUSTER_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type One - state: absent - register: test_four - -- name: "CLUSTER_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['cluster_type']['name'] == "Test Cluster Type One" - - test_four['cluster_type']['slug'] == "test-cluster-type-one" - - test_four['msg'] == "cluster_type Test Cluster Type One deleted" - -- name: "CLUSTER_TYPE 5: ASSERT - Delete" - netbox.netbox.netbox_cluster_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Cluster Type Two - slug: test-cluster-type-2 - state: absent - register: test_five - -- name: "CLUSTER_TYPE 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['cluster_type']['name'] == "Test Cluster Type Two" - - test_five['cluster_type']['slug'] == "test-cluster-type-2" - - test_five['msg'] == "cluster_type Test Cluster Type Two deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_config_context.yml b/tests/integration/targets/v3.7/tasks/netbox_config_context.yml deleted file mode 100644 index 910ec82ca..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_config_context.yml +++ /dev/null @@ -1,107 +0,0 @@ ---- -## -## -### NETBOX_CONFIG_CONTEXTS -## -## -- name: "CONFIG_CONTEXT 1: Necessary info creation" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Test context - data: '{ "testkey": { "testsubkey": [ "testvaule" ] } }' - state: present - register: test_one - -- name: "CONFIG_CONTEXT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['config_context']['name'] == "test_context" - - test_one['config_context']['description'] == "Test context" - - test_one['config_context']['is_active'] == true - - test_one['config_context']['weight'] == 1000 - - test_one['config_context']['data'].testkey.testsubkey[0] == "testvaule" - - test_one['msg'] == "config_context test_context created" - -- name: "CONFIG_CONTEXT 2: Create duplicate" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Test context - data: '{ "testkey": { "testsubkey": [ "testvaule" ] } }' - state: present - register: test_two - -- name: "CONFIG_CONTEXT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['config_context']['name'] == "test_context" - - test_two['msg'] == "config_context test_context already exists" - -- name: "CONFIG_CONTEXT 3: Update data and attach to site" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - description: Updated test context - data: '{ "testkey": { "testsubkey": [ "updatedvaule" ] } }' - weight: 100 - sites: [test-site] - state: present - register: test_three - -- name: "CONFIG_CONTEXT 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['data'].testkey.testsubkey[0] == "updatedvaule" - - test_three['diff']['after']['description'] == "Updated test context" - - test_three['diff']['after']['weight'] == 100 - - test_three['diff']['after']['sites'][0] == 1 - - test_three['config_context']['name'] == "test_context" - - test_three['msg'] == "config_context test_context updated" - -- name: "CONFIG_CONTEXT 4: Detach from site" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - data: '{ "testkey": { "testsubkey": [ "updatedvaule" ] } }' - sites: [] - state: present - register: test_four - -- name: "CONFIG_CONTEXT 4: ASSERT - Detached" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['sites']|length == 0 - - test_four['config_context']['name'] == "test_context" - - test_four['msg'] == "config_context test_context updated" - -- name: "CONFIG_CONTEXT 5: Delete" - netbox.netbox.netbox_config_context: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_context - state: absent - register: test_five - -- name: "CONFIG_CONTEXT 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['config_context']['name'] == "test_context" - - test_five['msg'] == "config_context test_context deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_config_template.yml b/tests/integration/targets/v3.7/tasks/netbox_config_template.yml deleted file mode 100644 index af6cfb471..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_config_template.yml +++ /dev/null @@ -1,82 +0,0 @@ ---- -## -## -### NETBOX_CONFIG_TEMPLATES -## -## -- name: "CONFIG_TEMPLATES 1: Necessary info creation" - netbox.netbox.netbox_config_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_template - description: Test template - template_code: test template - state: present - register: test_one - -- name: "CONFIG_TEMPLATES 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['config_template']['name'] == "test_template" - - test_one['config_template']['description'] == "Test template" - - test_one['config_template']['template_code'] == "test template" - - test_one['msg'] == "config_template test_template created" - -- name: "CONFIG_TEMPLATES 2: Create duplicate" - netbox.netbox.netbox_config_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_template - description: Test template - template_code: test template - state: present - register: test_two - -- name: "CONFIG_TEMPLATES 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['config_template']['name'] == "test_template" - - test_two['msg'] == "config_template test_template already exists" - -- name: "CONFIG_TEMPLATES 3: Update data" - netbox.netbox.netbox_config_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_template - description: Updated test template - template_code: updated test template - state: present - register: test_three - -- name: "CONFIG_TEMPLATES 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['template_code'] == "updated test template" - - test_three['diff']['after']['description'] == "Updated test template" - - test_three['config_template']['name'] == "test_template" - - test_three['msg'] == "config_template test_template updated" - -- name: "CONFIG_TEMPLATES 4: Delete" - netbox.netbox.netbox_config_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test_template - state: absent - register: test_four - -- name: "CONFIG_TEMPLATES 4: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['state'] == "absent" - - test_four['config_template']['name'] == "test_template" - - test_four['msg'] == "config_template test_template deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_console_port.yml b/tests/integration/targets/v3.7/tasks/netbox_console_port.yml deleted file mode 100644 index 6be028bec..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_console_port.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_PORT -## -## -- name: "CONSOLE_PORT 1: Necessary info creation" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - state: present - register: test_one - -- name: "CONSOLE_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_port']['name'] == "Console Port" - - test_one['console_port']['device'] == 1 - - test_one['msg'] == "console_port Console Port created" - -- name: "CONSOLE_PORT 2: Create duplicate" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - state: present - register: test_two - -- name: "CONSOLE_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_port']['name'] == "Console Port" - - test_two['console_port']['device'] == 1 - - test_two['msg'] == "console_port Console Port already exists" - -- name: "CONSOLE_PORT 3: Update Console Port with other fields" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port - device: test100 - type: usb-a - description: test description - state: present - register: test_three - -- name: "CONSOLE_PORT 3: ASSERT - Update Console Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['diff']['after']['description'] == "test description" - - test_three['console_port']['name'] == "Console Port" - - test_three['console_port']['device'] == 1 - - test_three['console_port']['type'] == "usb-a" - - test_three['console_port']['description'] == "test description" - - test_three['msg'] == "console_port Console Port updated" - -- name: "CONSOLE_PORT 4: Create Console Port for Delete Test" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port 2 - device: test100 - state: present - register: test_four - -- name: "CONSOLE_PORT 4: ASSERT - Create Console Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_port']['name'] == "Console Port 2" - - test_four['console_port']['device'] == 1 - - test_four['msg'] == "console_port Console Port 2 created" - -- name: "CONSOLE_PORT 5: Delete Console Port" - netbox.netbox.netbox_console_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port 2 - device: test100 - state: absent - register: test_five - -- name: "CONSOLE_PORT 5: ASSERT - Delete Console Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_port Console Port 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_console_port_template.yml b/tests/integration/targets/v3.7/tasks/netbox_console_port_template.yml deleted file mode 100644 index ef6149214..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_console_port_template.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_PORT_TEMPLATE -## -## -- name: "CONSOLE_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - state: present - register: test_one - -- name: "CONSOLE_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_port_template']['name'] == "Console Port Template" - - test_one['console_port_template']['device_type'] == 1 - - test_one['msg'] == "console_port_template Console Port Template created" - -- name: "CONSOLE_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - state: present - register: test_two - -- name: "CONSOLE_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_port_template']['name'] == "Console Port Template" - - test_two['console_port_template']['device_type'] == 1 - - test_two['msg'] == "console_port_template Console Port Template already exists" - -- name: "CONSOLE_PORT_TEMPLATE 3: Update Console Port Template with other fields" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template - device_type: Cisco Test - type: usb-a - state: present - register: test_three - -- name: "CONSOLE_PORT_TEMPLATE 3: ASSERT - Update Console Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['console_port_template']['name'] == "Console Port Template" - - test_three['console_port_template']['device_type'] == 1 - - test_three['console_port_template']['type'] == "usb-a" - - test_three['msg'] == "console_port_template Console Port Template updated" - -- name: "CONSOLE_PORT_TEMPLATE 4: Create Console Port Template for Delete Test" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template 2 - device_type: Cisco Test - state: present - register: test_four - -- name: "CONSOLE_PORT_TEMPLATE 4: ASSERT - Create Console Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_port_template']['name'] == "Console Port Template 2" - - test_four['console_port_template']['device_type'] == 1 - - test_four['msg'] == "console_port_template Console Port Template 2 created" - -- name: "CONSOLE_PORT_TEMPLATE 5: Delete Console Port Template" - netbox.netbox.netbox_console_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Port Template 2 - device_type: Cisco Test - state: absent - register: test_five - -- name: "CONSOLE_PORT_TEMPLATE 5: ASSERT - Delete Console Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_port_template Console Port Template 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_console_server_port.yml b/tests/integration/targets/v3.7/tasks/netbox_console_server_port.yml deleted file mode 100644 index 0ac7b65d0..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_console_server_port.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_SERVER_PORT -## -## -- name: "CONSOLE_SERVER_PORT 1: Necessary info creation" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - state: present - register: test_one - -- name: "CONSOLE_SERVER_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_server_port']['name'] == "Console Server Port" - - test_one['console_server_port']['device'] == 1 - - test_one['msg'] == "console_server_port Console Server Port created" - -- name: "CONSOLE_SERVER_PORT 2: Create duplicate" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - state: present - register: test_two - -- name: "CONSOLE_SERVER_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_server_port']['name'] == "Console Server Port" - - test_two['console_server_port']['device'] == 1 - - test_two['msg'] == "console_server_port Console Server Port already exists" - -- name: "CONSOLE_SERVER_PORT 3: Update Console Server Port with other fields" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port - device: test100 - type: usb-a - description: test description - state: present - register: test_three - -- name: "CONSOLE_SERVER_PORT 3: ASSERT - Update Console Server Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['diff']['after']['description'] == "test description" - - test_three['console_server_port']['name'] == "Console Server Port" - - test_three['console_server_port']['device'] == 1 - - test_three['console_server_port']['type'] == "usb-a" - - test_three['console_server_port']['description'] == "test description" - - test_three['msg'] == "console_server_port Console Server Port updated" - -- name: "CONSOLE_SERVER_PORT 4: Create Console Server Port for Delete Test" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port 2 - device: test100 - state: present - register: test_four - -- name: "CONSOLE_SERVER_PORT 4: ASSERT - Create Console Server Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_server_port']['name'] == "Console Server Port 2" - - test_four['console_server_port']['device'] == 1 - - test_four['msg'] == "console_server_port Console Server Port 2 created" - -- name: "CONSOLE_SERVER_PORT 5: Delete Console Server Port" - netbox.netbox.netbox_console_server_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port 2 - device: test100 - state: absent - register: test_five - -- name: "CONSOLE_SERVER_PORT 5: ASSERT - Delete Console Server Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_server_port Console Server Port 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_console_server_port_template.yml b/tests/integration/targets/v3.7/tasks/netbox_console_server_port_template.yml deleted file mode 100644 index 4c7dfc846..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_console_server_port_template.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_CONSOLE_SERVER_PORT_TEMPLATE -## -## -- name: "CONSOLE_SERVER_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - state: present - register: test_one - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['console_server_port_template']['name'] == "Console Server Port Template" - - test_one['console_server_port_template']['device_type'] == 1 - - test_one['msg'] == "console_server_port_template Console Server Port Template created" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - state: present - register: test_two - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['console_server_port_template']['name'] == "Console Server Port Template" - - test_two['console_server_port_template']['device_type'] == 1 - - test_two['msg'] == "console_server_port_template Console Server Port Template already exists" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 3: Update Console Server Port Template with other fields" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template - device_type: Cisco Test - type: usb-a - state: present - register: test_three - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 3: ASSERT - Update Console Server Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "usb-a" - - test_three['console_server_port_template']['name'] == "Console Server Port Template" - - test_three['console_server_port_template']['device_type'] == 1 - - test_three['console_server_port_template']['type'] == "usb-a" - - test_three['msg'] == "console_server_port_template Console Server Port Template updated" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 4: Create Console Server Port Template for Delete Test" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template 2 - device_type: Cisco Test - state: present - register: test_four - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 4: ASSERT - Create Console Server Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['console_server_port_template']['name'] == "Console Server Port Template 2" - - test_four['console_server_port_template']['device_type'] == 1 - - test_four['msg'] == "console_server_port_template Console Server Port Template 2 created" - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 5: Delete Console Server Port Template" - netbox.netbox.netbox_console_server_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Console Server Port Template 2 - device_type: Cisco Test - state: absent - register: test_five - -- name: "CONSOLE_SERVER_PORT_TEMPLATE 5: ASSERT - Delete Console Server Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "console_server_port_template Console Server Port Template 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_contact.yml b/tests/integration/targets/v3.7/tasks/netbox_contact.yml deleted file mode 100644 index f5ede9c1a..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_contact.yml +++ /dev/null @@ -1,100 +0,0 @@ ---- -## -## -### NETBOX_CONTACT -## -## -- name: 1 - Test contact creation - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['contact']['name'] == "Contact ABC" - - test_one['msg'] == "contact Contact ABC created" - -- name: Test duplicate contact - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['contact']['name'] == "Contact ABC" - - test_two['msg'] == "contact Contact ABC already exists" - -- name: 3 - Test update - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - title: New Title - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['title'] == "New Title" - - test_three['contact']['name'] == "Contact ABC" - - test_three['contact']['title'] == "New Title" - - test_three['msg'] == "contact Contact ABC updated" - -- name: 4 - Test delete - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "contact Contact ABC deleted" - -- name: 5 - Create contact with all parameters - netbox.netbox.netbox_contact: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Contact ABC - title: Fancy title - phone: "12345678" - email: contact@contact.com - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['contact']['name'] == "Contact ABC" - - test_five['contact']['title'] == "Fancy title" - - test_five['contact']['phone'] == "12345678" - - test_five['contact']['tags'] | length == 3 - - test_five['msg'] == "contact Contact ABC created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_contact_role.yml b/tests/integration/targets/v3.7/tasks/netbox_contact_role.yml deleted file mode 100644 index c84703da9..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_contact_role.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_CONTACT_ROLE -## -## -- name: "CONTACT_ROLE 1: Necessary info creation" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: present - register: test_one - -- name: "CONTACT_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['contact_role']['name'] == "Test Contact Role" - - test_one['contact_role']['slug'] == "test-contact-role" - - test_one['msg'] == "contact_role Test Contact Role created" - -- name: "CONTACT_ROLE 2: Create duplicate" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: present - register: test_two - -- name: "CONTACT ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['contact_role']['name'] == "Test Contact Role" - - test_two['contact_role']['slug'] == "test-contact-role" - - test_two['msg'] == "contact_role Test Contact Role already exists" - -- name: "CONTACT_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - description: Update description - state: present - register: test_three - -- name: "IPAM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Update description" - - test_three['contact_role']['name'] == "Test Contact Role" - - test_three['contact_role']['slug'] == "test-contact-role" - - test_three['contact_role']['description'] == "Update description" - - test_three['msg'] == "contact_role Test Contact Role updated" - -- name: "CONTACT_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: absent - register: test_four - -- name: "CONTACT_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "contact_role Test Contact Role deleted" - -- name: "CONTACT_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_contact_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Contact Role - state: absent - register: test_five - -- name: "CONTACT_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['contact_role'] == None - - test_five['msg'] == "contact_role Test Contact Role already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_custom_link.yml b/tests/integration/targets/v3.7/tasks/netbox_custom_link.yml deleted file mode 100644 index b9bbcc8a7..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_custom_link.yml +++ /dev/null @@ -1,113 +0,0 @@ ---- -## -## -### NETBOX_CUSTOM_LINK -## -## -- name: "CUSTOM_LINK 1: Necessary info creation" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_one - -- name: "CUSTOM_LINK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['custom_link']['name'] == "Custom Link" - - test_one['custom_link']['content_types'] == ["dcim.device"] - - test_one['custom_link']['link_text'] == "Open Web management" - - test_one['msg'] == "custom_link Custom Link created" - -- name: "CUSTOM_LINK 2: Create duplicate" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_two - -- name: "CUSTOM_LINK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['custom_link']['name'] == "Custom Link" - - test_two['msg'] == "custom_link Custom Link already exists" - -- name: "CUSTOM_FIELD 3: Update data and add weight" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - weight: 50 - state: present - register: test_three - -- name: "CUSTOM_FIELD 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['weight'] == 50 - - test_three['custom_link']['name'] == "Custom Link" - - test_three['msg'] == "custom_link Custom Link updated" - -- name: "CUSTOM_LINK 4: Change content type" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: present - register: test_four - -- name: "CUSTOM_LINK 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['custom_link']['name'] == "Custom Link" - - test_four['msg'] == "custom_link Custom Link updated" - -- name: "CUSTOM_LINK 5: Delete" - netbox.netbox.netbox_custom_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Custom Link - link_text: Open Web management - link_url: !unsafe https://{{ obj.name }}.domain.local/ - state: absent - register: test_five - -- name: "CUSTOM_LINK 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['custom_link']['name'] == "Custom Link" - - test_five['msg'] == "custom_link Custom Link deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_device.yml b/tests/integration/targets/v3.7/tasks/netbox_device.yml deleted file mode 100644 index a3a5d8308..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device.yml +++ /dev/null @@ -1,243 +0,0 @@ ---- -## -## -### NETBOX_DEVICE -## -## -- name: 1 - Device with required information - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: - id: "1" - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['device']['name'] == "R1" - - test_one['device']['device_role'] == 1 - - test_one['device']['device_type'] == 1 - - test_one['device']['site'] == 1 - - test_one['device']['status'] == "staged" - - test_one['device']['name'] == "R1" - - test_one['msg'] == "device R1 created" - -- name: 2 - Duplicate device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device']['name'] == "R1" - - test_two['device']['device_role'] == 1 - - test_two['device']['device_type'] == 1 - - test_two['device']['site'] == 1 - - test_two['device']['status'] == "staged" - - test_two['msg'] == "device R1 already exists" - -- name: 3 - Update device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1 - serial: FXS1001 - local_context_data: - bgp_as: "65412" - virtual_chassis: VC1 - vc_position: 3 - vc_priority: 15 - location: Test Rack Group - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['serial'] == "FXS1001" - - test_three['diff']['after']['local_context_data']["bgp_as"] == "65412" - - test_three['diff']['after']['virtual_chassis'] == 1 - - test_three['diff']['after']['vc_position'] == 3 - - test_three['diff']['after']['vc_priority'] == 15 - - test_three['device']['name'] == "R1" - - test_three['device']['device_role'] == 1 - - test_three['device']['device_type'] == 1 - - test_three['device']['site'] == 1 - - test_three['device']['status'] == "staged" - - test_three['device']['serial'] == "FXS1001" - - test_three['device']['local_context_data']["bgp_as"] == "65412" - - test_three['device']['virtual_chassis'] == 1 - - test_three['device']['vc_position'] == 3 - - test_three['device']['vc_priority'] == 15 - - test_three['device']['location'] == 1 - - test_three['msg'] == "device R1 updated" - -- name: 3.1 - Update device name using query_params - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1-changed-name - serial: FXS1001 - query_params: - - serial - state: present - register: test_three_dot_one - -- name: 3.1 - ASSERT - ansible.builtin.assert: - that: - - test_three_dot_one is changed - - test_three_dot_one['diff']['after']['name'] == "R1-changed-name" - - test_three_dot_one['device']['device_role'] == 1 - - test_three_dot_one['device']['device_type'] == 1 - - test_three_dot_one['device']['site'] == 1 - - test_three_dot_one['device']['status'] == "staged" - - test_three_dot_one['device']['serial'] == "FXS1001" - - test_three_dot_one['device']['local_context_data']["bgp_as"] == "65412" - - test_three_dot_one['msg'] == "device R1-changed-name updated" - -- name: 4 - Create device with tags and assign to rack - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: TestR1 - device_type: "1841" - device_role: Core Switch - site: Test Site2 - rack: Test Rack Site 2 - position: 35.5 - face: Front - tags: - - schnozzberry - tenant: Test Tenant - asset_tag: "1234" - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['device']['name'] == "TestR1" - - test_four['device']['device_role'] == 1 - - test_four['device']['device_type'] == 5 - - test_four['device']['site'] == 2 - - test_four['device']['status'] == "active" - - test_four['device']['rack'] == 1 - - test_four['device']['tags'][0] == 4 - - test_four['device']['tenant'] == 1 - - test_four['device']['asset_tag'] == '1234' - - test_four['msg'] == "device TestR1 created" - -- name: 5 - Delete previous device - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: TestR1 - state: absent - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "device TestR1 deleted" - -- name: 6 - Delete R1 - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: R1-changed-name - state: absent - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "present" - - test_six['diff']['after']['state'] == "absent" - - test_six['msg'] == "device R1-changed-name deleted" - -- name: 7 - Add primary_ip4/6 to test100 - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test100 - primary_ip4: 172.16.180.1/24 - primary_ip6: 2001::1:1/64 - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['after']['primary_ip4'] == 1 - - test_seven['diff']['after']['primary_ip6'] == 2 - - test_seven['device']['name'] == "test100" - - test_seven['device']['device_role'] == 1 - - test_seven['device']['device_type'] == 1 - - test_seven['device']['site'] == 1 - - test_seven['device']['status'] == "active" - - test_seven['device']['primary_ip4'] == 1 - - test_seven['device']['primary_ip6'] == 2 - - test_seven['msg'] == "device test100 updated" - -- name: 8 - Device with empty string name - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: "" - device_type: - id: 1 - device_role: Core Switch - site: Test Site - status: Staged - state: present - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == 'absent' - - test_eight['diff']['after']['state'] == 'present' - - test_eight['device']['device_role'] == 1 - - test_eight['device']['device_type'] == 1 - - test_eight['device']['site'] == 1 - - test_eight['device']['status'] == "staged" - - "'-' in test_eight['device']['name']" - - test_eight['device']['name'] | length == 36 diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_bay.yml b/tests/integration/targets/v3.7/tasks/netbox_device_bay.yml deleted file mode 100644 index b892d2160..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_bay.yml +++ /dev/null @@ -1,87 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_BAY -## -## -- name: "DEVICE_BAY 1: Necessary info creation" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - state: present - register: test_one - -- name: "DEVICE_BAY 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_bay']['name'] == "Device Bay One" - - test_one['device_bay']['device'] == 4 - - test_one['msg'] == "device_bay Device Bay One created" - -- name: "DEVICE_BAY 2: Create duplicate" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - state: present - register: test_two - -- name: "DEVICE_BAY 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_bay']['name'] == "Device Bay One" - - test_two['device_bay']['device'] == 4 - - test_two['msg'] == "device_bay Device Bay One already exists" - -- name: "DEVICE_BAY 3: ASSERT - Update" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Device Bay One - installed_device: Test Nexus Child One - tags: - - Schnozzberry - state: present - register: test_three - -- name: "DEVICE_BAY 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['installed_device'] == 5 - - test_three['diff']['after']['tags'][0] == 4 - - test_three['device_bay']['name'] == "Device Bay One" - - test_three['device_bay']['device'] == 4 - - test_three['device_bay']['installed_device'] == 5 - - test_three['device_bay']['tags'][0] == 4 - - test_three['msg'] == "device_bay Device Bay One updated" - -- name: "DEVICE_BAY 4: ASSERT - Delete" - netbox.netbox.netbox_device_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Bay One - state: absent - register: test_four - -- name: "DEVICE_BAY 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['device_bay']['name'] == "Device Bay One" - - test_four['device_bay']['device'] == 4 - - test_four['device_bay']['installed_device'] == 5 - - test_four['device_bay']['tags'][0] == 4 - - test_four['msg'] == "device_bay Device Bay One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_bay_template.yml b/tests/integration/targets/v3.7/tasks/netbox_device_bay_template.yml deleted file mode 100644 index c2ba1e32c..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_bay_template.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_BAY_TEMPLATE -## -## -- name: "DEVICE_BAY_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template One - state: present - register: test_one - -- name: "DEVICE_BAY_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_bay_template']['name'] == "Device Bay Template One" - - test_one['device_bay_template']['device_type'] == 7 - - test_one['msg'] == "device_bay_template Device Bay Template One created" - -- name: "DEVICE_BAY_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template One - state: present - register: test_two - -- name: "DEVICE_BAY_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_bay_template']['name'] == "Device Bay Template One" - - test_two['device_bay_template']['device_type'] == 7 - - test_two['msg'] == "device_bay_template Device Bay Template One already exists" - -- name: "DEVICE_BAY_TEMPLATE 3: ASSERT - Create Device Bay Template for Delete Test" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: WS Test 3850 - name: Device Bay Template Two - state: present - register: test_three - -- name: "DEVICE_BAY_TEMPLATE 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['device_bay_template']['name'] == "Device Bay Template Two" - - test_three['device_bay_template']['device_type'] == 7 - - test_three['msg'] == "device_bay_template Device Bay Template Two created" - -- name: "DEVICE_BAY_TEMPLATE 4: ASSERT - Delete" - netbox.netbox.netbox_device_bay_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Bay Template Two - device_type: WS Test 3850 - state: absent - register: test_four - -- name: "DEVICE_BAY_TEMPLATE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['device_bay_template']['name'] == "Device Bay Template Two" - - test_four['device_bay_template']['device_type'] == 7 - - test_four['msg'] == "device_bay_template Device Bay Template Two deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_interface.yml b/tests/integration/targets/v3.7/tasks/netbox_device_interface.yml deleted file mode 100644 index dd3c2383b..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_interface.yml +++ /dev/null @@ -1,312 +0,0 @@ ---- -# NETBOX_DEVICE_INTERFACE - -- name: 1 - Interface with required information - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - type: 1000Base-T (1GE) - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['msg'] == "interface GigabitEthernet3 created" - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['interface']['name'] == "GigabitEthernet3" - - test_one['interface']['device'] == 1 - -- name: 2 - Update test100 - GigabitEthernet3 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - mtu: 1600 - enabled: false - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "interface GigabitEthernet3 updated" - - test_two['diff']['after']['enabled'] == false - - test_two['diff']['after']['mtu'] == 1600 - - test_two['interface']['name'] == "GigabitEthernet3" - - test_two['interface']['device'] == 1 - - test_two['interface']['enabled'] == false - - test_two['interface']['mtu'] == 1600 - -- name: 3 - Delete interface test100 - GigabitEthernet3 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['msg'] == "interface GigabitEthernet3 deleted" - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - -- name: 4 - Create LAG with several specified options - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: port-channel1 - type: Link Aggregation Group (LAG) - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['msg'] == "interface port-channel1 created" - - test_four['diff']['before']['state'] == 'absent' - - test_four['diff']['after']['state'] == 'present' - - test_four['interface']['name'] == "port-channel1" - - test_four['interface']['device'] == 1 - - test_four['interface']['enabled'] == true - - test_four['interface']['type'] == "lag" - - test_four['interface']['mgmt_only'] == false - - test_four['interface']['mode'] == "access" - - test_four['interface']['mtu'] == 1600 - -- name: 5 - Create interface and assign it to parent LAG - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet3 - enabled: false - type: 1000Base-T (1GE) - lag: - name: port-channel1 - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['msg'] == "interface GigabitEthernet3 created" - - test_five['diff']['before']['state'] == 'absent' - - test_five['diff']['after']['state'] == 'present' - - test_five['interface']['name'] == "GigabitEthernet3" - - test_five['interface']['device'] == 1 - - test_five['interface']['enabled'] == false - - test_five['interface']['type'] == "1000base-t" - - test_five['interface']['mgmt_only'] == false - - test_five['interface']['lag'] == test_four["interface"]["id"] - - test_five['interface']['mode'] == "access" - - test_five['interface']['mtu'] == 1600 - -- name: 6 - Create interface as trunk port - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet21 - enabled: false - type: 1000Base-T (1GE) - untagged_vlan: - name: Wireless - site: Test Site - tagged_vlans: - - name: Data - site: Test Site - - name: VoIP - site: Test Site - mtu: 1600 - mgmt_only: true - mode: Tagged - state: present - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['msg'] == "interface GigabitEthernet21 created" - - test_six['diff']['before']['state'] == 'absent' - - test_six['diff']['after']['state'] == 'present' - - test_six['interface']['name'] == "GigabitEthernet21" - - test_six['interface']['device'] == 1 - - test_six['interface']['enabled'] == false - - test_six['interface']['type'] == "1000base-t" - - test_six['interface']['mgmt_only'] == true - - test_six['interface']['mode'] == "tagged" - - test_six['interface']['mtu'] == 1600 - - test_six['interface']['tagged_vlans'] == [2, 3] - - test_six['interface']['untagged_vlan'] == 1 - -- name: 7 - Duplicate Interface - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet1 - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - not test_seven['changed'] - - test_seven['msg'] == "interface GigabitEthernet1 already exists" - - test_seven['interface']['name'] == "GigabitEthernet1" - - test_seven['interface']['device'] == 1 - -- name: Add port-channel1 to R1 to test finding proper port-channel1 - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: R1-Device - name: port-channel1 - type: Link Aggregation Group (LAG) - -- name: 8 - Create interface and assign it to parent LAG - non dict - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet4 - enabled: false - type: 1000Base-T (1GE) - lag: port-channel1 - mtu: 1600 - mgmt_only: false - mode: Access - state: present - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['msg'] == "interface GigabitEthernet4 created" - - test_eight['diff']['before']['state'] == 'absent' - - test_eight['diff']['after']['state'] == 'present' - - test_eight['interface']['name'] == "GigabitEthernet4" - - test_eight['interface']['device'] == 1 - - test_eight['interface']['enabled'] == false - - test_eight['interface']['type'] == "1000base-t" - - test_eight['interface']['mgmt_only'] == false - - test_eight['interface']['lag'] == 10 - - test_eight['interface']['mode'] == "access" - - test_eight['interface']['mtu'] == 1600 - -- name: 9 - Create interface on VC child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus Child One - name: Ethernet2/2 - type: 1000Base-T (1GE) - state: present - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['msg'] == "interface Ethernet2/2 created" - - test_nine['diff']['before']['state'] == 'absent' - - test_nine['diff']['after']['state'] == 'present' - - test_nine['interface']['name'] == "Ethernet2/2" - - test_nine['interface']['device'] == 5 - - test_nine['interface']['enabled'] == true - - test_nine['interface']['type'] == "1000base-t" - -- name: 10 - Update interface on VC child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Ethernet2/2 - description: Updated child interface from parent device - type: 1000Base-T (1GE) - update_vc_child: true - state: present - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['msg'] == "interface Ethernet2/2 updated" - - test_ten['diff']['after']['description'] == 'Updated child interface from parent device' - - test_ten['interface']['name'] == "Ethernet2/2" - - test_ten['interface']['device'] == 5 - - test_ten['interface']['enabled'] == true - - test_ten['interface']['type'] == "1000base-t" - - test_ten['interface']['description'] == 'Updated child interface from parent device' - -- name: 11 - Update interface on VC child w/o update_vc_child - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: Test Nexus One - name: Ethernet2/2 - description: Updated child interface from parent device - test - type: 1000Base-T (1GE) - state: present - ignore_errors: true - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is failed - - test_eleven['msg'] == "Must set update_vc_child to True to allow child device interface modification" - -- name: 12 - Create interface and mark it as connected - netbox.netbox.netbox_device_interface: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: GigabitEthernet5 - type: 1000Base-T (1GE) - mark_connected: true - register: test_twelve - -- name: 12- ASSERT - ansible.builtin.assert: - that: - - test_twelve is changed - - test_twelve['msg'] == "interface GigabitEthernet5 created" - - test_twelve['diff']['before']['state'] == 'absent' - - test_twelve['diff']['after']['state'] == 'present' - - test_twelve['interface']['name'] == "GigabitEthernet5" - - test_twelve['interface']['device'] == 1 - - test_twelve['interface']['mark_connected'] == true diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_interface_template.yml b/tests/integration/targets/v3.7/tasks/netbox_device_interface_template.yml deleted file mode 100644 index abe8f3405..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_interface_template.yml +++ /dev/null @@ -1,109 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_INTERFACE_TEMPLATE -## -## -- name: 1 - Interface with required information - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['msg'] == "interface_template 10GBASE-T (10GE) created" - - test_one['diff']['before']['state'] == 'absent' - - test_one['diff']['after']['state'] == 'present' - - test_one['interface_template']['name'] == "10GBASE-T (10GE)" - - test_one['interface_template']['device_type'] == 2 - - test_one['interface_template']['type'] == '10gbase-t' - -- name: 2 - Update 10GBASE-T (10GE) - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - mgmt_only: true - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - test_two is changed - - test_two['msg'] == "interface_template 10GBASE-T (10GE) updated" - - test_two['diff']['after']['mgmt_only'] == true - - test_two['interface_template']['name'] == "10GBASE-T (10GE)" - - test_two['interface_template']['device_type'] == 2 - - test_two['interface_template']['mgmt_only'] == true - -- name: 3 - Delete interface template 10GBASE-T (10GE) - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: 10GBASE-T (10GE) - type: 10gbase-t - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['msg'] == "interface_template 10GBASE-T (10GE) deleted" - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - -- name: 4 - Create LAG with several specified options - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: port channel template - type: lag - mgmt_only: false - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['msg'] == "interface_template port channel template created" - - test_four['diff']['before']['state'] == 'absent' - - test_four['diff']['after']['state'] == 'present' - - test_four['interface_template']['name'] == "port channel template" - - test_four['interface_template']['device_type'] == 2 - - test_four['interface_template']['type'] == "lag" - - test_four['interface_template']['mgmt_only'] == false - -- name: 5 - Duplicate Interface Template port channel template - netbox.netbox.netbox_device_interface_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device_type: Arista Test - name: port channel template - type: lag - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['msg'] == "interface_template port channel template already exists" - - test_five['interface_template']['name'] == "port channel template" - - test_five['interface_template']['device_type'] == 2 - - test_five['interface_template']['type'] == "lag" diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_role.yml b/tests/integration/targets/v3.7/tasks/netbox_device_role.yml deleted file mode 100644 index b85ee2c86..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_role.yml +++ /dev/null @@ -1,101 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_ROLE -## -## -- name: "DEVICE_ROLE 1: Necessary info creation" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: FFFFFF - state: present - register: test_one - -- name: "DEVICE_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_role']['name'] == "Test Device Role" - - test_one['device_role']['slug'] == "test-device-role" - - test_one['device_role']['color'] == "ffffff" - - test_one['msg'] == "device_role Test Device Role created" - -- name: "DEVICE_ROLE 2: Create duplicate" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: FFFFFF - state: present - register: test_two - -- name: "DEVICE_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['device_role']['name'] == "Test Device Role" - - test_two['device_role']['slug'] == "test-device-role" - - test_two['device_role']['color'] == "ffffff" - - test_two['msg'] == "device_role Test Device Role already exists" - -- name: "DEVICE_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - color: "003EFF" - vm_role: false - state: present - register: test_three - -- name: "DEVICE_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['diff']['after']['vm_role'] == false - - test_three['device_role']['name'] == "Test Device Role" - - test_three['device_role']['slug'] == "test-device-role" - - test_three['device_role']['color'] == "003eff" - - test_three['device_role']['vm_role'] == false - - test_three['msg'] == "device_role Test Device Role updated" - -- name: "DEVICE_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - state: absent - register: test_four - -- name: "DEVICE_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "device_role Test Device Role deleted" - -- name: "DEVICE_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_device_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Device Role - state: absent - register: test_five - -- name: "DEVICE_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['device_role'] == None - - test_five['msg'] == "device_role Test Device Role already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_device_type.yml b/tests/integration/targets/v3.7/tasks/netbox_device_type.yml deleted file mode 100644 index 3027f6fd1..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_device_type.yml +++ /dev/null @@ -1,132 +0,0 @@ ---- -## -## -### NETBOX_DEVICE_TYPE -## -## -- name: "DEVICE_TYPE 1: Necessary info creation" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_one - -- name: "DEVICE_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['device_type']['slug'] == "test-device-type" - - test_one['device_type']['model'] == "ws-test-3750" - - test_one['device_type']['manufacturer'] == 3 - - test_one['msg'] == "device_type test-device-type created" - -- name: "DEVICE_TYPE 2: Create duplicate" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_two - -- name: "DEVICE_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_one['device_type']['slug'] == "test-device-type" - - test_one['device_type']['model'] == "ws-test-3750" - - test_one['device_type']['manufacturer'] == 3 - - test_two['msg'] == "device_type test-device-type already exists" - -- name: "DEVICE_TYPE 3: ASSERT - Update" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - slug: test-device-type - model: ws-test-3750 - manufacturer: Test Manufacturer - part_number: ws-3750g-v2 - u_height: 1.5 - is_full_depth: false - subdevice_role: parent - state: present - register: test_three - -- name: "DEVICE_TYPE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['is_full_depth'] == false - - test_three['diff']['after']['part_number'] == "ws-3750g-v2" - - test_three['diff']['after']['subdevice_role'] == "parent" - - test_three['device_type']['slug'] == "test-device-type" - - test_three['device_type']['model'] == "ws-test-3750" - - test_three['device_type']['manufacturer'] == 3 - - test_three['device_type']['is_full_depth'] == false - - test_three['device_type']['part_number'] == "ws-3750g-v2" - - test_three['device_type']['subdevice_role'] == "parent" - - test_three['msg'] == "device_type test-device-type updated" - -- name: "DEVICE_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: test-device-type - state: absent - register: test_four - -- name: "DEVICE_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "device_type test-device-type deleted" - -- name: "DEVICE_TYPE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Test Device Type - state: absent - register: test_five - -- name: "DEVICE_TYPE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['device_type'] == None - - test_five['msg'] == "device_type Test Device Type already absent" - -- name: "DEVICE_TYPE 6: Without Slug" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: WS Test 3850 - manufacturer: Test Manufacturer - subdevice_role: parent - state: present - register: test_six - -- name: "DEVICE_TYPE 6: ASSERT - Without Slug" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['device_type']['slug'] == "ws-test-3850" - - test_six['device_type']['model'] == "WS Test 3850" - - test_six['device_type']['manufacturer'] == 3 - - test_six['msg'] == "device_type WS Test 3850 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_fhrp_group.yml b/tests/integration/targets/v3.7/tasks/netbox_fhrp_group.yml deleted file mode 100644 index eed3f2f88..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_fhrp_group.yml +++ /dev/null @@ -1,91 +0,0 @@ ---- -## -## -### NETBOX_FHRP_GROUP -## -## -- name: "FHRP group 1: Test FHRP group creation" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - state: present - register: test_one - -- name: "FHRP group: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['fhrp_group']['group_id'] == 111 - - test_one['fhrp_group']['protocol'] == "glbp" - - test_one['msg'] == "fhrp_group 111 created" - -- name: "FHRP group 2: Create duplicate" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - state: present - register: test_two - -- name: "FHRP group 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['fhrp_group']['group_id'] == 111 - - test_two['fhrp_group']['protocol'] == "glbp" - - test_two['msg'] == "fhrp_group 111 already exists" - -- name: "FHRP group 3: Update FHRP group with other fields" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - protocol: glbp - group_id: 111 - auth_type: md5 - auth_key: 11111 - description: Test description - tags: - - Schnozzberry - state: present - register: test_three - -- name: "FHRP group 3: ASSERT - Update FHRP group with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['auth_type'] == "md5" - - test_three['diff']['after']['auth_key'] == "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER" - - test_three['diff']['after']['description'] == "Test description" - - test_three['diff']['after']['tags'][0] == 4 - - test_three['fhrp_group']['group_id'] == 111 - - test_three['fhrp_group']['protocol'] == "glbp" - - test_three['fhrp_group']['auth_type'] == "md5" - - test_three['fhrp_group']['auth_key'] == "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER" - - test_three['fhrp_group']['description'] == "Test description" - - test_three['fhrp_group']['tags'][0] == 4 - - test_three['msg'] == "fhrp_group 111 updated" - -- name: "FHRP group 4: ASSERT - Delete" - netbox.netbox.netbox_fhrp_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - group_id: 111 - state: absent - register: test_four - -- name: "FHRP group 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "fhrp_group 111 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_fhrp_group_assignment.yml b/tests/integration/targets/v3.7/tasks/netbox_fhrp_group_assignment.yml deleted file mode 100644 index 2dd2f6d61..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_fhrp_group_assignment.yml +++ /dev/null @@ -1,92 +0,0 @@ ---- -## -## -### NETBOX_FHRP_GROUP_ASSIGNMENT -## -## -- name: "FHRP group assignment 1: Test FHRP group assignment creation" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 1 - state: present - register: test_one - -- name: "FHRP group assignment: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['fhrp_group_assignment']['group'] == 1 - - test_one['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_one['fhrp_group_assignment']['interface_id'] == 1 - - test_one['fhrp_group_assignment']['priority'] == 1 - - test_one['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 created" - -- name: "FHRP group assignment 2: Create duplicate" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 1 - state: present - register: test_two - -- name: "FHRP group assignment 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['fhrp_group_assignment']['group'] == 1 - - test_two['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_two['fhrp_group_assignment']['interface_id'] == 1 - - test_two['fhrp_group_assignment']['priority'] == 1 - - test_two['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 already exists" - -- name: "FHRP group assignment 3: Update FHRP group assignment" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - priority: 2 - state: present - register: test_three - -- name: "FHRP group assignment 3: ASSERT - Update FHRP group assignment" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['fhrp_group_assignment']['group'] == 1 - - test_three['fhrp_group_assignment']['interface_type'] == "dcim.interface" - - test_three['fhrp_group_assignment']['interface_id'] == 1 - - test_three['fhrp_group_assignment']['priority'] == 2 - - test_three['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 updated" - -- name: "FHRP group assignment 4: Delete FHRP group assignment" - netbox.netbox.netbox_fhrp_group_assignment: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - fhrp_group: 1 - interface_type: dcim.interface - interface_id: 1 - state: absent - register: test_four - -- name: "FHRP group assignment 3: ASSERT - Delete FHRP group assignment" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "fhrp_group_assignment fhrp_group 1 > dcim.interface 1 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_front_port.yml b/tests/integration/targets/v3.7/tasks/netbox_front_port.yml deleted file mode 100644 index 7088bbeef..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_front_port.yml +++ /dev/null @@ -1,150 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_FRONT_PORT -## -## -- name: "FRONT_PORT 1: Necessary info creation" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_one - -- name: "FRONT_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['front_port']['name'] == "Front Port" - - test_one['front_port']['device'] == 1 - - test_one['front_port']['type'] == "bnc" - - test_one['front_port']['rear_port'] == 1 - - test_one['msg'] == "front_port Front Port created" - -- name: "FRONT_PORT 2: Create duplicate" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_two - -- name: "FRONT_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['front_port']['name'] == "Front Port" - - test_two['front_port']['device'] == 1 - - test_two['front_port']['type'] == "bnc" - - test_two['front_port']['rear_port'] == 1 - - test_two['msg'] == "front_port Front Port already exists" - -- name: "FRONT_PORT 3: Update Front Port with other fields" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: Rear Port - rear_port_position: 5 - description: test description - state: present - register: test_three - -- name: "FRONT_PORT 3: ASSERT - Update Front Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['rear_port_position'] == 5 - - test_three['diff']['after']['description'] == "test description" - - test_three['front_port']['name'] == "Front Port" - - test_three['front_port']['device'] == 1 - - test_three['front_port']['type'] == "bnc" - - test_three['front_port']['rear_port'] == 1 - - test_three['front_port']['rear_port_position'] == 5 - - test_three['front_port']['description'] == "test description" - - test_three['msg'] == "front_port Front Port updated" - -- name: "FRONT_PORT 4: Create Front Port for Delete Test" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port 2 - device: test100 - type: bnc - rear_port: Rear Port - state: present - register: test_four - -- name: "FRONT_PORT 4: ASSERT - Create Front Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['front_port']['name'] == "Front Port 2" - - test_four['front_port']['device'] == 1 - - test_four['front_port']['type'] == "bnc" - - test_four['front_port']['rear_port'] == 1 - - test_four['msg'] == "front_port Front Port 2 created" - -- name: "FRONT_PORT 5: Delete Front Port" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port 2 - device: test100 - type: bnc - rear_port: Rear Port - state: absent - register: test_five - -- name: "FRONT_PORT 5: ASSERT - Delete Front Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "front_port Front Port 2 deleted" - -- name: "FRONT_PORT 6: Create duplicate with rear_port dictionary" - netbox.netbox.netbox_front_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port - device: test100 - type: bnc - rear_port: - device: test100 - name: Rear Port - state: present - register: test_six - -- name: "FRONT_PORT 6: ASSERT - Create duplicate with rear_port dictionary" - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['front_port']['name'] == "Front Port" - - test_six['front_port']['device'] == 1 - - test_six['front_port']['type'] == "bnc" - - test_six['front_port']['rear_port'] == 1 - - test_six['msg'] == "front_port Front Port already exists" diff --git a/tests/integration/targets/v3.7/tasks/netbox_front_port_template.yml b/tests/integration/targets/v3.7/tasks/netbox_front_port_template.yml deleted file mode 100644 index 966279fa8..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_front_port_template.yml +++ /dev/null @@ -1,147 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_FRONT_PORT_TEMPLATE -## -## -- name: "FRONT_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_one - -- name: "FRONT_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['front_port_template']['name'] == "Front Port Template" - - test_one['front_port_template']['device_type'] == 1 - - test_one['front_port_template']['type'] == "bnc" - - test_one['front_port_template']['rear_port'] == 1 - - test_one['msg'] == "front_port_template Front Port Template created" - -- name: "FRONT_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_two - -- name: "FRONT_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['front_port_template']['name'] == "Front Port Template" - - test_two['front_port_template']['device_type'] == 1 - - test_two['front_port_template']['type'] == "bnc" - - test_two['front_port_template']['rear_port'] == 1 - - test_two['msg'] == "front_port_template Front Port Template already exists" - -- name: "FRONT_PORT_TEMPLATE 3: Update Front Port Template with other fields" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - rear_port_template_position: 5 - state: present - register: test_three - -- name: "FRONT_PORT_TEMPLATE 3: ASSERT - Update Front Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['rear_port_position'] == 5 - - test_three['front_port_template']['name'] == "Front Port Template" - - test_three['front_port_template']['device_type'] == 1 - - test_three['front_port_template']['type'] == "bnc" - - test_three['front_port_template']['rear_port_position'] == 5 - - test_three['front_port_template']['rear_port'] == 1 - - test_three['msg'] == "front_port_template Front Port Template updated" - -- name: "FRONT_PORT_TEMPLATE 4: Create Front Port Template for Delete Test" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template 2 - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: present - register: test_four - -- name: "FRONT_PORT_TEMPLATE 4: ASSERT - Create Front Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['front_port_template']['name'] == "Front Port Template 2" - - test_four['front_port_template']['device_type'] == 1 - - test_four['front_port_template']['type'] == "bnc" - - test_four['front_port_template']['rear_port'] == 1 - - test_four['msg'] == "front_port_template Front Port Template 2 created" - -- name: "FRONT_PORT_TEMPLATE 5: Delete Front Port Template" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template 2 - device_type: Cisco Test - type: bnc - rear_port_template: Rear Port Template - state: absent - register: test_five - -- name: "FRONT_PORT_TEMPLATE 5: ASSERT - Delete Front Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "front_port_template Front Port Template 2 deleted" - -- name: "FRONT_PORT 6: Create duplicate with rear_port_template dictionary" - netbox.netbox.netbox_front_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Front Port Template - device_type: Cisco Test - type: bnc - rear_port_template: - device: Cisco Test - name: Rear Port Template - state: present - register: test_six - -- name: "FRONT_PORT 6: ASSERT - Create duplicate with rear_port_template dictionary" - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['front_port_template']['name'] == "Front Port Template" - - test_six['front_port_template']['device_type'] == 1 - - test_six['front_port_template']['type'] == "bnc" - - test_six['front_port_template']['rear_port'] == 1 - - test_six['msg'] == "front_port_template Front Port Template already exists" diff --git a/tests/integration/targets/v3.7/tasks/netbox_inventory_item.yml b/tests/integration/targets/v3.7/tasks/netbox_inventory_item.yml deleted file mode 100644 index 5b330c3a5..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_inventory_item.yml +++ /dev/null @@ -1,203 +0,0 @@ ---- -## -## -### NETBOX_INVENTORY_ITEM -## -## -- name: "INVENTORY_ITEM 1: Necessary info creation" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: present - register: test_one - -- name: "INVENTORY_ITEM 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one.diff.before.state == "absent" - - test_one.diff.after.state == "present" - - test_one.inventory_item.name == "10G-SFP+" - - test_one.inventory_item.device == 1 - - test_one.msg == "inventory_item 10G-SFP+ created" - -- name: "INVENTORY_ITEM 2: Create duplicate" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: present - register: test_two - -- name: "INVENTORY_ITEM 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two.changed - - test_two.inventory_item.name == "10G-SFP+" - - test_two.inventory_item.device == 1 - - test_two.msg == "inventory_item 10G-SFP+ already exists" - -- name: "INVENTORY_ITEM 3: Update properties" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - manufacturer: Cisco - part_id: 10G-SFP+ - serial: "1234" - asset_tag: "1234" - description: New SFP - discovered: true - tags: - - Schnozzberry - state: present - register: test_three - -- name: "INVENTORY_ITEM 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three.diff.after.asset_tag == "1234" - - test_three.diff.after.serial == "1234" - - test_three.diff.after.description == "New SFP" - - test_three.diff.after.manufacturer == 1 - - test_three.diff.after.part_id == "10G-SFP+" - - test_three.diff.after.tags[0] == 4 - - test_three.diff.after.discovered == True - - test_three.inventory_item.name == "10G-SFP+" - - test_three.inventory_item.device == 1 - - test_three.inventory_item.asset_tag == "1234" - - test_three.inventory_item.serial == "1234" - - test_three.inventory_item.description == "New SFP" - - test_three.inventory_item.manufacturer == 1 - - test_three.inventory_item.part_id == "10G-SFP+" - - test_three.inventory_item.tags[0] == 4 - - test_three.inventory_item.discovered == True - - test_three.msg == "inventory_item 10G-SFP+ updated" - -- name: "INVENTORY_ITEM 4: Delete inventory item" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: 10G-SFP+ - state: absent - register: test_four - -- name: "INVENTORY_ITEM 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four.inventory_item.name == "10G-SFP+" - - test_four.inventory_item.device == 1 - - test_four.inventory_item.asset_tag == "1234" - - test_four.inventory_item.serial == "1234" - - test_four.inventory_item.description == "New SFP" - - test_four.inventory_item.manufacturer == 1 - - test_four.inventory_item.part_id == "10G-SFP+" - - test_four.inventory_item.tags[0] == 4 - - test_four.msg == "inventory_item 10G-SFP+ deleted" - -- name: "INVENTORY_ITEM 5: PREWORK - Create inventory item role" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Processor - color: FFFFFF - state: present - register: test_five_prework - -- name: "INVENTORY_ITEM 5: Create inventory item with role" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_processor - inventory_item_role: Processor - state: present - register: test_five - -- name: "INVENTORY_ITEM 5: ASSERT - Inventory item creation with role" - ansible.builtin.assert: - that: - - test_five is changed - - test_five.diff.before.state == "absent" - - test_five.diff.after.state == "present" - - test_five.inventory_item.name == "test_processor" - - test_five.inventory_item.role == test_five_prework.inventory_item_role.id - - test_five.inventory_item.device == 1 - - test_five.msg == "inventory_item test_processor created" - -- name: "INVENTORY_ITEM 6: Create inventory item with missing role" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_processor - inventory_item_role: Foo - state: present - ignore_errors: true - register: test_six - -- name: "INVENTORY_ITEM 6: ASSERT - Inventory item creation with missing role" - ansible.builtin.assert: - that: - - test_six.failed - - test_six.msg == "Could not resolve id of inventory_item_role: Foo" - -- name: "INVENTORY_ITEM 7: Create inventory item with component" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_component - component_type: dcim.interface - component: - name: GigabitEthernet2 - device: test100 - state: present - register: test_seven - -- name: "INVENTORY_ITEM 7: ASSERT - Inventory item creation with component" - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven.diff.before.state == "absent" - - test_seven.diff.after.state == "present" - - test_seven.inventory_item.name == "test_component" - - test_seven.inventory_item.component_type == "dcim.interface" - - test_seven.inventory_item.component_id == 4 - - test_seven.inventory_item.device == 1 - - test_seven.msg == "inventory_item test_component created" - -- name: "INVENTORY_ITEM 8: Create inventory item with missing component_type" - netbox.netbox.netbox_inventory_item: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: test_component - component: - name: GigabitEthernet2 - device: test100 - state: present - ignore_errors: true - register: test_eight - -- name: "INVENTORY_ITEM 8: ASSERT - Inventory item creation with missing component_type" - ansible.builtin.assert: - that: - - test_eight.failed - - test_eight.msg == "parameters are required together: component_type, component" diff --git a/tests/integration/targets/v3.7/tasks/netbox_inventory_item_role.yml b/tests/integration/targets/v3.7/tasks/netbox_inventory_item_role.yml deleted file mode 100644 index 71d86d747..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_inventory_item_role.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- -## -## -### NETBOX_INVENTORY_ITEM_ROLE -## -## -- name: "INVENTORY_ITEM_ROLE 1: Necessary info creation" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: FFFFFF - state: present - register: test_one - -- name: "INVENTORY_ITEM_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_one['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_one['inventory_item_role']['color'] == "ffffff" - - test_one['msg'] == "inventory_item_role Test Inventory Item Role created" - -- name: "INVENTORY_ITEM_ROLE 2: Create duplicate" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: FFFFFF - state: present - register: test_two - -- name: "INVENTORY_ITEM_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_two['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_two['inventory_item_role']['color'] == "ffffff" - - test_two['msg'] == "inventory_item_role Test Inventory Item Role already exists" - -- name: "INVENTORY_ITEM_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - color: "003EFF" - state: present - register: test_three - -- name: "INVENTORY_ITEM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['inventory_item_role']['name'] == "Test Inventory Item Role" - - test_three['inventory_item_role']['slug'] == "test-inventory-item-role" - - test_three['inventory_item_role']['color'] == "003eff" - - test_three['msg'] == "inventory_item_role Test Inventory Item Role updated" - -- name: "INVENTORY_ITEM_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - state: absent - register: test_four - -- name: "INVENTORY_ITEM_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "inventory_item_role Test Inventory Item Role deleted" - -- name: "INVENTORY_ITEM_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_inventory_item_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Inventory Item Role - state: absent - register: test_five - -- name: "INVENTORY_ITEM_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['inventory_item_role'] == None - - test_five['msg'] == "inventory_item_role Test Inventory Item Role already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_ipam_role.yml b/tests/integration/targets/v3.7/tasks/netbox_ipam_role.yml deleted file mode 100644 index 9f376c2ed..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_ipam_role.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_IPAM_ROLE -## -## -- name: "IPAM_ROLE 1: Necessary info creation" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: present - register: test_one - -- name: "IPAM_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['role']['name'] == "Test IPAM Role" - - test_one['role']['slug'] == "test-ipam-role" - - test_one['msg'] == "role Test IPAM Role created" - -- name: "IPAM_ROLE 2: Create duplicate" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: present - register: test_two - -- name: "IPAM_ROLE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['role']['name'] == "Test IPAM Role" - - test_two['role']['slug'] == "test-ipam-role" - - test_two['msg'] == "role Test IPAM Role already exists" - -- name: "IPAM_ROLE 3: ASSERT - Update" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - weight: 4096 - state: present - register: test_three - -- name: "IPAM_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['weight'] == 4096 - - test_three['role']['name'] == "Test IPAM Role" - - test_three['role']['slug'] == "test-ipam-role" - - test_three['role']['weight'] == 4096 - - test_three['msg'] == "role Test IPAM Role updated" - -- name: "IPAM_ROLE 4: ASSERT - Delete" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: absent - register: test_four - -- name: "IPAM_ROLE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "role Test IPAM Role deleted" - -- name: "IPAM_ROLE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_ipam_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test IPAM Role - state: absent - register: test_five - -- name: "IPAM_ROLE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['role'] == None - - test_five['msg'] == "role Test IPAM Role already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_journal_entry.yml b/tests/integration/targets/v3.7/tasks/netbox_journal_entry.yml deleted file mode 100644 index 7eead8db1..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_journal_entry.yml +++ /dev/null @@ -1,26 +0,0 @@ ---- -## -## -### NETBOX_JOURNAL_ENTRY -## -## -- name: "JOURNAL ENTRY 1: Creation" - netbox.netbox.netbox_journal_entry: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - assigned_object_type: dcim.device - assigned_object_id: 1 - comments: | - Comment on device - state: new - register: test_one - -- name: "JOURNAL_ENTRY 1: ASSERT - Creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['journal_entry']['kind'] == "info" - - test_one['msg'] == "journal_entry created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_l2vpn.yml b/tests/integration/targets/v3.7/tasks/netbox_l2vpn.yml deleted file mode 100644 index 655be9455..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_l2vpn.yml +++ /dev/null @@ -1,99 +0,0 @@ ---- -## -## -### NETBOX_L2VPN -## -## -- name: "L2VPN 1: Necessary info creation" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: present - register: test_one - -- name: "L2VPN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['l2vpn']['name'] == "Test L2VPN" - - test_one['l2vpn']['type'] == "vxlan" - - test_one['msg'] == "l2vpn Test L2VPN created" - -- name: "L2VPN 2: Create duplicate" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: present - register: test_two - -- name: "L2VPN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['l2vpn']['name'] == "Test L2VPN" - - test_two['l2vpn']['type'] == "vxlan" - - test_two['msg'] == "l2vpn Test L2VPN already exists" - -- name: "L2VPN 4: ASSERT - Update" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - tenant: Test Tenant - description: Updated description - import_targets: - - 4000:4000 - - 5000:5000 - export_targets: - - 6000:6000 - tags: - - Schnozzberry - state: present - register: test_four - -- name: "L2VPN: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['import_targets'] == [1, 2] - - test_four['diff']['after']['export_targets'] == [3] - - test_four['diff']['after']['tags'][0] == 4 - - test_four['l2vpn']['name'] == "Test L2VPN" - - test_four['l2vpn']['tenant'] == 1 - - test_four['l2vpn']['import_targets'] == [1, 2] - - test_four['l2vpn']['export_targets'] == [3] - - test_four['l2vpn']['description'] == "Updated description" - - test_four['l2vpn']['tags'][0] == 4 - - test_four['msg'] == "l2vpn Test L2VPN updated" - -- name: "L2VPN: ASSERT - Delete" - netbox.netbox.netbox_l2vpn: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test L2VPN - type: vxlan - state: absent - register: test_six - -- name: "L2VPN 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['l2vpn']['name'] == "Test L2VPN" - - test_six['l2vpn']['tenant'] == 1 - - test_six['l2vpn']['type'] == "vxlan" - - test_six['l2vpn']['description'] == "Updated description" - - test_six['l2vpn']['tags'][0] == 4 - - test_six['msg'] == "l2vpn Test L2VPN deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_l2vpn_termination.yml b/tests/integration/targets/v3.7/tasks/netbox_l2vpn_termination.yml deleted file mode 100644 index 0dd539943..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_l2vpn_termination.yml +++ /dev/null @@ -1,94 +0,0 @@ ---- -## -## -### NETBOX_L2VPN_TERMINATION -## -## -- name: "L2VPN_TERMINATION 1: Necessary info creation" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: present - register: test_one - -- name: "L2VPN_TERMINATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['l2vpn_termination']['l2vpn'] == 1 - - test_one['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_one['l2vpn_termination']['assigned_object_id'] == 1 - - test_one['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 created" - -- name: "L2VPN_TERMINATION 2: Create duplicate" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: present - register: test_two - -- name: "L2VPN_TERMINATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['l2vpn_termination']['l2vpn'] == 1 - - test_two['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_two['l2vpn_termination']['assigned_object_id'] == 1 - - test_two['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 already exists" - -- name: "L2VPN_TERMINATION 3: Update" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - tags: - - Schnozzberry - state: present - register: test_three - -- name: "L2VPN_TERMINATION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['tags'][0] == 4 - - test_three['l2vpn_termination']['l2vpn'] == 1 - - test_three['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_three['l2vpn_termination']['assigned_object_id'] == 1 - - test_three['l2vpn_termination']['tags'][0] == 4 - - test_three['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 updated" - -- name: "L2VPN_TERMINATION 4: Delete" - netbox.netbox.netbox_l2vpn_termination: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - l2vpn: 1 - assigned_object_type: dcim.interface - assigned_object_id: 1 - state: absent - register: test_four - -- name: "L2VPN_TERMINATION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['l2vpn_termination']['l2vpn'] == 1 - - test_four['l2vpn_termination']['assigned_object_type'] == "dcim.interface" - - test_four['l2vpn_termination']['assigned_object_id'] == 1 - - test_four['l2vpn_termination']['tags'][0] == 4 - - test_four['msg'] == "l2vpn_termination l2vpn 1 <> dcim.interface 1 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_location.yml b/tests/integration/targets/v3.7/tasks/netbox_location.yml deleted file mode 100644 index 2e37c7682..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_location.yml +++ /dev/null @@ -1,85 +0,0 @@ ---- -## -## -### NETBOX_LOCATION -## -## -- name: "LOCATION 1: Necessary info creation" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - site: Test Site - state: present - register: test_one - -- name: "LOCATION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['location']['name'] == "Location" - - test_one['location']['slug'] == "location" - - test_one['location']['site'] == 1 - - test_one['msg'] == "location Location created" - -- name: "LOCATION 2: Create duplicate" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - site: Test Site - state: present - register: test_two - -- name: "LOCATION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['location']['name'] == "Location" - - test_two['location']['slug'] == "location" - - test_two['location']['site'] == 1 - - test_two['msg'] == "location Location already exists" - -- name: "LOCATION 3: Update" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - parent_location: Parent Rack Group - description: This is a location - state: present - register: test_three - -- name: "LOCATION 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 2 - - test_three['diff']['after']['description'] == "This is a location" - - test_three['location']['name'] == "Location" - - test_three['location']['slug'] == "location" - - test_three['location']['parent'] == 2 - - test_three['location']['description'] == "This is a location" - - test_three['msg'] == "location Location updated" - -- name: "LOCATION 4: Delete" - netbox.netbox.netbox_location: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Location - state: absent - register: test_four - -- name: "LOCATION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "location Location deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_lookup.yml b/tests/integration/targets/v3.7/tasks/netbox_lookup.yml deleted file mode 100644 index 046f327eb..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_lookup.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -## -## -### NETBOX_LOOKUP -## -## -- name: "NETBOX_LOOKUP 1: Lookup returns exactly two sites" - ansible.builtin.assert: - that: query_result == "3" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'sites', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | count }}" - -- name: "NETBOX_LOOKUP 2: Query doesn't return Wibble (sanity check json_query)" - ansible.builtin.assert: - that: query_result == "0" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.display==`Wibble`]') - | count }}" - -- name: "NETBOX_LOOKUP 3: Device query returns exactly one TestDeviceR1" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.display==`TestDeviceR1`]') - | count }}" - -- name: "NETBOX_LOOKUP 4: VLAN ID 400 can be queried and is named 'Test VLAN'" - ansible.builtin.assert: - that: query_result == 'Test VLAN' - vars: - query_result: "{{ (query('netbox.netbox.nb_lookup', 'vlans', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') | community.general.json_query('[?value.vid==`400`].value.name'))[0] - }}" - -- name: "NETBOX_LOOKUP 5: Add one of two devices for lookup filter test." - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: L1 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - tags: - - nolookup - state: present - -- name: "NETBOX_LOOKUP 6: Add two of two devices for lookup filter test." - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: L2 - device_type: Cisco Test - device_role: Core Switch - site: Test Site2 - status: Staged - tags: - - lookup - state: present - -- name: "NETBOX_LOOKUP 7: Device query returns exactly the L2 device" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch tag=lookup', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') - | community.general.json_query('[?value.display==`L2`]') | count }}" - -- name: "NETBOX_LOOKUP 8: Device query specifying raw data returns payload without key/value dict" - ansible.builtin.assert: - that: query_result == "1" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch tag=lookup', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567', - raw_data=True) | community.general.json_query('[?display==`L2`]') | count }}" - -- name: "NETBOX_LOOKUP 9: Device query specifying multiple sites, Make sure L1 and L2 are in the results" - ansible.builtin.assert: - that: - - "'L1' in query_result" - - "'L2' in query_result" - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='role=core-switch site=test-site site=test-site2', api_endpoint='http://localhost:32768', - token='0123456789abcdef0123456789abcdef01234567', raw_data=True) | community.general.json_query('[*].display') }}" - -- name: "NETBOX_LOOKUP 10: Device query by ID" - ansible.builtin.assert: - that: query_result - vars: - query_result: "{{ query('netbox.netbox.nb_lookup', 'devices', api_filter='id=1', api_endpoint='http://localhost:32768', token='0123456789abcdef0123456789abcdef01234567') - }}" - -- name: "NETBOX_LOOKUP 11: Device query by ansible variable" - ansible.builtin.set_fact: - hostname: "L2" - -- name: "NETBOX LOOKUP 11.1: Obtain details of a single device from NetBox" - ansible.builtin.debug: - msg: > - "Device {{item.0.value.display}} (ID: {{item.0.key}}) was - manufactured by {{ item.0.value.device_type.manufacturer.name }}" - loop: - - '{{ query("netbox.netbox.nb_lookup", "devices", - api_filter="name=" ~hostname, - api_endpoint="http://localhost:32768", - token="0123456789abcdef0123456789abcdef01234567") }}' diff --git a/tests/integration/targets/v3.7/tasks/netbox_manufacturer.yml b/tests/integration/targets/v3.7/tasks/netbox_manufacturer.yml deleted file mode 100644 index 39804659b..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_manufacturer.yml +++ /dev/null @@ -1,91 +0,0 @@ ---- -## -## -### NETBOX_MANUFACTURER -## -## -- name: "MANUFACTURER 1: Necessary info creation" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: present - register: test_one - -- name: "MANUFACTURER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['manufacturer']['name'] == "Test Manufacturer Two" - - test_one['manufacturer']['slug'] == "test-manufacturer-two" - - test_one['msg'] == "manufacturer Test Manufacturer Two created" - -- name: "MANUFACTURER 2: Create duplicate" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: present - register: test_two - -- name: "MANUFACTURER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['manufacturer']['name'] == "Test Manufacturer Two" - - test_two['manufacturer']['slug'] == "test-manufacturer-two" - - test_two['msg'] == "manufacturer Test Manufacturer Two already exists" - -- name: "MANUFACTURER 3: Update" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test manufacturer two - state: present - register: test_three - -- name: "MANUFACTURER 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three['changed'] - - test_three['manufacturer']['name'] == "test manufacturer two" - - test_three['manufacturer']['slug'] == "test-manufacturer-two" - - test_three['msg'] == "manufacturer test manufacturer two updated" - -- name: "MANUFACTURER 4: ASSERT - Delete" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: test manufacturer two - state: absent - register: test_four - -- name: "MANUFACTURER 3: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "manufacturer test manufacturer two deleted" - -- name: "MANUFACTURER 5: ASSERT - Delete non existing" - netbox.netbox.netbox_manufacturer: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Manufacturer Two - state: absent - register: test_five - -- name: "MANUFACTURER 5: ASSERT - Delete non existing" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['manufacturer'] == None - - test_five['msg'] == "manufacturer Test Manufacturer Two already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_module.yml b/tests/integration/targets/v3.7/tasks/netbox_module.yml deleted file mode 100644 index 0a18f3894..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_module.yml +++ /dev/null @@ -1,107 +0,0 @@ ---- -## -## -### NETBOX_MODULE -## -## -- name: "MODULE 1: Necessary info creation" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: present - register: test_one - -- name: "MODULE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module']['device'] == "C9300-DEMO" - - test_one['module']['module_bay'] == "Network Module" - - test_one['module']['module_type'] == "C9300-NM-8X" - - test_one['msg'] == "module ws-test-3750 created" - -- name: "MODULE 2: Create duplicate" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: present - register: test_two - -- name: "MODULE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['module']['device'] == "C9300-DEMO" - - test_two['module']['module_bay'] == "Network Module" - - test_two['module']['module_type'] == "C9300-NM-8X" - - test_two['msg'] == "module C9300-NM-8X already exists in slot Network Module of C9300-DEMO" - -- name: "MODULE 3: ASSERT - Update" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - serial: XXXNNNNXXXX - state: present - register: test_three - -- name: "MODULE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['serial'] == "XXXNNNNXXXX" - - test_three['module']['device'] == "C9300-DEMO" - - test_three['module']['module_bay'] == "Network Module" - - test_three['module']['module_type'] == "C9300-NM-8X" - - test_three['module']['serial'] == "XXXNNNNXXXX" - - test_three['msg'] == "module C9300-DEMO - Network Module - C9300-NM-8X updated" - -- name: "MODULE 4: ASSERT - Delete" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-8X - state: absent - register: test_four - -- name: "MODULE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module C9300-NM-8X deleted in slot Network Module of C9300-DEMO" - -- name: "MODULE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - module_bay: Network Module - module_type: C9300-NM-2Y - state: absent - register: test_five - -- name: "MODULE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module'] == None - - test_five['msg'] == "module Test Module Type already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_module_bay.yml b/tests/integration/targets/v3.7/tasks/netbox_module_bay.yml deleted file mode 100644 index 843a4767e..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_module_bay.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -## -## -### NETBOX_MODULE_BAY -## -## -- name: "MODULE 1: Necessary info creation" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - state: present - register: test_one - -- name: "MODULE BAY 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module_bay']['device'] == "C9300-DEMO" - - test_one['module_bay']['name'] == "Network Module" - - test_one['module_bay']['position'] == "0" - - test_one['msg'] == "module_bay Network Module in C9300-DEMO position 0 created" - -- name: "MODULE BAY 2: Create duplicate" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - state: present - register: test_two - -- name: "MODULE BAY 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['module_bay']['device'] == "C9300-DEMO" - - test_two['module_bay']['name'] == "Network Module" - - test_two['module_bay']['position'] == "0" - - test_two['msg'] == "module_bay Network Module in C9300-DEMO position 0 already exists" - -- name: "MODULE BAY 3: ASSERT - Update" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - position: 0 - label: TEST - state: present - register: test_three - -- name: "MODULE BAY 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['label'] == "TEST" - - test_three['module_bay']['device'] == "C9300-DEMO" - - test_three['module_bay']['name'] == "Network Module" - - test_three['module_bay']['position'] == "0" - - test_three['module_bay']['label'] == "TEST" - - test_three['msg'] == "module_bay Network Module in C9300-DEMO position 0 updated with label TEST" - -- name: "MODULE BAY 4: ASSERT - Delete" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - state: absent - register: test_four - -- name: "MODULE BAY 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module_bay Network Module in C9300-DEMO position 0 deleted" - -- name: "MODULE BAY 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module_bay: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: C9300-DEMO - name: Network Module - state: absent - register: test_five - -- name: "MODULE BAY 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module_bay'] == None - - test_five['msg'] == "module_bay Network Module already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_module_type.yml b/tests/integration/targets/v3.7/tasks/netbox_module_type.yml deleted file mode 100644 index 8ab077803..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_module_type.yml +++ /dev/null @@ -1,97 +0,0 @@ ---- -## -## -### NETBOX_MODULE_TYPE -## -## -- name: "MODULE_TYPE 1: Necessary info creation" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_one - -- name: "MODULE_TYPE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['module_type']['model'] == "ws-test-3750" - - test_one['module_type']['manufacturer'] == 3 - - test_one['msg'] == "module_type ws-test-3750 created" - -- name: "MODULE_TYPE 2: Create duplicate" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - state: present - register: test_two - -- name: "MODULE_TYPE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_one['module_type']['model'] == "ws-test-3750" - - test_one['module_type']['manufacturer'] == 3 - - test_two['msg'] == "module_type ws-test-3750 already exists" - -- name: "MODULE_TYPE 3: ASSERT - Update" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - manufacturer: Test Manufacturer - part_number: ws-3750g-v2 - state: present - register: test_three - -- name: "MODULE_TYPE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['part_number'] == "ws-3750g-v2" - - test_three['module_type']['model'] == "ws-test-3750" - - test_three['module_type']['manufacturer'] == 3 - - test_three['module_type']['part_number'] == "ws-3750g-v2" - - test_three['msg'] == "module_type ws-test-3750 updated" - -- name: "MODULE_TYPE 4: ASSERT - Delete" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: ws-test-3750 - state: absent - register: test_four - -- name: "MODULE_TYPE 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "module_type ws-test-3750 deleted" - -- name: "MODULE_TYPE 5: ASSERT - Delete non existing" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Test Module Type - state: absent - register: test_five - -- name: "MODULE_TYPE 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['module_type'] == None - - test_five['msg'] == "module_type Test Module Type already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_platform.yml b/tests/integration/targets/v3.7/tasks/netbox_platform.yml deleted file mode 100644 index 8a36ef2c1..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_platform.yml +++ /dev/null @@ -1,92 +0,0 @@ ---- -## -## -### NETBOX_PLATFORM -## -## -- name: "PLATFORM 1: Necessary info creation" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: present - register: test_one - -- name: "PLATFORM 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['platform']['name'] == "Test Platform" - - test_one['platform']['slug'] == "test-platform" - - test_one['msg'] == "platform Test Platform created" - -- name: "PLATFORM 2: Create duplicate" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: present - register: test_two - -- name: "PLATFORM 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['platform']['name'] == "Test Platform" - - test_two['platform']['slug'] == "test-platform" - - test_two['msg'] == "platform Test Platform already exists" - -- name: "PLATFORM 3: ASSERT - Update" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - manufacturer: Test Manufacturer - state: present - register: test_three - -- name: "PLATFORM 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['manufacturer'] == 3 - - test_three['platform']['manufacturer'] == 3 - - test_three['msg'] == "platform Test Platform updated" - -- name: "PLATFORM 4: ASSERT - Delete" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: absent - register: test_four - -- name: "PLATFORM 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "platform Test Platform deleted" - -- name: "PLATFORM 5: ASSERT - Delete non existing" - netbox.netbox.netbox_platform: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Platform - state: absent - register: test_five - -- name: "PLATFORM 5: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not test_five['changed'] - - test_five['platform'] == None - - test_five['msg'] == "platform Test Platform already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_feed.yml b/tests/integration/targets/v3.7/tasks/netbox_power_feed.yml deleted file mode 100644 index f4ac71e01..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_feed.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_FEED -## -## -- name: "POWER_FEED 1: Necessary info creation" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - state: present - register: test_one - -- name: "POWER_FEED 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_feed']['name'] == "Power Feed" - - test_one['power_feed']['power_panel'] == 1 - - test_one['msg'] == "power_feed Power Feed created" - -- name: "POWER_FEED 2: Create duplicate" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - state: present - register: test_two - -- name: "POWER_FEED 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_feed']['name'] == "Power Feed" - - test_two['power_feed']['power_panel'] == 1 - - test_two['msg'] == "power_feed Power Feed already exists" - -- name: "POWER_FEED 3: Update power_feed with other fields" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed - power_panel: Power Panel - status: offline - type: redundant - supply: dc - phase: three-phase - voltage: 400 - amperage: 32 - max_utilization: 25 - comments: totally normal power feed - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update power_feed with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "offline" - - test_three['diff']['after']['type'] == "redundant" - - test_three['diff']['after']['supply'] == "dc" - - test_three['diff']['after']['phase'] == "three-phase" - - test_three['diff']['after']['voltage'] == 400 - - test_three['diff']['after']['amperage'] == 32 - - test_three['diff']['after']['max_utilization'] == 25 - - test_three['diff']['after']['comments'] == "totally normal power feed" - - test_three['power_feed']['name'] == "Power Feed" - - test_three['power_feed']['power_panel'] == 1 - - test_three['power_feed']['status'] == "offline" - - test_three['power_feed']['type'] == "redundant" - - test_three['power_feed']['supply'] == "dc" - - test_three['power_feed']['phase'] == "three-phase" - - test_three['power_feed']['voltage'] == 400 - - test_three['power_feed']['amperage'] == 32 - - test_three['power_feed']['max_utilization'] == 25 - - test_three['power_feed']['comments'] == "totally normal power feed" - - test_three['msg'] == "power_feed Power Feed updated" - -- name: "POWER_FEED 4: Create Power Feed for Delete Test" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed 2 - power_panel: Power Panel - state: present - register: test_four - -- name: "POWER_FEED 4: ASSERT - Create Power Feed for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_feed']['name'] == "Power Feed 2" - - test_four['power_feed']['power_panel'] == 1 - - test_four['msg'] == "power_feed Power Feed 2 created" - -- name: "POWER_FEED 5: Delete Power Feed" - netbox.netbox.netbox_power_feed: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Feed 2 - power_panel: Power Panel - state: absent - register: test_five - -- name: "POWER_FEED 5: ASSERT - Delete Power Feed" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_feed Power Feed 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_outlet.yml b/tests/integration/targets/v3.7/tasks/netbox_power_outlet.yml deleted file mode 100644 index 84f9d3255..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_outlet.yml +++ /dev/null @@ -1,114 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_OUTLET -## -## -- name: "POWER_OUTLET 1: Necessary info creation" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - state: present - register: test_one - -- name: "POWER_OUTLET 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_outlet']['name'] == "Power Outlet" - - test_one['power_outlet']['device'] == 10 - - test_one['msg'] == "power_outlet Power Outlet created" - -- name: "POWER_OUTLET 2: Create duplicate" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - state: present - register: test_two - -- name: "POWER_OUTLET 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_outlet']['name'] == "Power Outlet" - - test_two['power_outlet']['device'] == 10 - - test_two['msg'] == "power_outlet Power Outlet already exists" - -- name: "POWER_OUTLET 3: Update power_outlet with other fields" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet - device: Device Power Tests - type: ita-e - power_port: Power Port - feed_leg: B - description: test description - state: present - register: test_three - -- name: "POWER_OUTLET 3: ASSERT - Update power_outlet with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['power_port'] == 1 - - test_three['diff']['after']['feed_leg'] == "B" - - test_three['diff']['after']['description'] == "test description" - - test_three['power_outlet']['name'] == "Power Outlet" - - test_three['power_outlet']['device'] == 10 - - test_three['power_outlet']['type'] == "ita-e" - - test_three['power_outlet']['power_port'] == 1 - - test_three['power_outlet']['feed_leg'] == "B" - - test_three['power_outlet']['description'] == "test description" - - test_three['msg'] == "power_outlet Power Outlet updated" - -- name: "POWER_OUTLET 4: Create Power Outlet for Delete Test" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet 2 - device: Device Power Tests - state: present - register: test_four - -- name: "POWER_OUTLET 4: ASSERT - Create Power Outlet for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_outlet']['name'] == "Power Outlet 2" - - test_four['power_outlet']['device'] == 10 - - test_four['msg'] == "power_outlet Power Outlet 2 created" - -- name: "POWER_OUTLET 5: Delete Power Outlet" - netbox.netbox.netbox_power_outlet: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet 2 - device: Device Power Tests - state: absent - register: test_five - -- name: "POWER_OUTLET 5: ASSERT - Delete Power Outlet" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_outlet Power Outlet 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_outlet_template.yml b/tests/integration/targets/v3.7/tasks/netbox_power_outlet_template.yml deleted file mode 100644 index 14ff49d0c..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_outlet_template.yml +++ /dev/null @@ -1,111 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_OUTLET_TEMPLATE -## -## -- name: "POWER_OUTLET_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - state: present - register: test_one - -- name: "POWER_OUTLET_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_outlet_template']['name'] == "Power Outlet Template" - - test_one['power_outlet_template']['device_type'] == 8 - - test_one['msg'] == "power_outlet_template Power Outlet Template created" - -- name: "POWER_OUTLET_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - state: present - register: test_two - -- name: "POWER_OUTLET_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_outlet_template']['name'] == "Power Outlet Template" - - test_two['power_outlet_template']['device_type'] == 8 - - test_two['msg'] == "power_outlet_template Power Outlet Template already exists" - -- name: "POWER_OUTLET_TEMPLATE 3: Update power_outlet_template with other fields" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template - device_type: Device Type Power Tests - type: ita-e - power_port_template: Power Port Template - feed_leg: B - state: present - register: test_three - -- name: "POWER_OUTLET_TEMPLATE 3: ASSERT - Update power_outlet_template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['power_port'] == 1 - - test_three['diff']['after']['feed_leg'] == "B" - - test_three['power_outlet_template']['name'] == "Power Outlet Template" - - test_three['power_outlet_template']['device_type'] == 8 - - test_three['power_outlet_template']['type'] == "ita-e" - - test_three['power_outlet_template']['power_port'] == 1 - - test_three['power_outlet_template']['feed_leg'] == "B" - - test_three['msg'] == "power_outlet_template Power Outlet Template updated" - -- name: "POWER_OUTLET_TEMPLATE 4: Create Power Outlet Template for Delete Test" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template 2 - device_type: Device Type Power Tests - state: present - register: test_four - -- name: "POWER_OUTLET_TEMPLATE 4: ASSERT - Create Power Outlet Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_outlet_template']['name'] == "Power Outlet Template 2" - - test_four['power_outlet_template']['device_type'] == 8 - - test_four['msg'] == "power_outlet_template Power Outlet Template 2 created" - -- name: "POWER_OUTLET_TEMPLATE 5: Delete Power Outlet Template" - netbox.netbox.netbox_power_outlet_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Outlet Template 2 - device_type: Device Type Power Tests - state: absent - register: test_five - -- name: "POWER_OUTLET_TEMPLATE 5: ASSERT - Delete Power Outlet Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_outlet_template Power Outlet Template 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_panel.yml b/tests/integration/targets/v3.7/tasks/netbox_power_panel.yml deleted file mode 100644 index e568a75f4..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_panel.yml +++ /dev/null @@ -1,105 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PANEL -## -## -- name: "POWER_PANEL 1: Necessary info creation" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - state: present - register: test_one - -- name: "POWER_PANEL 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_panel']['name'] == "Power Panel" - - test_one['power_panel']['site'] == 1 - - test_one['msg'] == "power_panel Power Panel created" - -- name: "POWER_PANEL 2: Create duplicate" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - state: present - register: test_two - -- name: "POWER_PANEL 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_panel']['name'] == "Power Panel" - - test_two['power_panel']['site'] == 1 - - test_two['msg'] == "power_panel Power Panel already exists" - -- name: "POWER_PANEL 3: Update power_panel with other fields" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel - site: Test Site - location: Test Rack Group - state: present - register: test_three - -- name: "POWER_PANEL 3: ASSERT - Update power_panel with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['location'] == 1 - - test_three['power_panel']['name'] == "Power Panel" - - test_three['power_panel']['site'] == 1 - - test_three['power_panel']['location'] == 1 - - test_three['msg'] == "power_panel Power Panel updated" - -- name: "POWER_PANEL 4: Create Power Panel for Delete Test" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel 2 - site: Test Site - state: present - register: test_four - -- name: "POWER_PANEL 4: ASSERT - Create Power Panel for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_panel']['name'] == "Power Panel 2" - - test_four['power_panel']['site'] == 1 - - test_four['msg'] == "power_panel Power Panel 2 created" - -- name: "POWER_PANEL 5: Delete Power Panel" - netbox.netbox.netbox_power_panel: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Panel 2 - site: Test Site - state: absent - register: test_five - -- name: "POWER_PANEL 5: ASSERT - Delete Power Panel" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_panel Power Panel 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_port.yml b/tests/integration/targets/v3.7/tasks/netbox_power_port.yml deleted file mode 100644 index 311820ccd..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_port.yml +++ /dev/null @@ -1,125 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PORT -## -## -- name: "POWER_PORT 0: Create device for testing power ports" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Power Tests - device_type: Cisco Test - device_role: Core Switch - site: Test Site - state: present - -- name: "POWER_PORT 1: Necessary info creation" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - state: present - register: test_one - -- name: "POWER_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_port']['name'] == "Power Port" - - test_one['power_port']['device'] == 10 - - test_one['msg'] == "power_port Power Port created" - -- name: "POWER_PORT 2: Create duplicate" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - state: present - register: test_two - -- name: "POWER_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_port']['name'] == "Power Port" - - test_two['power_port']['device'] == 10 - - test_two['msg'] == "power_port Power Port already exists" - -- name: "POWER_FEED 3: Update power_port with other fields" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port - device: Device Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - description: test description - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update power_port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['allocated_draw'] == 10 - - test_three['diff']['after']['maximum_draw'] == 20 - - test_three['diff']['after']['description'] == "test description" - - test_three['power_port']['name'] == "Power Port" - - test_three['power_port']['device'] == 10 - - test_three['power_port']['type'] == "ita-e" - - test_three['power_port']['allocated_draw'] == 10 - - test_three['power_port']['maximum_draw'] == 20 - - test_three['power_port']['description'] == "test description" - - test_three['msg'] == "power_port Power Port updated" - -- name: "POWER_PORT 4: Create Power Port for Delete Test" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port 2 - device: Device Power Tests - state: present - register: test_four - -- name: "POWER_PORT 4: ASSERT - Create Power Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_port']['name'] == "Power Port 2" - - test_four['power_port']['device'] == 10 - - test_four['msg'] == "power_port Power Port 2 created" - -- name: "POWER_PORT 5: Delete Power Port" - netbox.netbox.netbox_power_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port 2 - device: Device Power Tests - state: absent - register: test_five - -- name: "POWER_PORT 5: ASSERT - Delete Power Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_port Power Port 2 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_power_port_template.yml b/tests/integration/targets/v3.7/tasks/netbox_power_port_template.yml deleted file mode 100644 index b413c29ce..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_power_port_template.yml +++ /dev/null @@ -1,212 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_POWER_PORT_TEMPLATE -## -## -- name: "POWER_PORT_TEMPLATE 0.1: Create device type for testing power ports on device types" - netbox.netbox.netbox_device_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Device Type Power Tests - manufacturer: Test Manufacturer - state: present - -- name: "POWER_PORT_TEMPLATE 0.2: Create module type for testing power ports on module types" - netbox.netbox.netbox_module_type: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - model: Module Type Power Tests - manufacturer: Test Manufacturer - state: present - -- name: "POWER_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - state: present - register: test_one - -- name: "POWER_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['power_port_template']['name'] == "Power Port Template" - - test_one['power_port_template']['device_type'] == 8 - - test_one['msg'] == "power_port_template Power Port Template created" - -- name: "POWER_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - state: present - register: test_two - -- name: "POWER_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['power_port_template']['name'] == "Power Port Template" - - test_two['power_port_template']['device_type'] == 8 - - test_two['msg'] == "power_port_template Power Port Template already exists" - -- name: "POWER_PORT_TEMPLATE 3: Update power_port_template with other fields" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template - device_type: Device Type Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - state: present - register: test_three - -- name: "POWER_PORT_TEMPLATE 3: ASSERT - Update power_port_template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['type'] == "ita-e" - - test_three['diff']['after']['allocated_draw'] == 10 - - test_three['diff']['after']['maximum_draw'] == 20 - - test_three['power_port_template']['name'] == "Power Port Template" - - test_three['power_port_template']['device_type'] == 8 - - test_three['power_port_template']['type'] == "ita-e" - - test_three['power_port_template']['allocated_draw'] == 10 - - test_three['power_port_template']['maximum_draw'] == 20 - - test_three['msg'] == "power_port_template Power Port Template updated" - -- name: "POWER_PORT_TEMPLATE 4: Create Power Port Template for Delete Test" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template 2 - device_type: Device Type Power Tests - state: present - register: test_four - -- name: "POWER_PORT_TEMPLATE 4: ASSERT - Create Power Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['power_port_template']['name'] == "Power Port Template 2" - - test_four['power_port_template']['device_type'] == 8 - - test_four['msg'] == "power_port_template Power Port Template 2 created" - -- name: "POWER_PORT_TEMPLATE 5: Delete Power Port Template" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Power Port Template 2 - device_type: Device Type Power Tests - state: absent - register: test_five - -- name: "POWER_PORT_TEMPLATE 5: ASSERT - Delete Power Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "power_port_template Power Port Template 2 deleted" - -- name: "POWER_PORT_TEMPLATE 6: Necessary info creation" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: present - register: test_six - -- name: "POWER_PORT_TEMPLATE 6: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['power_port_template']['name'] == "Module Power Port Template" - - test_six['power_port_template']['module_type'] == 1 - - test_six['msg'] == "power_port_template Module Power Port Template created" - -- name: "POWER_PORT_TEMPLATE 7: Create duplicate" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: present - register: test_seven - -- name: "POWER_PORT_TEMPLATE 7: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_seven['changed'] - - test_seven['power_port_template']['name'] == "Module Power Port Template" - - test_seven['power_port_template']['module_type'] == 1 - - test_seven['msg'] == "power_port_template Module Power Port Template already exists" - -- name: "POWER_PORT_TEMPLATE 8: Update power_port_template with other fields" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - type: ita-e - allocated_draw: 10 - maximum_draw: 20 - state: present - register: test_eight - -- name: "POWER_PORT_TEMPLATE 8: ASSERT - Update power_port_template with other fields" - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['after']['type'] == "ita-e" - - test_eight['diff']['after']['allocated_draw'] == 10 - - test_eight['diff']['after']['maximum_draw'] == 20 - - test_eight['power_port_template']['name'] == "Module Power Port Template" - - test_eight['power_port_template']['module_type'] == 1 - - test_eight['power_port_template']['type'] == "ita-e" - - test_eight['power_port_template']['allocated_draw'] == 10 - - test_eight['power_port_template']['maximum_draw'] == 20 - - test_eight['msg'] == "power_port_template Module Power Port Template updated" - -- name: "POWER_PORT_TEMPLATE 9: Delete Power Port Template" - netbox.netbox.netbox_power_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Module Power Port Template - module_type: Module Type Power Tests - state: absent - register: test_nine - -- name: "POWER_PORT_TEMPLATE 9: ASSERT - Delete Power Port Template" - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "present" - - test_nine['diff']['after']['state'] == "absent" - - test_nine['msg'] == "power_port_template Module Power Port Template deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_prefix.yml b/tests/integration/targets/v3.7/tasks/netbox_prefix.yml deleted file mode 100644 index 64adae855..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_prefix.yml +++ /dev/null @@ -1,245 +0,0 @@ ---- -## -## -### NETBOX_PREFIX -## -## -- name: 1 - Create prefix within NetBox with only required information - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['msg'] == "prefix 10.156.0.0/19 created" - - test_one['prefix']['prefix'] == "10.156.0.0/19" - -- name: 2 - Duplicate - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "prefix 10.156.0.0/19 already exists" - - test_two['prefix']['prefix'] == "10.156.0.0/19" - -- name: 3 - Update 10.156.0.0/19 - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - site: Test Site - status: Reserved - description: This prefix has been updated - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['site'] == 1 - - test_three['diff']['after']['status'] == "reserved" - - test_three['diff']['after']['description'] == "This prefix has been updated" - - test_three['msg'] == "prefix 10.156.0.0/19 updated" - - test_three['prefix']['prefix'] == "10.156.0.0/19" - - test_three['prefix']['site'] == 1 - - test_three['prefix']['status'] == "reserved" - - test_three['prefix']['description'] == "This prefix has been updated" - -- name: 4 - Delete prefix within netbox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "prefix 10.156.0.0/19 deleted" - -- name: 5 - Create prefix with several specified options - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - family: 4 - prefix: 10.156.32.0/19 - site: Test Site - vrf: Test VRF - tenant: Test Tenant - vlan: - name: Test VLAN - site: Test Site - tenant: Test Tenant - vlan_group: Test Vlan Group - status: Reserved - prefix_role: Network of care - description: Test description - is_pool: true - tags: - - Schnozzberry - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['msg'] == "prefix 10.156.32.0/19 created" - - test_five['prefix']['prefix'] == "10.156.32.0/19" - - test_five['prefix']['family'] == 4 - - test_five['prefix']['site'] == 1 - - test_five['prefix']['vrf'] == 1 - - test_five['prefix']['tenant'] == 1 - - test_five['prefix']['vlan'] == 4 - - test_five['prefix']['status'] == "reserved" - - test_five['prefix']['role'] == 1 - - test_five['prefix']['description'] == "Test description" - - test_five['prefix']['is_pool'] == true - - test_five['prefix']['tags'][0] == 4 - -- name: 6 - Get a new /24 inside 10.156.0.0/19 within NetBox - Parent doesn't exist - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - not test_six['changed'] - - test_six['msg'] == "Parent prefix does not exist - 10.156.0.0/19" - -- name: 7 - Create prefix within NetBox with only required information - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.156.0.0/19 - state: present - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "absent" - - test_seven['diff']['after']['state'] == "present" - - test_seven['msg'] == "prefix 10.156.0.0/19 created" - - test_seven['prefix']['prefix'] == "10.156.0.0/19" - -- name: 8 - Get a new /24 inside 10.156.0.0/19 within NetBox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "absent" - - test_eight['diff']['after']['state'] == "present" - - test_eight['msg'] == "prefix 10.156.0.0/24 created" - - test_eight['prefix']['prefix'] == "10.156.0.0/24" - -- name: 9 - Create 10.157.0.0/19 - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - prefix: 10.157.0.0/19 - vrf: Test VRF - site: Test Site - state: present - register: test_nine - -- name: 9 - ASSERT - ansible.builtin.assert: - that: - - test_nine is changed - - test_nine['diff']['before']['state'] == "absent" - - test_nine['diff']['after']['state'] == "present" - - test_nine['msg'] == "prefix 10.157.0.0/19 created" - - test_nine['prefix']['prefix'] == "10.157.0.0/19" - - test_nine['prefix']['site'] == 1 - - test_nine['prefix']['vrf'] == 1 - -- name: 10 - Get a new /24 inside 10.157.0.0/19 within NetBox with additional values - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.157.0.0/19 - prefix_length: 24 - vrf: Test VRF - site: Test Site - state: present - first_available: true - register: test_ten - -- name: 10 - ASSERT - ansible.builtin.assert: - that: - - test_ten is changed - - test_ten['diff']['before']['state'] == "absent" - - test_ten['diff']['after']['state'] == "present" - - test_ten['msg'] == "prefix 10.157.0.0/24 created" - - test_ten['prefix']['prefix'] == "10.157.0.0/24" - - test_ten['prefix']['site'] == 1 - - test_ten['prefix']['vrf'] == 1 - -- name: 11 - Get a new /24 inside 10.156.0.0/19 within NetBox - netbox.netbox.netbox_prefix: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - parent: 10.156.0.0/19 - prefix_length: 24 - state: present - first_available: true - register: test_eleven - -- name: 11 - ASSERT - ansible.builtin.assert: - that: - - test_eleven is changed - - test_eleven['diff']['before']['state'] == "absent" - - test_eleven['diff']['after']['state'] == "present" - - test_eleven['msg'] == "prefix 10.156.1.0/24 created" - - test_eleven['prefix']['prefix'] == "10.156.1.0/24" diff --git a/tests/integration/targets/v3.7/tasks/netbox_provider.yml b/tests/integration/targets/v3.7/tasks/netbox_provider.yml deleted file mode 100644 index ec7b2c30a..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_provider.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_PROVIDER -## -## -- name: "NETBOX_PROVIDER 1: Create provider within NetBox with only required information" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: present - register: test_one - -- name: "NETBOX_PROVIDER 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['provider']['name'] == "Test Provider One" - - test_one['provider']['slug'] == "test-provider-one" - - test_one['msg'] == "provider Test Provider One created" - -- name: "NETBOX_PROVIDER 2: Duplicate" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: present - register: test_two - -- name: "NETBOX_PROVIDER 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['provider']['name'] == "Test Provider One" - - test_two['provider']['slug'] == "test-provider-one" - - test_two['msg'] == "provider Test Provider One already exists" - -- name: "NETBOX_PROVIDER 3: Update provider with other fields" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - comments: BAD PROVIDER - state: present - register: test_three - -- name: "NETBOX_PROVIDER 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "BAD PROVIDER" - - test_three['provider']['name'] == "Test Provider One" - - test_three['provider']['slug'] == "test-provider-one" - - test_three['provider']['comments'] == "BAD PROVIDER" - - test_three['msg'] == "provider Test Provider One updated" - -- name: "NETBOX_PROVIDER 4: Delete provider within netbox" - netbox.netbox.netbox_provider: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Provider One - state: absent - register: test_four - -- name: "NETBOX_PROVIDER 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['provider']['name'] == "Test Provider One" - - test_four['provider']['slug'] == "test-provider-one" - - test_four['provider']['comments'] == "BAD PROVIDER" - - test_four['msg'] == "provider Test Provider One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_provider_network.yml b/tests/integration/targets/v3.7/tasks/netbox_provider_network.yml deleted file mode 100644 index 6f8b2b331..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_provider_network.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -## -## -### NETBOX_PROVIDER -## -## -- name: "NETBOX_PROVIDER_NETWORK 1: Create provider network within NetBox with only required information" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: present - register: test_one - -- name: "NETBOX_PROVIDER_NETWORK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['provider_network']['name'] == "Test Provider Network One" - - test_one['msg'] == "provider_network Test Provider Network One created" - -- name: "NETBOX_PROVIDER_NETWORK 2: Duplicate" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: present - register: test_two - -- name: "NETBOX_PROVIDER_NETWORK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['provider_network']['name'] == "Test Provider Network One" - - test_two['msg'] == "provider_network Test Provider Network One already exists" - -- name: "NETBOX_PROVIDER_NETWORK 3: Update provider network with other fields" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - description: Describe a Provider Network - comments: A provider network - state: present - register: test_three - -- name: "NETBOX_PROVIDER_NETWORK 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "A provider network" - - test_three['diff']['after']['description'] == "Describe a Provider Network" - - test_three['provider_network']['name'] == "Test Provider Network One" - - test_three['provider_network']['comments'] == "A provider network" - - test_three['provider_network']['description'] == "Describe a Provider Network" - - test_three['msg'] == "provider_network Test Provider Network One updated" - -- name: "NETBOX_PROVIDER_NETWORK 4: Delete provider within netbox" - netbox.netbox.netbox_provider_network: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - provider: Test Provider - name: Test Provider Network One - state: absent - register: test_four - -- name: "NETBOX_PROVIDER_NETWORK 4 : ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['provider_network']['name'] == "Test Provider Network One" - - test_four['provider_network']['comments'] == "A provider network" - - test_four['provider_network']['description'] == "Describe a Provider Network" - - test_four['msg'] == "provider_network Test Provider Network One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rack.yml b/tests/integration/targets/v3.7/tasks/netbox_rack.yml deleted file mode 100644 index 5dc05c3a1..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rack.yml +++ /dev/null @@ -1,226 +0,0 @@ ---- -## -## -### NETBOX_RACK -## -## -- name: 1 - Test rack creation - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - location: Test Rack Group - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack']['name'] == "Test rack one" - - test_one['rack']['site'] == 1 - -- name: Test duplicate rack - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack']['name'] == "Test rack one" - - test_two['rack']['site'] == 1 - - test_two['msg'] == "rack Test rack one already exists" - -- name: 3 - Create new rack with similar name - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack - Test Site - site: Test Site - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['rack']['name'] == "Test rack - Test Site" - - test_three['rack']['site'] == 1 - - test_three['msg'] == "rack Test rack - Test Site created" - -- name: 4 - Attempt to create Test rack one again - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - location: Test Rack Group - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - not test_four['changed'] - - test_four['rack']['name'] == "Test rack one" - - test_four['rack']['site'] == 1 - - test_four['msg'] == "rack Test rack one already exists" - -- name: 5 - Update Test rack one with more options - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - rack_role: Test Rack Role - location: Test Rack Group - facility_id: EQUI10291 - tenant: Test Tenant - status: Available - serial: FXS10001 - asset_tag: "1234" - width: 23 - u_height: 48 - type: 2-post frame - outer_width: 32 - outer_depth: 24 - outer_unit: Inches - comments: Just testing rack module - tags: - - Schnozzberry - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['asset_tag'] == "1234" - - test_five['diff']['after']['comments'] == "Just testing rack module" - - test_five['diff']['after']['facility_id'] == "EQUI10291" - - test_five['diff']['after']['outer_depth'] == 24 - - test_five['diff']['after']['outer_unit'] == "in" - - test_five['diff']['after']['outer_width'] == 32 - - test_five['diff']['after']['role'] == 1 - - test_five['diff']['after']['serial'] == "FXS10001" - - test_five['diff']['after']['status'] == "available" - - test_five['diff']['after']['tenant'] == 1 - - test_five['diff']['after']['tags'][0] == 4 - - test_five['diff']['after']['type'] == "2-post-frame" - - test_five['diff']['after']['u_height'] == 48 - - test_five['diff']['after']['width'] == 23 - - test_five['rack']['name'] == "Test rack one" - - test_five['rack']['site'] == 1 - - test_five['rack']['asset_tag'] == "1234" - - test_five['rack']['comments'] == "Just testing rack module" - - test_five['rack']['facility_id'] == "EQUI10291" - - test_five['rack']['location'] == 1 - - test_five['rack']['outer_depth'] == 24 - - test_five['rack']['outer_unit'] == "in" - - test_five['rack']['outer_width'] == 32 - - test_five['rack']['role'] == 1 - - test_five['rack']['serial'] == "FXS10001" - - test_five['rack']['status'] == "available" - - test_five['rack']['tenant'] == 1 - - test_five['rack']['tags'][0] == 4 - - test_five['rack']['type'] == "2-post-frame" - - test_five['rack']['u_height'] == 48 - - test_five['rack']['width'] == 23 - - test_five['msg'] == "rack Test rack one updated" - -- name: 6 - Update Test rack one with same options - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - site: Test Site - rack_role: Test Rack Role - location: Test Rack Group - facility_id: EQUI10291 - tenant: Test Tenant - status: Available - serial: FXS10001 - asset_tag: "1234" - width: 23 - u_height: 48 - type: 2-post frame - outer_width: 32 - outer_depth: 24 - outer_unit: Inches - comments: Just testing rack module - tags: - - Schnozzberry - state: present - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is not changed - - test_six['rack']['name'] == "Test rack one" - - test_six['rack']['site'] == 1 - - test_six['rack']['asset_tag'] == "1234" - - test_six['rack']['comments'] == "Just testing rack module" - - test_six['rack']['facility_id'] == "EQUI10291" - - test_six['rack']['location'] == 1 - - test_six['rack']['outer_depth'] == 24 - - test_six['rack']['outer_unit'] == "in" - - test_six['rack']['outer_width'] == 32 - - test_six['rack']['role'] == 1 - - test_six['rack']['serial'] == "FXS10001" - - test_six['rack']['status'] == "available" - - test_six['rack']['tenant'] == 1 - - test_six['rack']['tags'][0] == 4 - - test_six['rack']['type'] == "2-post-frame" - - test_six['rack']['u_height'] == 48 - - test_six['rack']['width'] == 23 - -- name: 7 - Create rack with same asset tag and serial number - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack two - site: Test Site - serial: FXS10001 - asset_tag: "1234" - state: present - ignore_errors: true - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is failed - - "'asset tag already exists' in test_seven['msg']" - -- name: 8 - Test delete - netbox.netbox.netbox_rack: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test rack one - state: absent - register: test_eight - -- name: 8 - ASSERT - ansible.builtin.assert: - that: - - test_eight is changed - - test_eight['diff']['before']['state'] == "present" - - test_eight['diff']['after']['state'] == "absent" - - test_eight['msg'] == "rack Test rack one deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rack_group.yml b/tests/integration/targets/v3.7/tasks/netbox_rack_group.yml deleted file mode 100644 index 40dba8408..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rack_group.yml +++ /dev/null @@ -1,62 +0,0 @@ ---- -## -## -### NETBOX_RACK_GROUP -## -## -- name: "RACK_GROUP 1: Necessary info creation" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - site: Test Site - state: present - register: test_one - -- name: "RACK_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack_group']['name'] == "Rack Group" - - test_one['rack_group']['slug'] == "rack-group" - - test_one['rack_group']['site'] == 1 - - test_one['msg'] == "rack_group Rack Group created" - -- name: "RACK_GROUP 2: Create duplicate" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - site: Test Site - state: present - register: test_two - -- name: "RACK_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack_group']['name'] == "Rack Group" - - test_two['rack_group']['slug'] == "rack-group" - - test_two['rack_group']['site'] == 1 - - test_two['msg'] == "rack_group Rack Group already exists" - -- name: "RACK_GROUP 3: ASSERT - Delete" - netbox.netbox.netbox_rack_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Group - state: absent - register: test_three - -- name: "RACK_GROUP 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "rack_group Rack Group deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rack_role.yml b/tests/integration/targets/v3.7/tasks/netbox_rack_role.yml deleted file mode 100644 index ff0d6b4da..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rack_role.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -## -## -### NETBOX_RACK_ROLE -## -## -- name: "RACK_ROLE 1: Necessary info creation" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - color: ffffff - state: present - register: test_one - -- name: "RACK_ROLE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rack_role']['name'] == "Rack Role" - - test_one['rack_role']['slug'] == "rack-role" - - test_one['rack_role']['color'] == "ffffff" - - test_one['msg'] == "rack_role Rack Role created" - -- name: "RACK_ROLE 2: Create duplicate" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - state: present - register: test_two - -- name: "RACK_ROLE 1: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rack_role']['name'] == "Rack Role" - - test_two['rack_role']['slug'] == "rack-role" - - test_two['rack_role']['color'] == "ffffff" - - test_two['msg'] == "rack_role Rack Role already exists" - -- name: "RACK_ROLE 3: Update" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - color: "003EFF" - state: present - register: test_three - -- name: "RACK_ROLE 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "003eff" - - test_three['rack_role']['name'] == "Rack Role" - - test_three['rack_role']['slug'] == "rack-role" - - test_three['rack_role']['color'] == "003eff" - - test_three['msg'] == "rack_role Rack Role updated" - -- name: "RACK_ROLE 4: Delete" - netbox.netbox.netbox_rack_role: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rack Role - state: absent - register: test_four - -- name: "RACK_ROLE 4: ASSERT - Update" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "rack_role Rack Role deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rear_port.yml b/tests/integration/targets/v3.7/tasks/netbox_rear_port.yml deleted file mode 100644 index d186233be..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rear_port.yml +++ /dev/null @@ -1,139 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_REAR_PORT -## -## -- name: "REAR_PORT 1: Necessary info creation" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - state: present - register: test_one - -- name: "REAR_PORT 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rear_port']['name'] == "Rear Port" - - test_one['rear_port']['device'] == 1 - - test_one['rear_port']['type'] == "bnc" - - test_one['msg'] == "rear_port Rear Port created" - -- name: "REAR_PORT 2: Create duplicate" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - state: present - register: test_two - -- name: "REAR_PORT 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rear_port']['name'] == "Rear Port" - - test_two['rear_port']['device'] == 1 - - test_two['rear_port']['type'] == "bnc" - - test_two['msg'] == "rear_port Rear Port already exists" - -- name: "REAR_PORT 3: Update Rear Port with other fields" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: test100 - type: bnc - positions: 5 - description: test description - state: present - register: test_three - -- name: "REAR_PORT 3: ASSERT - Update Rear Port with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['positions'] == 5 - - test_three['diff']['after']['description'] == "test description" - - test_three['rear_port']['name'] == "Rear Port" - - test_three['rear_port']['device'] == 1 - - test_three['rear_port']['type'] == "bnc" - - test_three['rear_port']['positions'] == 5 - - test_three['rear_port']['description'] == "test description" - - test_three['msg'] == "rear_port Rear Port updated" - -- name: "REAR_PORT 4: Create Rear Port for Delete Test" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port 2 - device: test100 - type: bnc - state: present - register: test_four - -- name: "REAR_PORT 4: ASSERT - Create Rear Port for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['rear_port']['name'] == "Rear Port 2" - - test_four['rear_port']['device'] == 1 - - test_four['rear_port']['type'] == "bnc" - - test_four['msg'] == "rear_port Rear Port 2 created" - -- name: "REAR_PORT 5: Delete Rear Port" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port 2 - device: test100 - type: bnc - state: absent - register: test_five - -- name: "REAR_PORT 5: ASSERT - Delete Rear Port" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "rear_port Rear Port 2 deleted" - -- name: "REAR_PORT 6: Create second Rear Port" - netbox.netbox.netbox_rear_port: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port - device: Test Nexus One - type: bnc - state: present - register: test_six - -- name: "REAR_PORT 6: ASSERT - Create second Rear Port" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['rear_port']['name'] == "Rear Port" - - test_six['rear_port']['device'] == 4 - - test_six['rear_port']['type'] == "bnc" - - test_six['msg'] == "rear_port Rear Port created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rear_port_template.yml b/tests/integration/targets/v3.7/tasks/netbox_rear_port_template.yml deleted file mode 100644 index 5342627d0..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rear_port_template.yml +++ /dev/null @@ -1,136 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_REAR_PORT_TEMPLATE -## -## -- name: "REAR_PORT_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - state: present - register: test_one - -- name: "REAR_PORT_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rear_port_template']['name'] == "Rear Port Template" - - test_one['rear_port_template']['device_type'] == 1 - - test_one['rear_port_template']['type'] == "bnc" - - test_one['msg'] == "rear_port_template Rear Port Template created" - -- name: "REAR_PORT_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - state: present - register: test_two - -- name: "REAR_PORT_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rear_port_template']['name'] == "Rear Port Template" - - test_two['rear_port_template']['device_type'] == 1 - - test_two['rear_port_template']['type'] == "bnc" - - test_two['msg'] == "rear_port_template Rear Port Template already exists" - -- name: "REAR_PORT_TEMPLATE 3: Update Rear Port Template with other fields" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template - device_type: Cisco Test - type: bnc - positions: 5 - state: present - register: test_three - -- name: "REAR_PORT_TEMPLATE 3: ASSERT - Update Rear Port Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['positions'] == 5 - - test_three['rear_port_template']['name'] == "Rear Port Template" - - test_three['rear_port_template']['device_type'] == 1 - - test_three['rear_port_template']['type'] == "bnc" - - test_three['rear_port_template']['positions'] == 5 - - test_three['msg'] == "rear_port_template Rear Port Template updated" - -- name: "REAR_PORT_TEMPLATE 4: Create Rear Port Template for Delete Test" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Cisco Test - type: bnc - state: present - register: test_four - -- name: "REAR_PORT_TEMPLATE 4: ASSERT - Create Rear Port Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['rear_port_template']['name'] == "Rear Port Template 2" - - test_four['rear_port_template']['device_type'] == 1 - - test_four['rear_port_template']['type'] == "bnc" - - test_four['msg'] == "rear_port_template Rear Port Template 2 created" - -- name: "REAR_PORT_TEMPLATE 5: Delete Rear Port Template" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Cisco Test - type: bnc - state: absent - register: test_five - -- name: "REAR_PORT_TEMPLATE 5: ASSERT - Delete Rear Port Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "rear_port_template Rear Port Template 2 deleted" - -- name: "REAR_PORT_TEMPLATE 6: Create second Rear Port Template" - netbox.netbox.netbox_rear_port_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Rear Port Template 2 - device_type: Arista Test - type: bnc - state: present - register: test_six - -- name: "REAR_PORT_TEMPLATE 6: ASSERT - Create second Rear Port Template" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "absent" - - test_six['diff']['after']['state'] == "present" - - test_six['rear_port_template']['name'] == "Rear Port Template 2" - - test_six['rear_port_template']['device_type'] == 2 - - test_six['rear_port_template']['type'] == "bnc" - - test_six['msg'] == "rear_port_template Rear Port Template 2 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_region.yml b/tests/integration/targets/v3.7/tasks/netbox_region.yml deleted file mode 100644 index 0395db435..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_region.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_REGION -## -## -- name: "REGION 1: Necessary info creation" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: present - register: test_one - -- name: "REGION 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['region']['name'] == "Test Region One" - - test_one['region']['slug'] == "test-region-one" - - test_one['msg'] == "region Test Region One created" - -- name: "REGION 2: Create duplicate" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: present - register: test_two - -- name: "REGION 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['region']['name'] == "Test Region One" - - test_two['region']['slug'] == "test-region-one" - - test_two['msg'] == "region Test Region One already exists" - -- name: "REGION 3: ASSERT - Update" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - parent_region: Test Region - state: present - register: test_three - -- name: "REGION 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 1 - - test_three['region']['name'] == "Test Region One" - - test_three['region']['slug'] == "test-region-one" - - test_three['region']['parent'] == 1 - - test_three['msg'] == "region Test Region One updated" - -- name: "REGION 4: ASSERT - Delete" - netbox.netbox.netbox_region: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Region One - state: absent - register: test_four - -- name: "REGION 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['region']['name'] == "Test Region One" - - test_four['region']['slug'] == "test-region-one" - - test_four['region']['parent'] == 1 - - test_four['msg'] == "region Test Region One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_rir.yml b/tests/integration/targets/v3.7/tasks/netbox_rir.yml deleted file mode 100644 index 3a7bf79fa..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_rir.yml +++ /dev/null @@ -1,79 +0,0 @@ ---- -## -## -### NETBOX_RIR -## -## -- name: "RIR 1: Necessary info creation" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: present - register: test_one - -- name: "RIR 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['rir']['name'] == "Test RIR One" - - test_one['rir']['slug'] == "test-rir-one" - - test_one['msg'] == "rir Test RIR One created" - -- name: "RIR 2: Create duplicate" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: present - register: test_two - -- name: "RIR 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['rir']['name'] == "Test RIR One" - - test_two['rir']['slug'] == "test-rir-one" - - test_two['msg'] == "rir Test RIR One already exists" - -- name: "RIR 3: ASSERT - Update" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - is_private: true - state: present - register: test_three - -- name: "RIR 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['is_private'] == true - - test_three['rir']['name'] == "Test RIR One" - - test_three['rir']['slug'] == "test-rir-one" - - test_three['rir']['is_private'] == true - - test_three['msg'] == "rir Test RIR One updated" - -- name: "RIR 4: ASSERT - Delete" - netbox.netbox.netbox_rir: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test RIR One - state: absent - register: test_four - -- name: "RIR 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['rir']['name'] == "Test RIR One" - - test_four['rir']['slug'] == "test-rir-one" - - test_four['rir']['is_private'] == true - - test_four['msg'] == "rir Test RIR One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_route_target.yml b/tests/integration/targets/v3.7/tasks/netbox_route_target.yml deleted file mode 100644 index c2576c4cc..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_route_target.yml +++ /dev/null @@ -1,204 +0,0 @@ ---- -# -# ADD (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_ADD: Check Mode - Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD: (ASSERT) Check Mode - Add all fields except description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['diff']['after']['state'] == "present" - - test_results['diff']['before']['state'] == "absent" - - test_results['msg'] == "route_target 65000:65001 created" - -# ADD -- name: "NETBOX_ROUTE_TARGET_ADD: Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD: (ASSERT) Add all fields except description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['diff']['after']['state'] == "present" - - test_results['diff']['before']['state'] == "absent" - - test_results['msg'] == "route_target 65000:65001 created" - -# ADD (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_ADD_IDEM: (IDEMPOTENT) Add all fields except description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_ADD_IDEM: (IDEMPOTENT) Add all fields except description" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['msg'] == "route_target 65000:65001 already exists" - -# -# UPDATE (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_UPDATE: Check Mode - Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - description: NEW DESCRIPTION - tenant: Test Tenant - tags: - - first - - second - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE: (ASSERT) Check Mode - Update description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['diff']['after']['description'] == "NEW DESCRIPTION" - - test_results['diff']['before']['description'] == "" - - test_results['msg'] == "route_target 65000:65001 updated" - -# UPDATE -- name: "NETBOX_ROUTE_TARGET_UPDATE: Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - description: NEW DESCRIPTION - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE: (ASSERT) Update description" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['diff']['after']['description'] == "NEW DESCRIPTION" - - test_results['diff']['before']['description'] == "" - - test_results['msg'] == "route_target 65000:65001 updated" - -# UPDATE (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_UPDATE_IDEM: (IDEMPOTENT) Update description" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - tenant: Test Tenant - description: NEW DESCRIPTION - tags: - - first - - second - register: test_results - -- name: "NETBOX_ROUTE_TARGET_UPDATE_IDEM: (IDEMPOTENT) Update description" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['route_target']['name'] == "65000:65001" - - test_results['route_target']['tenant'] == 1 - - test_results['route_target']['tags'] | length == 2 - - test_results['route_target']['description'] == "NEW DESCRIPTION" - - test_results['msg'] == "route_target 65000:65001 already exists" - -# -# DELETE (CHECK MODE) -- name: "NETBOX_ROUTE_TARGET_DELETE: Check Mode - Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - check_mode: true - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE: (ASSERT) Check Mode - Delete route target" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['diff']['after']['state'] == "absent" - - test_results['diff']['before']['state'] == "present" - - test_results['msg'] == "route_target 65000:65001 deleted" - -# DELETE -- name: "NETBOX_ROUTE_TARGET_DELETE: Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE: (ASSERT) Delete route target" - ansible.builtin.assert: - that: - - test_results is changed - - test_results['diff']['after']['state'] == "absent" - - test_results['diff']['before']['state'] == "present" - - test_results['msg'] == "route_target 65000:65001 deleted" - -# DELETE (IDEMPOTENT) -- name: "NETBOX_ROUTE_TARGET_DELETE_IDEM: (IDEMPOTENT) Delete route target" - netbox.netbox.netbox_route_target: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: 65000:65001 - state: absent - register: test_results - -- name: "NETBOX_ROUTE_TARGET_DELETE_IDEM: (IDEMPOTENT) Delete route target" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['msg'] == "route_target 65000:65001 already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_service.yml b/tests/integration/targets/v3.7/tasks/netbox_service.yml deleted file mode 100644 index d937e50a6..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_service.yml +++ /dev/null @@ -1,196 +0,0 @@ ---- -## -## -### NETBOX_SERVICE -## -## -- name: 1 - Device with required information needs to add new service - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: FOR_SERVICE - device_type: Cisco Test - device_role: Core Switch - site: Test Site - status: Staged - state: present - -- name: "NETBOX_SERVICE: Create new service" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_create - -- name: NETBOX_SERVICE ASSERT - Create - ansible.builtin.assert: - that: - - test_service_create is changed - - test_service_create['services']['name'] == "node-exporter" - - test_service_create['services']['ports'] == [9100] - - test_service_create['services']['protocol'] == "tcp" - - test_service_create['diff']['after']['state'] == "present" - - test_service_create['diff']['before']['state'] == "absent" - - test_service_create['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Test idempotence" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_idempotence - -- name: NETBOX_SERVICE ASSERT - Not changed - ansible.builtin.assert: - that: - - test_service_idempotence['services']['name'] == "node-exporter" - - test_service_idempotence['services']['ports'] == [9100] - - test_service_idempotence['services']['protocol'] == "tcp" - - test_service_idempotence['msg'] == "services node-exporter already exists" - -- name: "NETBOX_SERVICE: Test update" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - ports: - - 9100 - - 9200 - protocol: TCP - tags: - - Schnozzberry - state: present - register: test_service_update - -- name: NETBOX_SERVICE ASSERT - Service has been updated - ansible.builtin.assert: - that: - - test_service_update is changed - - test_service_update['diff']['after']['tags'][0] == 4 - - test_service_update['diff']['after']['ports'] == [9100, 9200] - - test_service_update['msg'] == "services node-exporter updated" - -- name: "NETBOX_SERVICE: Test same details, but different protocol - Create" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: UDP - state: present - register: test_service_protocol - -- name: NETBOX_SERVICE ASSERT - Different protocol - Create - ansible.builtin.assert: - that: - - test_service_protocol is changed - - test_service_protocol['diff']['after']['state'] == "present" - - test_service_protocol['diff']['before']['state'] == "absent" - - test_service_protocol['services']['name'] == "node-exporter" - - test_service_protocol['services']['ports'] == [9100] - - test_service_protocol['services']['protocol'] == "udp" - - test_service_protocol['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Test service deletion" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: FOR_SERVICE - name: node-exporter - port: 9100 - protocol: UDP - state: absent - register: test_service_delete - -- name: NETBOX_SERVICE ASSERT - Service has been deleted - ansible.builtin.assert: - that: - - test_service_delete is changed - - test_service_delete['diff']['after']['state'] == "absent" - - test_service_delete['diff']['before']['state'] == "present" - - test_service_delete['msg'] == "services node-exporter deleted" - -- name: "NETBOX_SERVICE: Test service IP addresses" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - device: test100 - name: node-exporter - port: 9100 - protocol: UDP - ipaddresses: - - address: 172.16.180.1/24 - state: present - register: test_service_ip_addresses - -- name: NETBOX_SERVICE ASSERT - Service has been created with IP address - ansible.builtin.assert: - that: - - test_service_ip_addresses is changed - - test_service_ip_addresses['diff']['after']['state'] == "present" - - test_service_ip_addresses['diff']['before']['state'] == "absent" - - test_service_ip_addresses['services']['name'] == "node-exporter" - - test_service_ip_addresses['services']['ports'] == [9100] - - test_service_ip_addresses['services']['protocol'] == "udp" - - test_service_ip_addresses['services']['ipaddresses'] is defined - - test_service_ip_addresses['msg'] == "services node-exporter created" - -- name: "NETBOX_SERVICE: Missing both device & virtual_machine options - Tests required_one_of" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: node-exporter - port: 9100 - protocol: UDP - ipaddresses: - - address: 172.16.180.1/24 - state: present - ignore_errors: true - register: test_service_required_one_of - -- name: NETBOX_SERVICE ASSERT - Failed due to missing arguments - ansible.builtin.assert: - that: - - test_service_required_one_of is failed - - 'test_service_required_one_of["msg"] == "one of the following is required: device, virtual_machine"' - -- name: "NETBOX_SERVICE: Create new service on virtual_machine" - netbox.netbox.netbox_service: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - virtual_machine: test100-vm - name: node-exporter - port: 9100 - protocol: TCP - state: present - register: test_service_create_vm - -- name: NETBOX_SERVICE ASSERT - Create - ansible.builtin.assert: - that: - - test_service_create_vm is changed - - test_service_create_vm['services']['name'] == "node-exporter" - - test_service_create_vm['services']['ports'] == [9100] - - test_service_create_vm['services']['protocol'] == "tcp" - - test_service_create_vm['diff']['after']['state'] == "present" - - test_service_create_vm['diff']['before']['state'] == "absent" - - test_service_create_vm['msg'] == "services node-exporter created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_service_template.yml b/tests/integration/targets/v3.7/tasks/netbox_service_template.yml deleted file mode 100644 index 507a566a4..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_service_template.yml +++ /dev/null @@ -1,115 +0,0 @@ ---- -## -## -### NETBOX_SERVICE_TEMPLATE -## -## -- name: "SERVICE_TEMPLATE 1: Necessary info creation" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - state: present - register: test_one - -- name: "SERVICE_TEMPLATE 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['service_template']['name'] == "Service Template for SSH" - - test_one['service_template']['ports'] == [22] - - test_one['service_template']['protocol'] == "tcp" - - test_one['msg'] == "service_template Service Template for SSH created" - -- name: "SERVICE_TEMPLATE 2: Create duplicate" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - state: present - register: test_two - -- name: "SERVICE_TEMPLATE 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['service_template']['name'] == "Service Template for SSH" - - test_two['service_template']['ports'] == [22] - - test_two['service_template']['protocol'] == "tcp" - - test_two['msg'] == "service_template Service Template for SSH already exists" - -- name: "SERVICE_TEMPLATE 3: Update Service Template with other fields" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for SSH - ports: - - 22 - protocol: tcp - comments: For SSH service - state: present - register: test_three - -- name: "SERVICE_TEMPLATE 3: ASSERT - Update Service Template with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['comments'] == "For SSH service" - - test_three['service_template']['name'] == "Service Template for SSH" - - test_three['service_template']['ports'] == [22] - - test_three['service_template']['protocol'] == "tcp" - - test_three['service_template']['comments'] == "For SSH service" - - test_three['msg'] == "service_template Service Template for SSH updated" - -- name: "SERVICE_TEMPLATE 4: Create Service Template for Delete Test" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for DNS - ports: - - 53 - protocol: udp - comments: Domain Name System - state: present - register: test_four - -- name: "SERVICE_TEMPLATE 4: ASSERT - Create Service Template for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['service_template']['name'] == "Service Template for DNS" - - test_four['service_template']['ports'] == [53] - - test_four['service_template']['protocol'] == "udp" - - test_four['service_template']['comments'] == "Domain Name System" - - test_four['msg'] == "service_template Service Template for DNS created" - -- name: "SERVICE_TEMPLATE 5: Delete Service Template" - netbox.netbox.netbox_service_template: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Service Template for DNS - state: absent - register: test_five - -- name: "SERVICE_TEMPLATE 5: ASSERT - Delete Service Template" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "service_template Service Template for DNS deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_site.yml b/tests/integration/targets/v3.7/tasks/netbox_site.yml deleted file mode 100644 index a5861522e..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_site.yml +++ /dev/null @@ -1,165 +0,0 @@ ---- -## -## -### NETBOX_SITE -## -## -- name: 1 - Create site within NetBox with only required information - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: present - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['site']['name'] == "Test - Colorado" - - test_one['msg'] == "site Test - Colorado created" - -- name: 2 - Duplicate - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: present - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "site Test - Colorado already exists" - - test_two['site']['name'] == "Test - Colorado" - -- name: 3 - Update Test - Colorado - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - status: Planned - region: Test Region - state: present - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['diff']['after']['region'] == 1 - - test_three['msg'] == "site Test - Colorado updated" - - test_three['site']['name'] == "Test - Colorado" - - test_three['site']['status'] == "planned" - - test_three['site']['region'] == 1 - -- name: 4 - Create site with all parameters - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - California - status: Planned - region: Test Region - site_group: Test Site Group - tenant: Test Tenant - facility: EquinoxCA7 - time_zone: America/Los Angeles - description: This is a test description - physical_address: Hollywood, CA, 90210 - shipping_address: Hollywood, CA, 90210 - latitude: "22.169141" - longitude: "-100.994041" - comments: "### Placeholder" - slug: test_california - state: present - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['site']['name'] == "Test - California" - - test_four['msg'] == "site Test - California created" - - test_four['site']['status'] == "planned" - - test_four['site']['region'] == 1 - - test_four['site']['group'] == 4 - - test_four['site']['tenant'] == 1 - - test_four['site']['facility'] == "EquinoxCA7" - - test_four['site']['time_zone'] == "America/Los_Angeles" - - test_four['site']['description'] == "This is a test description" - - test_four['site']['physical_address'] == "Hollywood, CA, 90210" - - test_four['site']['shipping_address'] == "Hollywood, CA, 90210" - - test_four['site']['latitude'] == 22.169141 - - test_four['site']['longitude'] == -100.994041 - - test_four['site']['comments'] == "### Placeholder" - - test_four['site']['slug'] == "test_california" - -- name: "NETBOX_SITE_IDEM: Idempotency - Create duplicate site with all parameters" - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - California - status: Planned - region: Test Region - site_group: Test Site Group - tenant: Test Tenant - facility: EquinoxCA7 - time_zone: America/Los Angeles - description: This is a test description - physical_address: Hollywood, CA, 90210 - shipping_address: Hollywood, CA, 90210 - latitude: "22.169141" - longitude: "-100.994041" - comments: "### Placeholder" - slug: test_california - state: present - register: test_results - -- name: "NETBOX_SITE_IDEM: (ASSERT) Idempotency - Duplicate device site with all parameters" - ansible.builtin.assert: - that: - - test_results is not changed - - test_results['site']['name'] == "Test - California" - - test_results['msg'] == "site Test - California already exists" - - test_results['site']['status'] == "planned" - - test_results['site']['region'] == 1 - - test_results['site']['group'] == 4 - - test_results['site']['tenant'] == 1 - - test_results['site']['facility'] == "EquinoxCA7" - - test_results['site']['time_zone'] == "America/Los_Angeles" - - test_results['site']['description'] == "This is a test description" - - test_results['site']['physical_address'] == "Hollywood, CA, 90210" - - test_results['site']['shipping_address'] == "Hollywood, CA, 90210" - - test_results['site']['latitude'] == 22.169141 - - test_results['site']['longitude'] == -100.994041 - - test_results['site']['comments'] == "### Placeholder" - - test_results['site']['slug'] == "test_california" - -- name: 5 - Delete site within netbox - netbox.netbox.netbox_site: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test - Colorado - state: absent - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['site']['name'] == "Test - Colorado" - - test_five['msg'] == "site Test - Colorado deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_site_group.yml b/tests/integration/targets/v3.7/tasks/netbox_site_group.yml deleted file mode 100644 index 11b9cbb24..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_site_group.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -## -## -### NETBOX_SITE_GROUP -## -## -- name: "SITE_GROUP 1: Necessary info creation" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: present - register: test_one - -- name: "SITE_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['site_group']['name'] == "Site Group" - - test_one['site_group']['slug'] == "site-group" - - test_one['msg'] == "site_group Site Group created" - -- name: "SITE_GROUP 2: Create duplicate" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: present - register: test_two - -- name: "SITE_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['site_group']['name'] == "Site Group" - - test_two['site_group']['slug'] == "site-group" - - test_two['msg'] == "site_group Site Group already exists" - -- name: "SITE_GROUP 3: Update" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - parent_site_group: Test Site Group - description: This is a site group - state: present - register: test_three - -- name: "SITE_GROUP 3: ASSERT - Update" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['parent'] == 4 - - test_three['diff']['after']['description'] == "This is a site group" - - test_three['site_group']['name'] == "Site Group" - - test_three['site_group']['slug'] == "site-group" - - test_three['site_group']['parent'] == 4 - - test_three['site_group']['description'] == "This is a site group" - - test_three['msg'] == "site_group Site Group updated" - -- name: "SITE_GROUP 4: Delete" - netbox.netbox.netbox_site_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Site Group - state: absent - register: test_four - -- name: "SITE_GROUP 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "site_group Site Group deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_tag.yml b/tests/integration/targets/v3.7/tasks/netbox_tag.yml deleted file mode 100644 index f3fcbac39..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_tag.yml +++ /dev/null @@ -1,110 +0,0 @@ ---- -## -## -### NETBOX_TAGS -## -## -- name: "TAG 1: ASSERT - Necessary info creation" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 test - color: "0000ff" - state: present - register: test_one - -- name: "TAG 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tags']['color'] == "0000ff" - - test_one['tags']['description'] == "Tag 1 test" - - test_one['tags']['name'] == "Test Tag 1" - - test_one['tags']['slug'] == "test-tag-1" - - test_one['msg'] == "tags Test Tag 1 created" - -- name: "TAG 2: Create duplicate" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 test - color: "0000ff" - state: present - register: test_two - -- name: "TAG 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tags']['name'] == "Test Tag 1" - - test_two['msg'] == "tags Test Tag 1 already exists" - -- name: "TAG 3: ASSERT - Update" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - description: Tag 1 update test - color: "00ff00" - state: present - register: test_three - -- name: "TAG 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['color'] == "00ff00" - - test_three['diff']['after']['description'] == "Tag 1 update test" - - test_three['tags']['name'] == "Test Tag 1" - - test_three['tags']['description'] == "Tag 1 update test" - - test_three['tags']['color'] == "00ff00" - - test_three['msg'] == "tags Test Tag 1 updated" - -- name: "TAG 4: ASSERT - Delete" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 1 - state: absent - register: test_four - -- name: "TAG 4: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['state'] == "absent" - - test_four['tags']['name'] == "Test Tag 1" - - test_four['tags']['slug'] == "test-tag-1" - - test_four['msg'] == "tags Test Tag 1 deleted" - -- name: "TAG 5: ASSERT - Necessary info creation" - netbox.netbox.netbox_tag: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tag 5 - slug: test-tag-five - description: Tag 5 test - color: "0000ff" - state: present - register: test_five - -- name: "TAG 5: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tags']['color'] == "0000ff" - - test_five['tags']['description'] == "Tag 5 test" - - test_five['tags']['name'] == "Test Tag 5" - - test_five['tags']['slug'] == "test-tag-five" - - test_five['msg'] == "tags Test Tag 5 created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_tenant.yml b/tests/integration/targets/v3.7/tasks/netbox_tenant.yml deleted file mode 100644 index 0731e0268..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_tenant.yml +++ /dev/null @@ -1,106 +0,0 @@ ---- -## -## -### NETBOX_TENANT -## -## -- name: 1 - Test tenant creation - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tenant']['name'] == "Tenant ABC" - - test_one['tenant']['slug'] == "tenant-abc" - - test_one['msg'] == "tenant Tenant ABC created" - -- name: Test duplicate tenant - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tenant']['name'] == "Tenant ABC" - - test_two['tenant']['slug'] == "tenant-abc" - - test_two['msg'] == "tenant Tenant ABC already exists" - -- name: 3 - Test update - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - description: Updated description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "Updated description" - - test_three['tenant']['name'] == "Tenant ABC" - - test_three['tenant']['slug'] == "tenant-abc" - - test_three['tenant']['description'] == "Updated description" - - test_three['msg'] == "tenant Tenant ABC updated" - -- name: 4 - Test delete - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "tenant Tenant ABC deleted" - -- name: 5 - Create tenant with all parameters - netbox.netbox.netbox_tenant: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Tenant ABC - description: ABC Incorporated - comments: "### This tenant is super cool" - tenant_group: Test Tenant Group - slug: tenant_abc - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tenant']['name'] == "Tenant ABC" - - test_five['tenant']['slug'] == "tenant_abc" - - test_five['tenant']['description'] == "ABC Incorporated" - - test_five['tenant']['comments'] == "### This tenant is super cool" - - test_five['tenant']['group'] == 1 - - test_five['tenant']['tags'] | length == 3 - - test_five['msg'] == "tenant Tenant ABC created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_tenant_group.yml b/tests/integration/targets/v3.7/tasks/netbox_tenant_group.yml deleted file mode 100644 index f7f57f3c2..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_tenant_group.yml +++ /dev/null @@ -1,129 +0,0 @@ ---- -## -## -### NETBOX_TENANT_GROUP -## -## -- name: 1 - Test tenant group creation - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['tenant_group']['name'] == "Test Tenant Group Two" - - test_one['tenant_group']['slug'] == "test-tenant-group-two" - - test_one['msg'] == "tenant_group Test Tenant Group Two created" - -- name: Test duplicate tenant group - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['tenant_group']['name'] == "Test Tenant Group Two" - - test_two['tenant_group']['slug'] == "test-tenant-group-two" - - test_two['msg'] == "tenant_group Test Tenant Group Two already exists" - -- name: 3 - Test delete - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group Two - state: absent - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "present" - - test_three['diff']['after']['state'] == "absent" - - test_three['msg'] == "tenant_group Test Tenant Group Two deleted" - -- name: 4 - Test tenant group creation with custom slug - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group ABC - slug: test_tenant_group_four - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['tenant_group']['name'] == "Test Tenant Group ABC" - - test_four['tenant_group']['slug'] == "test_tenant_group_four" - - test_four['msg'] == "tenant_group Test Tenant Group ABC created" - -- name: 5 - Test child tenant group creation - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Child Test Tenant Group - parent_tenant_group: "{{ test_four.tenant_group.slug }}" - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['tenant_group']['name'] == "Child Test Tenant Group" - - test_five['tenant_group']['parent'] == test_four.tenant_group.id - - test_five['msg'] == "tenant_group Child Test Tenant Group created" - -- name: 6 - Test child tenant group deletion - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Child Test Tenant Group - state: absent - register: test_six - -- name: 6 - ASSERT - ansible.builtin.assert: - that: - - test_six is changed - - test_six['diff']['before']['state'] == "present" - - test_six['diff']['after']['state'] == "absent" - - test_six['msg'] == "tenant_group Child Test Tenant Group deleted" - -- name: 7 - Test deletion of the tenant group with custom slug - netbox.netbox.netbox_tenant_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test Tenant Group ABC - slug: test_tenant_group_four - state: absent - register: test_seven - -- name: 7 - ASSERT - ansible.builtin.assert: - that: - - test_seven is changed - - test_seven['diff']['before']['state'] == "present" - - test_seven['diff']['after']['state'] == "absent" - - test_seven['msg'] == "tenant_group Test Tenant Group ABC deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_virtual_chassis.yml b/tests/integration/targets/v3.7/tasks/netbox_virtual_chassis.yml deleted file mode 100644 index 395be8395..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_virtual_chassis.yml +++ /dev/null @@ -1,131 +0,0 @@ ---- -# © 2020 Nokia -# Licensed under the GNU General Public License v3.0 only -# SPDX-License-Identifier: GPL-3.0-only -## -## -### NETBOX_VIRTUAL_CHASSIS -## -## -- name: "VIRTUAL_CHASSIS 0: Create device for testing virtual chassis" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Virtual Chassis Tests - device_type: Cisco Test - device_role: Core Switch - site: Test Site - vc_position: 1 - vc_priority: 1 - state: present - -- name: "VIRTUAL_CHASSIS 1: Necessary info creation" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - state: present - register: test_one - -- name: "VIRTUAL_CHASSIS 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['virtual_chassis']['master'] == 11 - - test_one['virtual_chassis']['name'] == "First VC" - - test_one['msg'] == "virtual_chassis First VC created" - -- name: "VIRTUAL_CHASSIS 2: Create duplicate" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - state: present - register: test_two - -- name: "VIRTUAL_CHASSIS 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['virtual_chassis']['master'] == 11 - - test_two['virtual_chassis']['name'] == "First VC" - - test_two['msg'] == "virtual_chassis First VC already exists" - -- name: "POWER_FEED 3: Update virtual_chassis with other fields" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: First VC - master: Device Virtual Chassis Tests - domain: Domain Text - state: present - register: test_three - -- name: "POWER_FEED 3: ASSERT - Update virtual_chassis with other fields" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['domain'] == "Domain Text" - - test_three['virtual_chassis']['master'] == 11 - - test_three['virtual_chassis']['domain'] == "Domain Text" - - test_three['virtual_chassis']['name'] == "First VC" - - test_three['msg'] == "virtual_chassis First VC updated" - -- name: "VIRTUAL_CHASSIS 4: Create device for testing virtual chassis deletion" - netbox.netbox.netbox_device: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Device Virtual Chassis Tests 2 - device_type: Cisco Test - device_role: Core Switch - site: Test Site - vc_position: 1 - vc_priority: 15 - state: present - -- name: "VIRTUAL_CHASSIS 4: Create Virtual Chassis for Delete Test" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Second VC - master: Device Virtual Chassis Tests 2 - state: present - register: test_four - -- name: "VIRTUAL_CHASSIS 4: ASSERT - Create Virtual Chassis for Delete Test" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "absent" - - test_four['diff']['after']['state'] == "present" - - test_four['virtual_chassis']['master'] == 12 - - test_four['virtual_chassis']['name'] == "Second VC" - - test_four['msg'] == "virtual_chassis Second VC created" - -- name: "VIRTUAL_CHASSIS 5: Delete Virtual Chassis" - netbox.netbox.netbox_virtual_chassis: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Second VC - master: Device Virtual Chassis Tests 2 - state: absent - register: test_five - -- name: "VIRTUAL_CHASSIS 5: ASSERT - Delete Virtual Chassis" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "present" - - test_five['diff']['after']['state'] == "absent" - - test_five['msg'] == "virtual_chassis Second VC deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_vlan.yml b/tests/integration/targets/v3.7/tasks/netbox_vlan.yml deleted file mode 100644 index 463873ca5..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_vlan.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -## -## -### NETBOX_VLAN -## -## -- name: "VLAN 1: Necessary info creation" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - state: present - register: test_one - -- name: "VLAN 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['vlan']['name'] == "Test VLAN 500" - - test_one['vlan']['vid'] == 500 - - test_one['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 2: Create duplicate" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - state: present - register: test_two - -- name: "VLAN 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['vlan']['name'] == "Test VLAN 500" - - test_two['vlan']['vid'] == 500 - - test_two['msg'] == "vlan Test VLAN 500 already exists" - -- name: "VLAN 3: Create VLAN with same name, but different site" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - site: Test Site - tenant: Test Tenant - vlan_group: Test VLAN Group - state: present - register: test_three - -- name: "VLAN 3: ASSERT - Create VLAN with same name, but different site" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['vlan']['name'] == "Test VLAN 500" - - test_three['vlan']['vid'] == 500 - - test_three['vlan']['site'] == 1 - - test_three['vlan']['group'] == 1 - - test_three['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 4: ASSERT - Update" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - tenant: Test Tenant - vlan_group: Test VLAN Group - status: Reserved - vlan_role: Network of care - description: Updated description - site: Test Site - tags: - - Schnozzberry - state: present - register: test_four - -- name: "VLAN 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['status'] == "reserved" - - test_four['diff']['after']['role'] == 1 - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['tags'][0] == 4 - - test_four['vlan']['name'] == "Test VLAN 500" - - test_four['vlan']['tenant'] == 1 - - test_four['vlan']['site'] == 1 - - test_four['vlan']['group'] == 1 - - test_four['vlan']['status'] == "reserved" - - test_four['vlan']['role'] == 1 - - test_four['vlan']['description'] == "Updated description" - - test_four['vlan']['tags'][0] == 4 - - test_four['msg'] == "vlan Test VLAN 500 updated" - -- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - tenant: Test Tenant - vlan_group: Test VLAN Group - status: Reserved - vlan_role: Network of care - description: Updated description - site: Test Site - tags: - - Schnozzberry - state: present - register: idempotent_vlan_group - -- name: "VLAN: ASSERT - IDEMPOTENT WITH VLAN_GROUP" - ansible.builtin.assert: - that: - - idempotent_vlan_group is not changed - -- name: "VLAN: Create VLAN with same name, but different vlan_group" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - vid: 500 - site: Test Site - tenant: Test Tenant - vlan_group: Test VLAN Group 2 - state: present - register: new_vlan_group - -- name: "VLAN: ASSERT - Create VLAN with same name, but different vlan_group" - ansible.builtin.assert: - that: - - new_vlan_group is changed - - new_vlan_group['diff']['before']['state'] == "absent" - - new_vlan_group['diff']['after']['state'] == "present" - - new_vlan_group['vlan']['name'] == "Test VLAN 500" - - new_vlan_group['vlan']['vid'] == 500 - - new_vlan_group['vlan']['site'] == 1 - - new_vlan_group['vlan']['group'] == 2 - - new_vlan_group['msg'] == "vlan Test VLAN 500 created" - -- name: "VLAN 5: ASSERT - Delete more than one result" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - state: absent - ignore_errors: true - register: test_five - -- name: "VLAN 5: ASSERT - Delete more than one result" - ansible.builtin.assert: - that: - - test_five is failed - - test_five['msg'] == "More than one result returned for Test VLAN 500" - -- name: "VLAN 6: ASSERT - Delete" - netbox.netbox.netbox_vlan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VLAN 500 - site: Test Site - vlan_group: Test VLAN Group - state: absent - register: test_six - -- name: "VLAN 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['vlan']['name'] == "Test VLAN 500" - - test_six['vlan']['tenant'] == 1 - - test_six['vlan']['site'] == 1 - - test_six['vlan']['group'] == 1 - - test_six['vlan']['status'] == "reserved" - - test_six['vlan']['role'] == 1 - - test_six['vlan']['description'] == "Updated description" - - test_six['vlan']['tags'][0] == 4 - - test_six['msg'] == "vlan Test VLAN 500 deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_vlan_group.yml b/tests/integration/targets/v3.7/tasks/netbox_vlan_group.yml deleted file mode 100644 index 9dd4d1789..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_vlan_group.yml +++ /dev/null @@ -1,314 +0,0 @@ ---- -## -## -### NETBOX_VLAN_GROUP -## -## -- name: "VLAN_GROUP 1: Necessary info creation" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site - state: present - register: results - -- name: "VLAN_GROUP 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group One created" - -- name: "VLAN_GROUP 2: Create duplicate" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site - state: present - register: results - -- name: "VLAN_GROUP 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not results['changed'] - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group One already exists" - -- name: "VLAN_GROUP 3: ASSERT - Create with same name, different site" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: present - register: results - -- name: "VLAN_GROUP 3: ASSERT - Create with same name, different site" - ansible.builtin.assert: - that: - - results is changed - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group One created" - -- name: "VLAN_GROUP 4: ASSERT - Create vlan group, no site" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - state: present - ignore_errors: true - register: results - -- name: "VLAN_GROUP 4: ASSERT - Create with same name, different site" - ansible.builtin.assert: - that: - - results is failed - - results['msg'] == "More than one result returned for VLAN Group One" - -- name: "VLAN_GROUP 5: ASSERT - Delete" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: absent - register: results - -- name: "VLAN_GROUP 5: ASSERT - Delete" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "present" - - results['diff']['after']['state'] == "absent" - - results['vlan_group']['name'] == "VLAN Group One" - - results['vlan_group']['slug'] == "vlan-group-one" - - results['vlan_group']['scope_type'] == "dcim.site" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group One deleted" - -- name: "VLAN_GROUP 6: ASSERT - Delete non existing" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group One - scope_type: dcim.site - scope: Test Site2 - state: absent - register: results - -- name: "VLAN_GROUP 6: ASSERT - Delete non existing`" - ansible.builtin.assert: - that: - - not results['changed'] - - results['vlan_group'] == None - - results['msg'] == "vlan_group VLAN Group One already absent" - -- name: "VLAN_GROUP 7: Necessary info creation - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - state: present - register: results - -- name: "VLAN_GROUP 7: ASSERT - Necessary info creation - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group Location created" - -- name: "VLAN_GROUP 8: Necessary info creation - scope_type: dcim.rack" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Rack - scope_type: dcim.rack - scope: Test Rack - state: present - register: results - -- name: "VLAN_GROUP 8: ASSERT - Necessary info creation - scope_type: dcim.rack" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Rack" - - results['vlan_group']['slug'] == "vlan-group-rack" - - results['vlan_group']['scope_type'] == "dcim.rack" - - results['vlan_group']['scope_id'] == 2 - - results['msg'] == "vlan_group VLAN Group Rack created" - -- name: "VLAN_GROUP 9: Necessary info creation - scope_type: dcim.region" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Region - scope_type: dcim.region - scope: Test Region - state: present - register: results - -- name: "VLAN_GROUP 9: ASSERT - Necessary info creation - scope_type: dcim.region" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Region" - - results['vlan_group']['slug'] == "vlan-group-region" - - results['vlan_group']['scope_type'] == "dcim.region" - - results['vlan_group']['scope_id'] == 1 - - results['msg'] == "vlan_group VLAN Group Region created" - -- name: "VLAN_GROUP 10: Necessary info creation - scope_type: dcim.sitegroup" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Site Group - scope_type: dcim.sitegroup - scope: Test Site Group - state: present - register: results - -- name: "VLAN_GROUP 10: ASSERT - Necessary info creation - scope_type: dcim.sitegroup" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['state'] == "absent" - - results['diff']['after']['state'] == "present" - - results['vlan_group']['name'] == "VLAN Group Site Group" - - results['vlan_group']['slug'] == "vlan-group-site-group" - - results['vlan_group']['scope_type'] == "dcim.sitegroup" - - results['vlan_group']['scope_id'] == 4 - - results['msg'] == "vlan_group VLAN Group Site Group created" - -# Commented out due to invalid content type being reported back by API -# - name: "VLAN_GROUP 11: Necessary info creation - scope_type: virtualization.cluster" -# netbox.netbox.netbox_vlan_group: -# netbox_url: http://localhost:32768 -# netbox_token: 0123456789abcdef0123456789abcdef01234567 -# data: -# name: "VLAN Group Cluster" -# scope_type: "virtualization.cluster" -# scope: Test Cluster -# state: present -# register: results - -# - name: "VLAN_GROUP 11: ASSERT - Necessary info creation - scope_type: virtualization.cluster" -# assert: -# that: -# - results is changed -# - results['diff']['before']['state'] == "absent" -# - results['diff']['after']['state'] == "present" -# - results['vlan_group']['name'] == "VLAN Group Cluster" -# - results['vlan_group']['slug'] == "vlan-group-cluster" -# - results['vlan_group']['scope_type'] == "virtualization.cluster" -# - results['vlan_group']['scope_id'] == 1 -# - results['msg'] == "vlan_group VLAN Group Cluster created" - -# - name: "VLAN_GROUP 12: Necessary info creation - scope_type: virtualization.clustergroup" -# netbox.netbox.netbox_vlan_group: -# netbox_url: http://localhost:32768 -# netbox_token: 0123456789abcdef0123456789abcdef01234567 -# data: -# name: "VLAN Group Cluster Group" -# scope_type: "virtualization.clustergroup" -# scope: Test Cluster Group -# state: present -# register: results - -# - name: "VLAN_GROUP 12: ASSERT - Necessary info creation - scope_type: virtualization.clustergroup" -# assert: -# that: -# - results is changed -# - results['diff']['before']['state'] == "absent" -# - results['diff']['after']['state'] == "present" -# - results['vlan_group']['name'] == "VLAN Group Cluster Group" -# - results['vlan_group']['slug'] == "vlan-group-cluster-group" -# - results['vlan_group']['scope_type'] == "virtualization.clustergroup" -# - results['vlan_group']['scope_id'] == 1 -# - results['msg'] == "vlan_group VLAN Group Cluster Group created" - -- name: "VLAN_GROUP 12: Update Description - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - description: Ansible updated description - state: present - register: results - -- name: "VLAN_GROUP 12: ASSERT - Update Description - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is changed - - results['diff']['before']['description'] == "" - - results['diff']['after']['description'] == "Ansible updated description" - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['vlan_group']['description'] == "Ansible updated description" - - results['msg'] == "vlan_group VLAN Group Location updated" - -- name: "VLAN_GROUP 12: Update Description (IDEM) - scope_type: dcim.location" - netbox.netbox.netbox_vlan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: VLAN Group Location - scope_type: dcim.location - scope: Test Rack Group - description: Ansible updated description - state: present - register: results - -- name: "VLAN_GROUP 12: ASSERT - Update Description (IDEM) - scope_type: dcim.location" - ansible.builtin.assert: - that: - - results is not changed - - results['vlan_group']['name'] == "VLAN Group Location" - - results['vlan_group']['slug'] == "vlan-group-location" - - results['vlan_group']['scope_type'] == "dcim.location" - - results['vlan_group']['scope_id'] == 1 - - results['vlan_group']['description'] == "Ansible updated description" - - results['msg'] == "vlan_group VLAN Group Location already exists" diff --git a/tests/integration/targets/v3.7/tasks/netbox_vrf.yml b/tests/integration/targets/v3.7/tasks/netbox_vrf.yml deleted file mode 100644 index 1da7ae382..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_vrf.yml +++ /dev/null @@ -1,137 +0,0 @@ ---- -## -## -### NETBOX_VRF -## -## -- name: "VRF 1: Necessary info creation" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: present - register: test_one - -- name: "VRF 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['vrf']['name'] == "Test VRF One" - - test_one['msg'] == "vrf Test VRF One created" - -- name: "VRF 2: Create duplicate" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: present - register: test_two - -- name: "VRF 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['vrf']['name'] == "Test VRF One" - - test_two['msg'] == "vrf Test VRF One already exists" - -- name: "VRF 3: Create VRF with same name, but different tenant" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - tenant: Test Tenant - state: present - register: test_three - -- name: "VRF 3: ASSERT - Create VRF with same name, but different site" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['before']['state'] == "absent" - - test_three['diff']['after']['state'] == "present" - - test_three['vrf']['name'] == "Test VRF One" - - test_three['vrf']['tenant'] == 1 - - test_three['msg'] == "vrf Test VRF One created" - -- name: "VRF 4: ASSERT - Update" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - rd: "65001:1" - enforce_unique: false - tenant: Test Tenant - description: Updated description - import_targets: - - 4000:4000 - - 5000:5000 - export_targets: - - 5000:5000 - tags: - - Schnozzberry - state: present - register: test_four - -- name: "VRF 4: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['rd'] == "65001:1" - - test_four['diff']['after']['enforce_unique'] == false - - test_four['diff']['after']['description'] == "Updated description" - - test_four['diff']['after']['tags'][0] == 4 - - test_four['diff']['after']['import_targets'] | length == 2 - - test_four['diff']['after']['export_targets'] | length == 1 - - test_four['vrf']['name'] == "Test VRF One" - - test_four['vrf']['tenant'] == 1 - - test_four['vrf']['rd'] == "65001:1" - - test_four['vrf']['enforce_unique'] == false - - test_four['vrf']['description'] == "Updated description" - - test_four['vrf']['tags'][0] == 4 - - test_four['vrf']['import_targets'] | length == 2 - - test_four['vrf']['export_targets'] | length == 1 - - test_four['msg'] == "vrf Test VRF One updated" - -- name: "VRF 5: ASSERT - Delete more than one result" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - state: absent - ignore_errors: true - register: test_five - -- name: "VRF 5: ASSERT - Delete more than one result" - ansible.builtin.assert: - that: - - test_five is failed - - test_five['msg'] == "More than one result returned for Test VRF One" - -- name: "VRF 6: ASSERT - Delete" - netbox.netbox.netbox_vrf: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Test VRF One - tenant: Test Tenant - state: absent - register: test_six - -- name: "VRF 6: ASSERT - Delete" - ansible.builtin.assert: - that: - - test_six is changed - - test_six['vrf']['name'] == "Test VRF One" - - test_six['vrf']['tenant'] == 1 - - test_six['vrf']['rd'] == "65001:1" - - test_six['vrf']['enforce_unique'] == false - - test_six['vrf']['description'] == "Updated description" - - test_six['vrf']['tags'][0] == 4 - - test_six['msg'] == "vrf Test VRF One deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_webhook.yml b/tests/integration/targets/v3.7/tasks/netbox_webhook.yml deleted file mode 100644 index a3d5a3825..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_webhook.yml +++ /dev/null @@ -1,121 +0,0 @@ ---- -## -## -### NETBOX_WEBHOOK -## -## -- name: "WEBHOOK 1: Necessary info creation" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Webhook - type_create: true - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_one - -- name: "WEBHOOK 1: ASSERT - Necessary info creation" - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['webhook']['name'] == "Example Webhook" - - test_one['webhook']['type_create'] == True - - test_one['webhook']['payload_url'] == "https://payload.url" - - test_one['webhook']['content_types'] == ["dcim.device"] - - test_one['msg'] == "webhook Example Webhook created" - -- name: "WEBHOOK 2: Create duplicate" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - name: Example Webhook - type_create: true - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_two - -- name: "WEBHOOK 2: ASSERT - Create duplicate" - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['webhook']['name'] == "Example Webhook" - - test_two['msg'] == "webhook Example Webhook already exists" - -- name: "WEBHOOK 3: Update data and add on delete" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - dcim.device - type_create: true - type_delete: true - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_three - -- name: "WEBHOOK 3: ASSERT - Updated" - ansible.builtin.assert: - that: - - test_three is changed - - test_three['webhook']['name'] == "Example Webhook" - - test_three['msg'] == "webhook Example Webhook updated" - -- name: "WEBHOOK 4: Change content type" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: present - register: test_four - -- name: "WEBHOOK 4: ASSERT - Change content type" - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] - - test_four['webhook']['name'] == "Example Webhook" - - test_four['msg'] == "webhook Example Webhook updated" - -- name: "WEBHOOK 5: Delete" - netbox.netbox.netbox_webhook: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - content_types: - - virtualization.virtualmachine - name: Example Webhook - payload_url: https://payload.url - body_template: !unsafe >- - {{ data }} - state: absent - register: test_five - -- name: "WEBHOOK 5: ASSERT - Deleted" - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['after']['state'] == "absent" - - test_five['webhook']['name'] == "Example Webhook" - - test_five['msg'] == "webhook Example Webhook deleted" diff --git a/tests/integration/targets/v3.7/tasks/netbox_wireless_lan.yml b/tests/integration/targets/v3.7/tasks/netbox_wireless_lan.yml deleted file mode 100644 index e70fd3e59..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_wireless_lan.yml +++ /dev/null @@ -1,103 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LAN -## -## -- name: 1 - Test wireless LAN creation - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_lan']['ssid'] == "Wireless LAN One" - - test_one['msg'] == "wireless_lan Wireless LAN One created" - -- name: Test duplicate wireless LAN - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['wireless_lan']['ssid'] == "Wireless LAN One" - - test_two['msg'] == "wireless_lan Wireless LAN One already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - description: New Description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "New Description" - - test_three['wireless_lan']['ssid'] == "Wireless LAN One" - - test_three['wireless_lan']['description'] == "New Description" - - test_three['msg'] == "wireless_lan Wireless LAN One updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless LAN One - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_lan Wireless LAN One deleted" - -- name: 5 - Create wireless LAN with all parameters - netbox.netbox.netbox_wireless_lan: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - ssid: Wireless Network One - description: Cool Wireless Network - auth_type: wpa-enterprise - auth_cipher: aes - auth_psk: psk123456 - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_lan']['ssid'] == "Wireless Network One" - - test_five['wireless_lan']['description'] == "Cool Wireless Network" - - test_five['wireless_lan']['auth_type'] == "wpa-enterprise" - - test_five['wireless_lan']['auth_cipher'] == "aes" - - test_five['wireless_lan']['auth_psk'] == "psk123456" - # - test_five['wireless_lan']['tags'] | length == 3 - - test_five['msg'] == "wireless_lan Wireless Network One created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_wireless_lan_group.yml b/tests/integration/targets/v3.7/tasks/netbox_wireless_lan_group.yml deleted file mode 100644 index 57daaf62c..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_wireless_lan_group.yml +++ /dev/null @@ -1,97 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LAN_GROUP -## -## -- name: 1 - Test wireless LAN group creation - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_one['msg'] == "wireless_lan_group Wireless LAN Group One created" - -- name: Test duplicate wireless LAN group - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_two['msg'] == "wireless_lan_group Wireless LAN Group One already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - description: New Description - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['description'] == "New Description" - - test_three['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_three['wireless_lan_group']['description'] == "New Description" - - test_three['msg'] == "wireless_lan_group Wireless LAN Group One updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_lan_group Wireless LAN Group One deleted" - -- name: 5 - Create wireless LAN group with all parameters - netbox.netbox.netbox_wireless_lan_group: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - name: Wireless LAN Group One - description: Cool Wireless LAN Group - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_lan_group']['name'] == "Wireless LAN Group One" - - test_five['wireless_lan_group']['description'] == "Cool Wireless LAN Group" - - test_five['wireless_lan_group']['tags'] | length == 3 - - test_five['msg'] == "wireless_lan_group Wireless LAN Group One created" diff --git a/tests/integration/targets/v3.7/tasks/netbox_wireless_link.yml b/tests/integration/targets/v3.7/tasks/netbox_wireless_link.yml deleted file mode 100644 index b026db81e..000000000 --- a/tests/integration/targets/v3.7/tasks/netbox_wireless_link.yml +++ /dev/null @@ -1,130 +0,0 @@ ---- -## -## -### NETBOX_WIRELESS_LINK -## -## -- name: 1 - Test wireless link creation - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - register: test_one - -- name: 1 - ASSERT - ansible.builtin.assert: - that: - - test_one is changed - - test_one['diff']['before']['state'] == "absent" - - test_one['diff']['after']['state'] == "present" - - test_one['wireless_link']['interface_a'] == 6 - - test_one['wireless_link']['interface_b'] == 5 - - test_one['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 created" - -- name: Test duplicate wireless link - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - register: test_two - -- name: 2 - ASSERT - ansible.builtin.assert: - that: - - not test_two['changed'] - - test_two['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 already exists" - -- name: 3 - Test update - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - status: planned - register: test_three - -- name: 3 - ASSERT - ansible.builtin.assert: - that: - - test_three is changed - - test_three['diff']['after']['status'] == "planned" - - test_three['wireless_link']['status'] == "planned" - - test_three['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 updated" - -- name: 4 - Test delete - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - state: absent - register: test_four - -- name: 4 - ASSERT - ansible.builtin.assert: - that: - - test_four is changed - - test_four['diff']['before']['state'] == "present" - - test_four['diff']['after']['state'] == "absent" - - test_four['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 deleted" - -- name: 5 - Create wireless link with all parameters - netbox.netbox.netbox_wireless_link: - netbox_url: http://localhost:32768 - netbox_token: "0123456789abcdef0123456789abcdef01234567" - data: - interface_a: - device: Test Nexus One - name: wlink1 - interface_b: - device: test100 - name: wlink1 - ssid: Wireless Network One - description: Cool Wireless Network - auth_type: wpa-enterprise - auth_cipher: aes - auth_psk: psk123456 - tags: - - tagA - - tagB - - tagC - state: present - register: test_five - -- name: 5 - ASSERT - ansible.builtin.assert: - that: - - test_five is changed - - test_five['diff']['before']['state'] == "absent" - - test_five['diff']['after']['state'] == "present" - - test_five['wireless_link']['ssid'] == "Wireless Network One" - - test_five['wireless_link']['description'] == "Cool Wireless Network" - - test_five['wireless_link']['interface_a'] == 6 - - test_five['wireless_link']['interface_b'] == 5 - - test_five['wireless_link']['auth_type'] == "wpa-enterprise" - - test_five['wireless_link']['auth_cipher'] == "aes" - - test_five['wireless_link']['auth_psk'] == "psk123456" - # - test_five['wireless_link']['tags'] | length == 3 - - test_five['msg'] == "wireless_link Test Nexus One wlink1 <> test100 wlink1 created" diff --git a/tests/integration/targets/v3.7/tasks/main.yml b/tests/integration/targets/v4.2/tasks/main.yml similarity index 86% rename from tests/integration/targets/v3.7/tasks/main.yml rename to tests/integration/targets/v4.2/tasks/main.yml index 1423e0a72..1d56afb98 100644 --- a/tests/integration/targets/v3.7/tasks/main.yml +++ b/tests/integration/targets/v4.2/tasks/main.yml @@ -33,7 +33,13 @@ ansible.builtin.include_tasks: netbox_tenant_group.yml - name: NETBOX_RACK TESTS - ansible.builtin.include_tasks: netbox_rack.yml + ansible.builtin.include_tasks: + file: netbox_rack.yml + apply: + tags: + - netbox_rack + tags: + - netbox_rack - name: NETBOX_RACK_ROLE TESTS ansible.builtin.include_tasks: netbox_rack_role.yml @@ -84,7 +90,13 @@ ansible.builtin.include_tasks: netbox_inventory_item.yml - name: NETBOX_VIRTUAL_MACHINE TESTS - ansible.builtin.include_tasks: netbox_virtual_machine.yml + ansible.builtin.include_tasks: + file: netbox_virtual_machine.yml + apply: + tags: + - netbox_virtual_machine + tags: + - netbox_virtual_machine - name: NETBOX_CLUSTER TESTS ansible.builtin.include_tasks: netbox_cluster.yml @@ -158,6 +170,36 @@ - name: NETBOX_VIRTUAL_CHASSIS TESTS ansible.builtin.include_tasks: netbox_virtual_chassis.yml +- name: NETBOX_USER_TESTS + ansible.builtin.include_tasks: + file: netbox_user.yml + apply: + tags: + - netbox_user + tags: + - netbox_user + +- name: NETBOX_USER_GROUP_TESTS + ansible.builtin.include_tasks: + file: netbox_user_group.yml + apply: + tags: + - netbox_user_group + tags: + - netbox_user_group + +- name: NETBOX_PERMISSION TESTS + ansible.builtin.include_tasks: netbox_permission.yml + +- name: NETBOX_TOKEN_TESTS + ansible.builtin.include_tasks: + file: netbox_token.yml + apply: + tags: + - netbox_token + tags: + - netbox_token + # Module has to be updated for 3.3 # - name: "NETBOX_CABLE TESTS" # include_tasks: "netbox_cable.yml" @@ -169,10 +211,22 @@ ansible.builtin.include_tasks: netbox_lookup.yml - name: NETBOX_TAG_TESTS - ansible.builtin.include_tasks: netbox_tag.yml + ansible.builtin.include_tasks: + file: netbox_tag.yml + apply: + tags: + - netbox_tag + tags: + - netbox_tag - name: NETBOX_ROUTE_TARGET_TESTS - ansible.builtin.include_tasks: netbox_route_target.yml + ansible.builtin.include_tasks: + file: netbox_route_target.yml + apply: + tags: + - netbox_route_target + tags: + - netbox_route_target - name: NETBOX_WIRELESS_LAN TESTS ansible.builtin.include_tasks: @@ -313,7 +367,11 @@ - netbox_config_template - name: NETBOX_VIRTUAL_DISK - ansible.builtin.include_tasks: netbox_virtual_disk.yml + ansible.builtin.include_tasks: + file: netbox_virtual_disk.yml + apply: + tags: + - netbox_virtual_disk tags: - netbox_virtual_disk diff --git a/tests/integration/targets/v3.5/tasks/netbox_aggregate.yml b/tests/integration/targets/v4.2/tasks/netbox_aggregate.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_aggregate.yml rename to tests/integration/targets/v4.2/tasks/netbox_aggregate.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_asn.yml b/tests/integration/targets/v4.2/tasks/netbox_asn.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_asn.yml rename to tests/integration/targets/v4.2/tasks/netbox_asn.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_cable.yml b/tests/integration/targets/v4.2/tasks/netbox_cable.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_cable.yml rename to tests/integration/targets/v4.2/tasks/netbox_cable.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_circuit.yml b/tests/integration/targets/v4.2/tasks/netbox_circuit.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_circuit.yml rename to tests/integration/targets/v4.2/tasks/netbox_circuit.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_circuit_termination.yml b/tests/integration/targets/v4.2/tasks/netbox_circuit_termination.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_circuit_termination.yml rename to tests/integration/targets/v4.2/tasks/netbox_circuit_termination.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_circuit_type.yml b/tests/integration/targets/v4.2/tasks/netbox_circuit_type.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_circuit_type.yml rename to tests/integration/targets/v4.2/tasks/netbox_circuit_type.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_cluster.yml b/tests/integration/targets/v4.2/tasks/netbox_cluster.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_cluster.yml rename to tests/integration/targets/v4.2/tasks/netbox_cluster.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_cluster_group.yml b/tests/integration/targets/v4.2/tasks/netbox_cluster_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_cluster_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_cluster_group.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_cluster_type.yml b/tests/integration/targets/v4.2/tasks/netbox_cluster_type.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_cluster_type.yml rename to tests/integration/targets/v4.2/tasks/netbox_cluster_type.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_config_context.yml b/tests/integration/targets/v4.2/tasks/netbox_config_context.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_config_context.yml rename to tests/integration/targets/v4.2/tasks/netbox_config_context.yml diff --git a/tests/integration/targets/v3.6/tasks/netbox_config_template.yml b/tests/integration/targets/v4.2/tasks/netbox_config_template.yml similarity index 100% rename from tests/integration/targets/v3.6/tasks/netbox_config_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_config_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_console_port.yml b/tests/integration/targets/v4.2/tasks/netbox_console_port.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_console_port.yml rename to tests/integration/targets/v4.2/tasks/netbox_console_port.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_console_port_template.yml b/tests/integration/targets/v4.2/tasks/netbox_console_port_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_console_port_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_console_port_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_console_server_port.yml b/tests/integration/targets/v4.2/tasks/netbox_console_server_port.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_console_server_port.yml rename to tests/integration/targets/v4.2/tasks/netbox_console_server_port.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_console_server_port_template.yml b/tests/integration/targets/v4.2/tasks/netbox_console_server_port_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_console_server_port_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_console_server_port_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_contact.yml b/tests/integration/targets/v4.2/tasks/netbox_contact.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_contact.yml rename to tests/integration/targets/v4.2/tasks/netbox_contact.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_contact_role.yml b/tests/integration/targets/v4.2/tasks/netbox_contact_role.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_contact_role.yml rename to tests/integration/targets/v4.2/tasks/netbox_contact_role.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_custom_field.yml b/tests/integration/targets/v4.2/tasks/netbox_custom_field.yml similarity index 93% rename from tests/integration/targets/v3.7/tasks/netbox_custom_field.yml rename to tests/integration/targets/v4.2/tasks/netbox_custom_field.yml index c15f2565a..a4aba8608 100644 --- a/tests/integration/targets/v3.7/tasks/netbox_custom_field.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_custom_field.yml @@ -9,7 +9,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: A_CustomField type: text @@ -24,7 +24,7 @@ - test_one['diff']['after']['state'] == "present" - test_one['custom_field']['name'] == "A_CustomField" - test_one['custom_field']['required'] == false - - test_one['custom_field']['content_types'] == ["dcim.device"] + - test_one['custom_field']['object_types'] == ["dcim.device"] - test_one['custom_field']['type'] == "text" - test_one['custom_field']['weight'] == 100 - test_one['msg'] == "custom_field A_CustomField created" @@ -34,7 +34,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: A_CustomField state: present @@ -52,7 +52,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: A_CustomField description: Added a description @@ -74,7 +74,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - virtualization.virtualmachine name: A_CustomField description: Added a description @@ -86,7 +86,7 @@ ansible.builtin.assert: that: - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] + - test_four['diff']['after']['object_types'] == ["virtualization.virtualmachine"] - test_four['custom_field']['name'] == "A_CustomField" - test_four['msg'] == "custom_field A_CustomField updated" @@ -113,7 +113,7 @@ # netbox_url: http://localhost:32768 # netbox_token: 0123456789abcdef0123456789abcdef01234567 # data: -# content_types: +# object_types: # - "dcim.device" # name: A_CustomField # type: text diff --git a/tests/integration/targets/v3.5/tasks/netbox_custom_link.yml b/tests/integration/targets/v4.2/tasks/netbox_custom_link.yml similarity index 92% rename from tests/integration/targets/v3.5/tasks/netbox_custom_link.yml rename to tests/integration/targets/v4.2/tasks/netbox_custom_link.yml index b9bbcc8a7..3aa29d958 100644 --- a/tests/integration/targets/v3.5/tasks/netbox_custom_link.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_custom_link.yml @@ -9,7 +9,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Custom Link link_text: Open Web management @@ -24,7 +24,7 @@ - test_one['diff']['before']['state'] == "absent" - test_one['diff']['after']['state'] == "present" - test_one['custom_link']['name'] == "Custom Link" - - test_one['custom_link']['content_types'] == ["dcim.device"] + - test_one['custom_link']['object_types'] == ["dcim.device"] - test_one['custom_link']['link_text'] == "Open Web management" - test_one['msg'] == "custom_link Custom Link created" @@ -33,7 +33,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Custom Link link_text: Open Web management @@ -53,7 +53,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Custom Link link_text: Open Web management @@ -75,7 +75,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - virtualization.virtualmachine name: Custom Link link_text: Open Web management @@ -87,7 +87,7 @@ ansible.builtin.assert: that: - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] + - test_four['diff']['after']['object_types'] == ["virtualization.virtualmachine"] - test_four['custom_link']['name'] == "Custom Link" - test_four['msg'] == "custom_link Custom Link updated" @@ -96,7 +96,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - virtualization.virtualmachine name: Custom Link link_text: Open Web management diff --git a/tests/integration/targets/v3.6/tasks/netbox_device.yml b/tests/integration/targets/v4.2/tasks/netbox_device.yml similarity index 95% rename from tests/integration/targets/v3.6/tasks/netbox_device.yml rename to tests/integration/targets/v4.2/tasks/netbox_device.yml index a3a5d8308..4d42e6e71 100644 --- a/tests/integration/targets/v3.6/tasks/netbox_device.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_device.yml @@ -25,7 +25,7 @@ - test_one['diff']['before']['state'] == 'absent' - test_one['diff']['after']['state'] == 'present' - test_one['device']['name'] == "R1" - - test_one['device']['device_role'] == 1 + - test_one['device']['role'] == 1 - test_one['device']['device_type'] == 1 - test_one['device']['site'] == 1 - test_one['device']['status'] == "staged" @@ -50,7 +50,7 @@ that: - not test_two['changed'] - test_two['device']['name'] == "R1" - - test_two['device']['device_role'] == 1 + - test_two['device']['role'] == 1 - test_two['device']['device_type'] == 1 - test_two['device']['site'] == 1 - test_two['device']['status'] == "staged" @@ -82,7 +82,7 @@ - test_three['diff']['after']['vc_position'] == 3 - test_three['diff']['after']['vc_priority'] == 15 - test_three['device']['name'] == "R1" - - test_three['device']['device_role'] == 1 + - test_three['device']['role'] == 1 - test_three['device']['device_type'] == 1 - test_three['device']['site'] == 1 - test_three['device']['status'] == "staged" @@ -111,7 +111,7 @@ that: - test_three_dot_one is changed - test_three_dot_one['diff']['after']['name'] == "R1-changed-name" - - test_three_dot_one['device']['device_role'] == 1 + - test_three_dot_one['device']['role'] == 1 - test_three_dot_one['device']['device_type'] == 1 - test_three_dot_one['device']['site'] == 1 - test_three_dot_one['device']['status'] == "staged" @@ -145,7 +145,7 @@ - test_four['diff']['before']['state'] == "absent" - test_four['diff']['after']['state'] == "present" - test_four['device']['name'] == "TestR1" - - test_four['device']['device_role'] == 1 + - test_four['device']['role'] == 1 - test_four['device']['device_type'] == 5 - test_four['device']['site'] == 2 - test_four['device']['status'] == "active" @@ -207,7 +207,7 @@ - test_seven['diff']['after']['primary_ip4'] == 1 - test_seven['diff']['after']['primary_ip6'] == 2 - test_seven['device']['name'] == "test100" - - test_seven['device']['device_role'] == 1 + - test_seven['device']['role'] == 1 - test_seven['device']['device_type'] == 1 - test_seven['device']['site'] == 1 - test_seven['device']['status'] == "active" @@ -235,7 +235,7 @@ - test_eight is changed - test_eight['diff']['before']['state'] == 'absent' - test_eight['diff']['after']['state'] == 'present' - - test_eight['device']['device_role'] == 1 + - test_eight['device']['role'] == 1 - test_eight['device']['device_type'] == 1 - test_eight['device']['site'] == 1 - test_eight['device']['status'] == "staged" diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_bay.yml b/tests/integration/targets/v4.2/tasks/netbox_device_bay.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_device_bay.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_bay.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_bay_template.yml b/tests/integration/targets/v4.2/tasks/netbox_device_bay_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_device_bay_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_bay_template.yml diff --git a/tests/integration/targets/v3.6/tasks/netbox_device_interface.yml b/tests/integration/targets/v4.2/tasks/netbox_device_interface.yml similarity index 100% rename from tests/integration/targets/v3.6/tasks/netbox_device_interface.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_interface.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_interface_template.yml b/tests/integration/targets/v4.2/tasks/netbox_device_interface_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_device_interface_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_interface_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_role.yml b/tests/integration/targets/v4.2/tasks/netbox_device_role.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_device_role.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_role.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_device_type.yml b/tests/integration/targets/v4.2/tasks/netbox_device_type.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_device_type.yml rename to tests/integration/targets/v4.2/tasks/netbox_device_type.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_export_template.yml b/tests/integration/targets/v4.2/tasks/netbox_export_template.yml similarity index 93% rename from tests/integration/targets/v3.7/tasks/netbox_export_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_export_template.yml index ffdc0424f..1e7535c08 100644 --- a/tests/integration/targets/v3.7/tasks/netbox_export_template.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_export_template.yml @@ -9,7 +9,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Example Export Template description: Export Devices @@ -25,7 +25,7 @@ - test_one['diff']['before']['state'] == "absent" - test_one['diff']['after']['state'] == "present" - test_one['export_template']['name'] == "Example Export Template" - - test_one['export_template']['content_types'] == ["dcim.device"] + - test_one['export_template']['object_types'] == ["dcim.device"] - test_one['export_template']['description'] == "Export Devices" - test_one['msg'] == "export_template Example Export Template created" @@ -34,7 +34,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Example Export Template description: Export Devices @@ -55,7 +55,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - dcim.device name: Example Export Template description: Export Devices @@ -78,7 +78,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - virtualization.virtualmachine name: Example Export Template description: Export Devices @@ -91,7 +91,7 @@ ansible.builtin.assert: that: - test_four is changed - - test_four['diff']['after']['content_types'] == ["virtualization.virtualmachine"] + - test_four['diff']['after']['object_types'] == ["virtualization.virtualmachine"] - test_four['export_template']['name'] == "Example Export Template" - test_four['msg'] == "export_template Example Export Template updated" @@ -100,7 +100,7 @@ netbox_url: http://localhost:32768 netbox_token: "0123456789abcdef0123456789abcdef01234567" data: - content_types: + object_types: - virtualization.virtualmachine name: Example Export Template description: Export Devices diff --git a/tests/integration/targets/v3.5/tasks/netbox_fhrp_group.yml b/tests/integration/targets/v4.2/tasks/netbox_fhrp_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_fhrp_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_fhrp_group.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_fhrp_group_assignment.yml b/tests/integration/targets/v4.2/tasks/netbox_fhrp_group_assignment.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_fhrp_group_assignment.yml rename to tests/integration/targets/v4.2/tasks/netbox_fhrp_group_assignment.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_front_port.yml b/tests/integration/targets/v4.2/tasks/netbox_front_port.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_front_port.yml rename to tests/integration/targets/v4.2/tasks/netbox_front_port.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_front_port_template.yml b/tests/integration/targets/v4.2/tasks/netbox_front_port_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_front_port_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_front_port_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_inventory_item.yml b/tests/integration/targets/v4.2/tasks/netbox_inventory_item.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_inventory_item.yml rename to tests/integration/targets/v4.2/tasks/netbox_inventory_item.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_inventory_item_role.yml b/tests/integration/targets/v4.2/tasks/netbox_inventory_item_role.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_inventory_item_role.yml rename to tests/integration/targets/v4.2/tasks/netbox_inventory_item_role.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_ip_address.yml b/tests/integration/targets/v4.2/tasks/netbox_ip_address.yml similarity index 100% rename from tests/integration/targets/v3.7/tasks/netbox_ip_address.yml rename to tests/integration/targets/v4.2/tasks/netbox_ip_address.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_ipam_role.yml b/tests/integration/targets/v4.2/tasks/netbox_ipam_role.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_ipam_role.yml rename to tests/integration/targets/v4.2/tasks/netbox_ipam_role.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_journal_entry.yml b/tests/integration/targets/v4.2/tasks/netbox_journal_entry.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_journal_entry.yml rename to tests/integration/targets/v4.2/tasks/netbox_journal_entry.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_l2vpn.yml b/tests/integration/targets/v4.2/tasks/netbox_l2vpn.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_l2vpn.yml rename to tests/integration/targets/v4.2/tasks/netbox_l2vpn.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_l2vpn_termination.yml b/tests/integration/targets/v4.2/tasks/netbox_l2vpn_termination.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_l2vpn_termination.yml rename to tests/integration/targets/v4.2/tasks/netbox_l2vpn_termination.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_location.yml b/tests/integration/targets/v4.2/tasks/netbox_location.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_location.yml rename to tests/integration/targets/v4.2/tasks/netbox_location.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_lookup.yml b/tests/integration/targets/v4.2/tasks/netbox_lookup.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_lookup.yml rename to tests/integration/targets/v4.2/tasks/netbox_lookup.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_manufacturer.yml b/tests/integration/targets/v4.2/tasks/netbox_manufacturer.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_manufacturer.yml rename to tests/integration/targets/v4.2/tasks/netbox_manufacturer.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_module.yml b/tests/integration/targets/v4.2/tasks/netbox_module.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_module.yml rename to tests/integration/targets/v4.2/tasks/netbox_module.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_module_bay.yml b/tests/integration/targets/v4.2/tasks/netbox_module_bay.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_module_bay.yml rename to tests/integration/targets/v4.2/tasks/netbox_module_bay.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_module_type.yml b/tests/integration/targets/v4.2/tasks/netbox_module_type.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_module_type.yml rename to tests/integration/targets/v4.2/tasks/netbox_module_type.yml diff --git a/tests/integration/targets/v4.2/tasks/netbox_permission.yml b/tests/integration/targets/v4.2/tasks/netbox_permission.yml new file mode 100644 index 000000000..865991142 --- /dev/null +++ b/tests/integration/targets/v4.2/tasks/netbox_permission.yml @@ -0,0 +1,169 @@ +--- +## +## +### NETBOX_PERMISSION +## +## +- name: "PERMISSION 1: Necessary info creation" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission + actions: + - view + object_types: [] + state: present + register: test_one + +- name: "PERMISSION 1: ASSERT - Necessary info creation" + ansible.builtin.assert: + that: + - test_one is changed + - test_one['diff']['before']['state'] == "absent" + - test_one['diff']['after']['state'] == "present" + - test_one['permission']['name'] == "Test Permission" + - test_one['msg'] == "permission Test Permission created" + +- name: "PERMISSION 2: Create duplicate" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission + actions: + - view + object_types: [] + state: present + register: test_two + +- name: "PERMISSION 2: ASSERT - Create duplicate" + ansible.builtin.assert: + that: + - not test_two['changed'] + - test_two['permission']['name'] == "Test Permission" + - test_two['msg'] == "permission Test Permission already exists" + +- name: "PERMISSION 3: Update" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission + description: The test permission + enabled: false + actions: + - view + - add + - change + - delete + - extreme_administration + object_types: + - vpn.tunneltermination + - wireless.wirelesslan + constraints: + name: Foo + state: present + register: test_three + +- name: "PERMISSION 3: ASSERT - Update" + ansible.builtin.assert: + that: + - test_three is changed + - test_three['diff']['after']['description'] == "The test permission" + - test_three['permission']['name'] == "Test Permission" + - test_three['permission']['description'] == "The test permission" + - test_three['permission']['enabled'] == False + - test_three['permission']['actions'] == ["view", "add", "change", "delete", "extreme_administration"] + - test_three['permission']['object_types'] == ["vpn.tunneltermination", "wireless.wirelesslan"] + - test_three['permission']['constraints']["name"] == "Foo" + - test_three['msg'] == "permission Test Permission updated" + +- name: "PERMISSION 4: Create second permission" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission 2 + actions: + - view + object_types: [] + state: present + register: test_four + +- name: "PERMISSION 4: Create second permission" + ansible.builtin.assert: + that: + - test_four is changed + - test_four['diff']['before']['state'] == "absent" + - test_four['diff']['after']['state'] == "present" + - test_four['permission']['name'] == "Test Permission 2" + - test_four['msg'] == "permission Test Permission 2 created" + +- name: "PERMISSION 5: Add permission to group" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + permissions: + - Test Permission + state: present + register: test_five + +- name: "PERMISSION 5: ASSERT - Add permission to group" + ansible.builtin.assert: + that: + - test_five is changed + - test_five['user_group']['permissions'] == [1] + +- name: "PERMISSION 6: Add permission to user" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword2 + permissions: + - Test Permission 2 + state: present + register: test_six + +- name: "PERMISSION 6: ASSERT - Add permission to user" + ansible.builtin.assert: + that: + - test_six is changed + - test_six['user']['permissions'] == [2] + +- name: "PERMISSION 7: Delete" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission + state: absent + register: test_seven + +- name: "PERMISSION 7: ASSERT - Delete" + ansible.builtin.assert: + that: + - test_seven is changed + - test_seven['diff']['before']['state'] == "present" + - test_seven['diff']['after']['state'] == "absent" + - test_seven['msg'] == "permission Test Permission deleted" + +- name: "PERMISSION 8: Delete non existing" + netbox.netbox.netbox_permission: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test Permission + state: absent + register: test_eight + +- name: "PERMISSION 8: ASSERT - Delete non existing`" + ansible.builtin.assert: + that: + - not test_eight['changed'] + - test_eight['permission'] == None + - test_eight['msg'] == "permission Test Permission already absent" diff --git a/tests/integration/targets/v3.6/tasks/netbox_platform.yml b/tests/integration/targets/v4.2/tasks/netbox_platform.yml similarity index 100% rename from tests/integration/targets/v3.6/tasks/netbox_platform.yml rename to tests/integration/targets/v4.2/tasks/netbox_platform.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_feed.yml b/tests/integration/targets/v4.2/tasks/netbox_power_feed.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_feed.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_feed.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_outlet.yml b/tests/integration/targets/v4.2/tasks/netbox_power_outlet.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_outlet.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_outlet.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_outlet_template.yml b/tests/integration/targets/v4.2/tasks/netbox_power_outlet_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_outlet_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_outlet_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_panel.yml b/tests/integration/targets/v4.2/tasks/netbox_power_panel.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_panel.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_panel.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_port.yml b/tests/integration/targets/v4.2/tasks/netbox_power_port.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_port.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_port.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_power_port_template.yml b/tests/integration/targets/v4.2/tasks/netbox_power_port_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_power_port_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_power_port_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_prefix.yml b/tests/integration/targets/v4.2/tasks/netbox_prefix.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_prefix.yml rename to tests/integration/targets/v4.2/tasks/netbox_prefix.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_provider.yml b/tests/integration/targets/v4.2/tasks/netbox_provider.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_provider.yml rename to tests/integration/targets/v4.2/tasks/netbox_provider.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_provider_network.yml b/tests/integration/targets/v4.2/tasks/netbox_provider_network.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_provider_network.yml rename to tests/integration/targets/v4.2/tasks/netbox_provider_network.yml diff --git a/tests/integration/targets/v3.6/tasks/netbox_rack.yml b/tests/integration/targets/v4.2/tasks/netbox_rack.yml similarity index 97% rename from tests/integration/targets/v3.6/tasks/netbox_rack.yml rename to tests/integration/targets/v4.2/tasks/netbox_rack.yml index 5dc05c3a1..59d97fa52 100644 --- a/tests/integration/targets/v3.6/tasks/netbox_rack.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_rack.yml @@ -119,7 +119,7 @@ - test_five['diff']['after']['status'] == "available" - test_five['diff']['after']['tenant'] == 1 - test_five['diff']['after']['tags'][0] == 4 - - test_five['diff']['after']['type'] == "2-post-frame" + - test_five['diff']['after']['form_factor'] == "2-post-frame" - test_five['diff']['after']['u_height'] == 48 - test_five['diff']['after']['width'] == 23 - test_five['rack']['name'] == "Test rack one" @@ -136,7 +136,7 @@ - test_five['rack']['status'] == "available" - test_five['rack']['tenant'] == 1 - test_five['rack']['tags'][0] == 4 - - test_five['rack']['type'] == "2-post-frame" + - test_five['rack']['form_factor'] == "2-post-frame" - test_five['rack']['u_height'] == 48 - test_five['rack']['width'] == 23 - test_five['msg'] == "rack Test rack one updated" @@ -185,7 +185,7 @@ - test_six['rack']['status'] == "available" - test_six['rack']['tenant'] == 1 - test_six['rack']['tags'][0] == 4 - - test_six['rack']['type'] == "2-post-frame" + - test_six['rack']['form_factor'] == "2-post-frame" - test_six['rack']['u_height'] == 48 - test_six['rack']['width'] == 23 diff --git a/tests/integration/targets/v3.5/tasks/netbox_rack_group.yml b/tests/integration/targets/v4.2/tasks/netbox_rack_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_rack_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_rack_group.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_rack_role.yml b/tests/integration/targets/v4.2/tasks/netbox_rack_role.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_rack_role.yml rename to tests/integration/targets/v4.2/tasks/netbox_rack_role.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_rear_port.yml b/tests/integration/targets/v4.2/tasks/netbox_rear_port.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_rear_port.yml rename to tests/integration/targets/v4.2/tasks/netbox_rear_port.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_rear_port_template.yml b/tests/integration/targets/v4.2/tasks/netbox_rear_port_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_rear_port_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_rear_port_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_region.yml b/tests/integration/targets/v4.2/tasks/netbox_region.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_region.yml rename to tests/integration/targets/v4.2/tasks/netbox_region.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_rir.yml b/tests/integration/targets/v4.2/tasks/netbox_rir.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_rir.yml rename to tests/integration/targets/v4.2/tasks/netbox_rir.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_route_target.yml b/tests/integration/targets/v4.2/tasks/netbox_route_target.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_route_target.yml rename to tests/integration/targets/v4.2/tasks/netbox_route_target.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_service.yml b/tests/integration/targets/v4.2/tasks/netbox_service.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_service.yml rename to tests/integration/targets/v4.2/tasks/netbox_service.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_service_template.yml b/tests/integration/targets/v4.2/tasks/netbox_service_template.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_service_template.yml rename to tests/integration/targets/v4.2/tasks/netbox_service_template.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_site.yml b/tests/integration/targets/v4.2/tasks/netbox_site.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_site.yml rename to tests/integration/targets/v4.2/tasks/netbox_site.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_site_group.yml b/tests/integration/targets/v4.2/tasks/netbox_site_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_site_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_site_group.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_tag.yml b/tests/integration/targets/v4.2/tasks/netbox_tag.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_tag.yml rename to tests/integration/targets/v4.2/tasks/netbox_tag.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_tenant.yml b/tests/integration/targets/v4.2/tasks/netbox_tenant.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_tenant.yml rename to tests/integration/targets/v4.2/tasks/netbox_tenant.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_tenant_group.yml b/tests/integration/targets/v4.2/tasks/netbox_tenant_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_tenant_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_tenant_group.yml diff --git a/tests/integration/targets/v4.2/tasks/netbox_token.yml b/tests/integration/targets/v4.2/tasks/netbox_token.yml new file mode 100644 index 000000000..a602883fe --- /dev/null +++ b/tests/integration/targets/v4.2/tasks/netbox_token.yml @@ -0,0 +1,104 @@ +--- +## +## +### NETBOX_PERMISSION +## +## +- name: "TOKEN: Set up user" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword2 + state: present + +- name: "TOKEN 1: Necessary info creation" + netbox.netbox.netbox_token: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + user: TestUser + key: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + state: present + register: test_one + +- name: "TOKEN 1: ASSERT - Necessary info creation" + ansible.builtin.assert: + that: + - test_one is changed + - test_one['diff']['before']['state'] == "absent" + - test_one['diff']['after']['state'] == "present" + - test_one['token']['user'] == 3 + - test_one['msg'] == "token ******** created" + +- name: "TOKEN 2: Create duplicate" + netbox.netbox.netbox_token: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + user: TestUser + key: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + state: present + register: test_two + +- name: "TOKEN 2: ASSERT - Create duplicate" + ansible.builtin.assert: + that: + - not test_two['changed'] + - test_two['msg'] == "token ******** already exists" + +- name: "TOKEN 3: Update" + netbox.netbox.netbox_token: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + user: TestUser + key: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + description: The test token + write_enabled: false + expires: 2024-08-26T14:49:01.345000+00:00 + state: present + register: test_three + +- name: "TOKEN 3: ASSERT - Update" + ansible.builtin.assert: + that: + - test_three is changed + - test_three['token']['description'] == "The test token" + - test_three['token']['write_enabled'] == false + - test_three['token']['expires'] == "2024-08-26T14:49:01.345000+00:00" + - test_three['msg'] == "token ******** updated" + +- name: "TOKEN 4: Delete" + netbox.netbox.netbox_token: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + key: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + state: absent + register: test_four + +- name: "TOKEN 4: ASSERT - Delete" + ansible.builtin.assert: + that: + - test_four is changed + - test_four['diff']['before']['state'] == "present" + - test_four['diff']['after']['state'] == "absent" + - test_four['msg'] == "token ******** deleted" + +- name: "TOKEN 5: ASSERT - Delete non existing" + netbox.netbox.netbox_token: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + key: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + state: absent + register: test_five + +- name: "TOKEN 5: ASSERT - Delete non existing" + ansible.builtin.assert: + that: + - not test_five['changed'] + - test_five['token'] == None + - test_five['msg'] == "token ******** already absent" diff --git a/tests/integration/targets/v3.7/tasks/netbox_tunnel.yml b/tests/integration/targets/v4.2/tasks/netbox_tunnel.yml similarity index 100% rename from tests/integration/targets/v3.7/tasks/netbox_tunnel.yml rename to tests/integration/targets/v4.2/tasks/netbox_tunnel.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_tunnel_group.yml b/tests/integration/targets/v4.2/tasks/netbox_tunnel_group.yml similarity index 97% rename from tests/integration/targets/v3.7/tasks/netbox_tunnel_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_tunnel_group.yml index 56a2ee154..918147341 100644 --- a/tests/integration/targets/v3.7/tasks/netbox_tunnel_group.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_tunnel_group.yml @@ -59,7 +59,6 @@ - test_three['diff']['after']['description'] == "Test Description" - test_three['diff']['after']['tags'][0] == 4 - test_three['tunnel_group']['name'] == "Test Tunnel Group" - - test_three['tunnel_group']['slug'] == "test-tunnel-group" - test_three['tunnel_group']['description'] == "Test Description" - test_three['tunnel_group']['tags'][0] == 4 - test_three['msg'] == "tunnel_group Test Tunnel Group updated" diff --git a/tests/integration/targets/v4.2/tasks/netbox_user.yml b/tests/integration/targets/v4.2/tasks/netbox_user.yml new file mode 100644 index 000000000..360ba6c31 --- /dev/null +++ b/tests/integration/targets/v4.2/tasks/netbox_user.yml @@ -0,0 +1,105 @@ +--- +## +## +### NETBOX_USER +## +## +- name: "USER 1: Necessary info creation" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword1 + state: present + register: test_one + +- name: "USESR 1: ASSERT - Necessary info creation" + ansible.builtin.assert: + that: + - test_one is changed + - test_one['diff']['before']['state'] == "absent" + - test_one['diff']['after']['state'] == "present" + - test_one['user']['username'] == "TestUser" + - test_one['user']['display'] == "TestUser" + - test_one['msg'] == "user TestUser created" + +- name: "USER 2: Update password" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword2 + email: my@user.com + state: present + register: test_two + +- name: "USER 2: ASSERT - Update password" + ansible.builtin.assert: + that: + - test_two['changed'] + - test_two['user']['username'] == "TestUser" + - test_two['msg'] == "user TestUser updated" + +- name: "USER 3: Update" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword1 + email: test@user.com + first_name: Test + last_name: User + is_active: false + is_staff: true + state: present + register: test_three + +- name: "USER 3: ASSERT - Update" + ansible.builtin.assert: + that: + - test_three is changed + - test_three['diff']['after']['first_name'] == "Test" + - test_three['diff']['after']['last_name'] == "User" + - test_three['user']['username'] == "TestUser" + - test_three['user']['email'] == "test@user.com" + - test_three['user']['first_name'] == "Test" + - test_three['user']['last_name'] == "User" + - test_three['user']['is_active'] == False + - test_three['user']['is_staff'] == True + - test_three['msg'] == "user TestUser updated" + +- name: "USER 4: Delete" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + state: absent + register: test_four + +- name: "USER 4: ASSERT - Delete" + ansible.builtin.assert: + that: + - test_four is changed + - test_four['diff']['before']['state'] == "present" + - test_four['diff']['after']['state'] == "absent" + - test_four['msg'] == "user TestUser deleted" + +- name: "USER 5: ASSERT - Delete non existing" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + state: absent + register: test_five + +- name: "USER 5: ASSERT - Delete non existing`" + ansible.builtin.assert: + that: + - not test_five['changed'] + - test_five['user'] == None + - test_five['msg'] == "user TestUser already absent" diff --git a/tests/integration/targets/v4.2/tasks/netbox_user_group.yml b/tests/integration/targets/v4.2/tasks/netbox_user_group.yml new file mode 100644 index 000000000..03dfbe5e0 --- /dev/null +++ b/tests/integration/targets/v4.2/tasks/netbox_user_group.yml @@ -0,0 +1,127 @@ +--- +## +## +### NETBOX_USER_GROUP +## +## +- name: "USER_GROUP 1: Necessary info creation" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + state: present + register: test_one + +- name: "USER_GROUP 1: ASSERT - Necessary info creation" + ansible.builtin.assert: + that: + - test_one is changed + - test_one['diff']['before']['state'] == "absent" + - test_one['diff']['after']['state'] == "present" + - test_one['user_group']['name'] == "Test User Group" + - test_one['msg'] == "user_group Test User Group created" + +- name: "USER_GROUP 2: Create duplicate" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + state: present + register: test_two + +- name: "USER_GROUP 2: ASSERT - Create duplicate" + ansible.builtin.assert: + that: + - not test_two['changed'] + - test_two['user_group']['name'] == "Test User Group" + - test_two['msg'] == "user_group Test User Group already exists" + +- name: "USER_GROUP 3: Update" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + description: The test group + state: present + register: test_three + +- name: "USER_GROUP 3: ASSERT - Update" + ansible.builtin.assert: + that: + - test_three is changed + - test_three['diff']['after']['description'] == "The test group" + - test_three['user_group']['name'] == "Test User Group" + - test_three['user_group']['description'] == "The test group" + - test_three['msg'] == "user_group Test User Group updated" + +- name: "USER_GROUP 4: Create second group" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group 2 + state: present + register: test_four + +- name: "USER_GROUP 4: ASSERT - Necessary info creation" + ansible.builtin.assert: + that: + - test_four is changed + - test_four['diff']['before']['state'] == "absent" + - test_four['diff']['after']['state'] == "present" + - test_four['user_group']['name'] == "Test User Group 2" + - test_four['msg'] == "user_group Test User Group 2 created" + +- name: "USER_GROUP 5: Add user to group" + netbox.netbox.netbox_user: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + username: TestUser + password: TestPassword2 + groups: + - Test User Group + state: present + register: test_five + +- name: "USER_GROUP 5: ASSERT - Add user to group" + ansible.builtin.assert: + that: + - test_five is changed + - test_five['user']['groups'] == [1] + +- name: "USER_GROUP 6: Delete" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + state: absent + register: test_six + +- name: "USER_GROUP 6: ASSERT - Delete" + ansible.builtin.assert: + that: + - test_six is changed + - test_six['diff']['before']['state'] == "present" + - test_six['diff']['after']['state'] == "absent" + - test_six['msg'] == "user_group Test User Group deleted" + +- name: "USER_GROUP 6: ASSERT - Delete non existing" + netbox.netbox.netbox_user_group: + netbox_url: http://localhost:32768 + netbox_token: "0123456789abcdef0123456789abcdef01234567" + data: + name: Test User Group + state: absent + register: test_seven + +- name: "USER_GROUP 7: ASSERT - Delete non existing`" + ansible.builtin.assert: + that: + - not test_seven['changed'] + - test_seven['user_group'] == None + - test_seven['msg'] == "user_group Test User Group already absent" diff --git a/tests/integration/targets/v3.5/tasks/netbox_virtual_chassis.yml b/tests/integration/targets/v4.2/tasks/netbox_virtual_chassis.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_virtual_chassis.yml rename to tests/integration/targets/v4.2/tasks/netbox_virtual_chassis.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_virtual_disk.yml b/tests/integration/targets/v4.2/tasks/netbox_virtual_disk.yml similarity index 100% rename from tests/integration/targets/v3.7/tasks/netbox_virtual_disk.yml rename to tests/integration/targets/v4.2/tasks/netbox_virtual_disk.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_virtual_machine.yml b/tests/integration/targets/v4.2/tasks/netbox_virtual_machine.yml similarity index 96% rename from tests/integration/targets/v3.7/tasks/netbox_virtual_machine.yml rename to tests/integration/targets/v4.2/tasks/netbox_virtual_machine.yml index 3fb0e4319..6ef7f1f47 100644 --- a/tests/integration/targets/v3.7/tasks/netbox_virtual_machine.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_virtual_machine.yml @@ -49,6 +49,7 @@ data: name: Test VM One cluster: Test Cluster + serial: 12345678 vcpus: 8.5 memory: 8 status: Planned @@ -66,6 +67,7 @@ - test_three['diff']['after']['memory'] == 8 - test_three['diff']['after']['status'] == "planned" - test_three['diff']['after']['role'] == 2 + - test_three['diff']['after']['serial'] == "12345678" - test_three['diff']['after']['tags'][0] == 4 - test_three['virtual_machine']['name'] == "Test VM One" - test_three['virtual_machine']['cluster'] == 1 @@ -73,6 +75,7 @@ - test_three['virtual_machine']['memory'] == 8 - test_three['virtual_machine']['status'] == "planned" - test_three['virtual_machine']['role'] == 2 + - test_three['virtual_machine']['serial'] == "12345678" - test_three['virtual_machine']['tags'][0] == 4 - test_three['msg'] == "virtual_machine Test VM One updated" diff --git a/tests/integration/targets/v3.5/tasks/netbox_vlan.yml b/tests/integration/targets/v4.2/tasks/netbox_vlan.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_vlan.yml rename to tests/integration/targets/v4.2/tasks/netbox_vlan.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_vlan_group.yml b/tests/integration/targets/v4.2/tasks/netbox_vlan_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_vlan_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_vlan_group.yml diff --git a/tests/integration/targets/v3.7/tasks/netbox_vm_interface.yml b/tests/integration/targets/v4.2/tasks/netbox_vm_interface.yml similarity index 97% rename from tests/integration/targets/v3.7/tasks/netbox_vm_interface.yml rename to tests/integration/targets/v4.2/tasks/netbox_vm_interface.yml index 653f31e0e..6ca36e1e5 100644 --- a/tests/integration/targets/v3.7/tasks/netbox_vm_interface.yml +++ b/tests/integration/targets/v4.2/tasks/netbox_vm_interface.yml @@ -122,13 +122,13 @@ description: Updated test100-vm Eth0 intf mode: Tagged # untagged_vlan: - # name: Wireless - # site: Test Site + # name: Wireless + # site: Test Site # tagged_vlans: - # - name: Data - # site: Test Site - # - name: VoIP - # site: Test Site + # - name: Data + # site: Test Site + # - name: VoIP + # site: Test Site tags: - Schnozzberry state: present diff --git a/tests/integration/targets/v3.5/tasks/netbox_vrf.yml b/tests/integration/targets/v4.2/tasks/netbox_vrf.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_vrf.yml rename to tests/integration/targets/v4.2/tasks/netbox_vrf.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_webhook.yml b/tests/integration/targets/v4.2/tasks/netbox_webhook.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_webhook.yml rename to tests/integration/targets/v4.2/tasks/netbox_webhook.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_wireless_lan.yml b/tests/integration/targets/v4.2/tasks/netbox_wireless_lan.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_wireless_lan.yml rename to tests/integration/targets/v4.2/tasks/netbox_wireless_lan.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_wireless_lan_group.yml b/tests/integration/targets/v4.2/tasks/netbox_wireless_lan_group.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_wireless_lan_group.yml rename to tests/integration/targets/v4.2/tasks/netbox_wireless_lan_group.yml diff --git a/tests/integration/targets/v3.5/tasks/netbox_wireless_link.yml b/tests/integration/targets/v4.2/tasks/netbox_wireless_link.yml similarity index 100% rename from tests/integration/targets/v3.5/tasks/netbox_wireless_link.yml rename to tests/integration/targets/v4.2/tasks/netbox_wireless_link.yml diff --git a/tests/netbox-docker/v3.6/docker-compose.override.yml b/tests/netbox-docker/v3.6/docker-compose.override.yml deleted file mode 100644 index 6b8d1f5cf..000000000 --- a/tests/netbox-docker/v3.6/docker-compose.override.yml +++ /dev/null @@ -1,25 +0,0 @@ ---- -version: "3.4" -services: - netbox-worker: &netbox-override - image: netboxcommunity/netbox:v3.6 - healthcheck: - start_period: 300s - timeout: 3s - interval: 15s - test: ps -aux | grep -v grep | grep -q rqworker || exit 1 - netbox: - <<: *netbox-override - ports: - - 32768:8080 - healthcheck: - start_period: 300s - timeout: 3s - interval: 15s - test: curl -f http://localhost:8080/api/ || exit 1 - environment: - SKIP_SUPERUSER: "false" - SUPERUSER_API_TOKEN: "0123456789abcdef0123456789abcdef01234567" - SUPERUSER_EMAIL: admin@localhost.com - SUPERUSER_NAME: admin - SUPERUSER_PASSWORD: admin diff --git a/tests/netbox-docker/v3.7/docker-compose.override.yml b/tests/netbox-docker/v3.7/docker-compose.override.yml deleted file mode 100644 index 916d5ea73..000000000 --- a/tests/netbox-docker/v3.7/docker-compose.override.yml +++ /dev/null @@ -1,25 +0,0 @@ ---- -version: "3.4" -services: - netbox-worker: &netbox-override - image: netboxcommunity/netbox:v3.7 - healthcheck: - start_period: 300s - timeout: 3s - interval: 15s - test: ps -aux | grep -v grep | grep -q rqworker || exit 1 - netbox: - <<: *netbox-override - ports: - - 32768:8080 - healthcheck: - start_period: 300s - timeout: 3s - interval: 15s - test: curl -f http://localhost:8080/api/ || exit 1 - environment: - SKIP_SUPERUSER: "false" - SUPERUSER_API_TOKEN: "0123456789abcdef0123456789abcdef01234567" - SUPERUSER_EMAIL: admin@localhost.com - SUPERUSER_NAME: admin - SUPERUSER_PASSWORD: admin diff --git a/tests/netbox-docker/v3.5/docker-compose.override.yml b/tests/netbox-docker/v4.2/docker-compose.override.yml similarity index 85% rename from tests/netbox-docker/v3.5/docker-compose.override.yml rename to tests/netbox-docker/v4.2/docker-compose.override.yml index d9831f94c..4eb446052 100644 --- a/tests/netbox-docker/v3.5/docker-compose.override.yml +++ b/tests/netbox-docker/v4.2/docker-compose.override.yml @@ -2,7 +2,7 @@ version: "3.4" services: netbox-worker: &netbox-override - image: netboxcommunity/netbox:v3.5 + image: netboxcommunity/netbox:v4.2 healthcheck: start_period: 300s timeout: 3s @@ -16,7 +16,7 @@ services: start_period: 300s timeout: 3s interval: 15s - test: curl -f http://localhost:8080/api/ || exit 1 + test: curl -f http://localhost:8080/login/ || exit 1 environment: SKIP_SUPERUSER: "false" SUPERUSER_API_TOKEN: "0123456789abcdef0123456789abcdef01234567"