Compare commits
30 Commits
master
...
developmen
| Author | SHA1 | Date | |
|---|---|---|---|
| ca9b87bb8d | |||
| 008d263f34 | |||
| 6b8ac7e0da | |||
| e1a026c720 | |||
| 60e2a1f478 | |||
| 6c1330d73e | |||
| 20b68c55a7 | |||
| 9b4e1ec793 | |||
| 18acc18cad | |||
| 184dd56b17 | |||
| b8190b80b3 | |||
| 7c7eea860e | |||
| 2667a53055 | |||
| 6ed608bc44 | |||
| 406b900360 | |||
| 218d61c841 | |||
| cc19c358e7 | |||
| 744bde6cb9 | |||
| f74210a387 | |||
| 5fe33559a3 | |||
| 36a3d99fbe | |||
| 2482792166 | |||
| c60a75b83a | |||
| 85ac14b44a | |||
| c2008abb2e | |||
| 78536f8a5d | |||
| 12edf4b229 | |||
| a5b8e80c57 | |||
| 8db8bb0459 | |||
| 42ad725fe8 |
34
.drone.yml
Normal file
34
.drone.yml
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
name: provision devices
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: install Ansible and execute playbook
|
||||||
|
image: python:latest
|
||||||
|
commands:
|
||||||
|
- pip install pipenv
|
||||||
|
- python3 -m pipenv install --system
|
||||||
|
- ansible-playbook site.yml -i inventory.yml
|
||||||
|
when:
|
||||||
|
branch:
|
||||||
|
- master
|
||||||
|
event:
|
||||||
|
- push
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
name: run Ansible check
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: install Ansible and execute playbook with Check flag
|
||||||
|
image: python:latest
|
||||||
|
commands:
|
||||||
|
- pip install pipenv
|
||||||
|
- python3 -m pipenv install --system
|
||||||
|
- ansible-playbook site.yml -i inventory.yml --check
|
||||||
|
when:
|
||||||
|
branch:
|
||||||
|
- development
|
||||||
|
event:
|
||||||
|
- push
|
||||||
13
Pipfile
Normal file
13
Pipfile
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[[source]]
|
||||||
|
name = "pypi"
|
||||||
|
url = "https://pypi.org/simple"
|
||||||
|
verify_ssl = true
|
||||||
|
|
||||||
|
[dev-packages]
|
||||||
|
|
||||||
|
[packages]
|
||||||
|
ansible = "*"
|
||||||
|
paramiko = "*"
|
||||||
|
|
||||||
|
[requires]
|
||||||
|
python_version = "3.8"
|
||||||
217
Pipfile.lock
generated
Normal file
217
Pipfile.lock
generated
Normal file
@ -0,0 +1,217 @@
|
|||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hash": {
|
||||||
|
"sha256": "6efab1950b21da263a06fde5d4a34cbff657a42b9086eb278cec7b5689701b6b"
|
||||||
|
},
|
||||||
|
"pipfile-spec": 6,
|
||||||
|
"requires": {
|
||||||
|
"python_version": "3.8"
|
||||||
|
},
|
||||||
|
"sources": [
|
||||||
|
{
|
||||||
|
"name": "pypi",
|
||||||
|
"url": "https://pypi.org/simple",
|
||||||
|
"verify_ssl": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"default": {
|
||||||
|
"ansible": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:7222ce925536a25b2912364e13b03a3e21dbf2f96799ebff304f48509324de7b"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==2.9.7"
|
||||||
|
},
|
||||||
|
"bcrypt": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0258f143f3de96b7c14f762c770f5fc56ccd72f8a1857a451c1cd9a655d9ac89",
|
||||||
|
"sha256:0b0069c752ec14172c5f78208f1863d7ad6755a6fae6fe76ec2c80d13be41e42",
|
||||||
|
"sha256:19a4b72a6ae5bb467fea018b825f0a7d917789bcfe893e53f15c92805d187294",
|
||||||
|
"sha256:5432dd7b34107ae8ed6c10a71b4397f1c853bd39a4d6ffa7e35f40584cffd161",
|
||||||
|
"sha256:6305557019906466fc42dbc53b46da004e72fd7a551c044a827e572c82191752",
|
||||||
|
"sha256:69361315039878c0680be456640f8705d76cb4a3a3fe1e057e0f261b74be4b31",
|
||||||
|
"sha256:6fe49a60b25b584e2f4ef175b29d3a83ba63b3a4df1b4c0605b826668d1b6be5",
|
||||||
|
"sha256:74a015102e877d0ccd02cdeaa18b32aa7273746914a6c5d0456dd442cb65b99c",
|
||||||
|
"sha256:763669a367869786bb4c8fcf731f4175775a5b43f070f50f46f0b59da45375d0",
|
||||||
|
"sha256:8b10acde4e1919d6015e1df86d4c217d3b5b01bb7744c36113ea43d529e1c3de",
|
||||||
|
"sha256:9fe92406c857409b70a38729dbdf6578caf9228de0aef5bc44f859ffe971a39e",
|
||||||
|
"sha256:a190f2a5dbbdbff4b74e3103cef44344bc30e61255beb27310e2aec407766052",
|
||||||
|
"sha256:a595c12c618119255c90deb4b046e1ca3bcfad64667c43d1166f2b04bc72db09",
|
||||||
|
"sha256:c9457fa5c121e94a58d6505cadca8bed1c64444b83b3204928a866ca2e599105",
|
||||||
|
"sha256:cb93f6b2ab0f6853550b74e051d297c27a638719753eb9ff66d1e4072be67133",
|
||||||
|
"sha256:ce4e4f0deb51d38b1611a27f330426154f2980e66582dc5f438aad38b5f24fc1",
|
||||||
|
"sha256:d7bdc26475679dd073ba0ed2766445bb5b20ca4793ca0db32b399dccc6bc84b7",
|
||||||
|
"sha256:ff032765bb8716d9387fd5376d987a937254b0619eff0972779515b5c98820bc"
|
||||||
|
],
|
||||||
|
"version": "==3.1.7"
|
||||||
|
},
|
||||||
|
"cffi": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:001bf3242a1bb04d985d63e138230802c6c8d4db3668fb545fb5005ddf5bb5ff",
|
||||||
|
"sha256:00789914be39dffba161cfc5be31b55775de5ba2235fe49aa28c148236c4e06b",
|
||||||
|
"sha256:028a579fc9aed3af38f4892bdcc7390508adabc30c6af4a6e4f611b0c680e6ac",
|
||||||
|
"sha256:14491a910663bf9f13ddf2bc8f60562d6bc5315c1f09c704937ef17293fb85b0",
|
||||||
|
"sha256:1cae98a7054b5c9391eb3249b86e0e99ab1e02bb0cc0575da191aedadbdf4384",
|
||||||
|
"sha256:2089ed025da3919d2e75a4d963d008330c96751127dd6f73c8dc0c65041b4c26",
|
||||||
|
"sha256:2d384f4a127a15ba701207f7639d94106693b6cd64173d6c8988e2c25f3ac2b6",
|
||||||
|
"sha256:337d448e5a725bba2d8293c48d9353fc68d0e9e4088d62a9571def317797522b",
|
||||||
|
"sha256:399aed636c7d3749bbed55bc907c3288cb43c65c4389964ad5ff849b6370603e",
|
||||||
|
"sha256:3b911c2dbd4f423b4c4fcca138cadde747abdb20d196c4a48708b8a2d32b16dd",
|
||||||
|
"sha256:3d311bcc4a41408cf5854f06ef2c5cab88f9fded37a3b95936c9879c1640d4c2",
|
||||||
|
"sha256:62ae9af2d069ea2698bf536dcfe1e4eed9090211dbaafeeedf5cb6c41b352f66",
|
||||||
|
"sha256:66e41db66b47d0d8672d8ed2708ba91b2f2524ece3dee48b5dfb36be8c2f21dc",
|
||||||
|
"sha256:675686925a9fb403edba0114db74e741d8181683dcf216be697d208857e04ca8",
|
||||||
|
"sha256:7e63cbcf2429a8dbfe48dcc2322d5f2220b77b2e17b7ba023d6166d84655da55",
|
||||||
|
"sha256:8a6c688fefb4e1cd56feb6c511984a6c4f7ec7d2a1ff31a10254f3c817054ae4",
|
||||||
|
"sha256:8c0ffc886aea5df6a1762d0019e9cb05f825d0eec1f520c51be9d198701daee5",
|
||||||
|
"sha256:95cd16d3dee553f882540c1ffe331d085c9e629499ceadfbda4d4fde635f4b7d",
|
||||||
|
"sha256:99f748a7e71ff382613b4e1acc0ac83bf7ad167fb3802e35e90d9763daba4d78",
|
||||||
|
"sha256:b8c78301cefcf5fd914aad35d3c04c2b21ce8629b5e4f4e45ae6812e461910fa",
|
||||||
|
"sha256:c420917b188a5582a56d8b93bdd8e0f6eca08c84ff623a4c16e809152cd35793",
|
||||||
|
"sha256:c43866529f2f06fe0edc6246eb4faa34f03fe88b64a0a9a942561c8e22f4b71f",
|
||||||
|
"sha256:cab50b8c2250b46fe738c77dbd25ce017d5e6fb35d3407606e7a4180656a5a6a",
|
||||||
|
"sha256:cef128cb4d5e0b3493f058f10ce32365972c554572ff821e175dbc6f8ff6924f",
|
||||||
|
"sha256:cf16e3cf6c0a5fdd9bc10c21687e19d29ad1fe863372b5543deaec1039581a30",
|
||||||
|
"sha256:e56c744aa6ff427a607763346e4170629caf7e48ead6921745986db3692f987f",
|
||||||
|
"sha256:e577934fc5f8779c554639376beeaa5657d54349096ef24abe8c74c5d9c117c3",
|
||||||
|
"sha256:f2b0fa0c01d8a0c7483afd9f31d7ecf2d71760ca24499c8697aeb5ca37dc090c"
|
||||||
|
],
|
||||||
|
"version": "==1.14.0"
|
||||||
|
},
|
||||||
|
"cryptography": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:091d31c42f444c6f519485ed528d8b451d1a0c7bf30e8ca583a0cac44b8a0df6",
|
||||||
|
"sha256:18452582a3c85b96014b45686af264563e3e5d99d226589f057ace56196ec78b",
|
||||||
|
"sha256:1dfa985f62b137909496e7fc182dac687206d8d089dd03eaeb28ae16eec8e7d5",
|
||||||
|
"sha256:1e4014639d3d73fbc5ceff206049c5a9a849cefd106a49fa7aaaa25cc0ce35cf",
|
||||||
|
"sha256:22e91636a51170df0ae4dcbd250d318fd28c9f491c4e50b625a49964b24fe46e",
|
||||||
|
"sha256:3b3eba865ea2754738616f87292b7f29448aec342a7c720956f8083d252bf28b",
|
||||||
|
"sha256:651448cd2e3a6bc2bb76c3663785133c40d5e1a8c1a9c5429e4354201c6024ae",
|
||||||
|
"sha256:726086c17f94747cedbee6efa77e99ae170caebeb1116353c6cf0ab67ea6829b",
|
||||||
|
"sha256:844a76bc04472e5135b909da6aed84360f522ff5dfa47f93e3dd2a0b84a89fa0",
|
||||||
|
"sha256:88c881dd5a147e08d1bdcf2315c04972381d026cdb803325c03fe2b4a8ed858b",
|
||||||
|
"sha256:96c080ae7118c10fcbe6229ab43eb8b090fccd31a09ef55f83f690d1ef619a1d",
|
||||||
|
"sha256:a0c30272fb4ddda5f5ffc1089d7405b7a71b0b0f51993cb4e5dbb4590b2fc229",
|
||||||
|
"sha256:bb1f0281887d89617b4c68e8db9a2c42b9efebf2702a3c5bf70599421a8623e3",
|
||||||
|
"sha256:c447cf087cf2dbddc1add6987bbe2f767ed5317adb2d08af940db517dd704365",
|
||||||
|
"sha256:c4fd17d92e9d55b84707f4fd09992081ba872d1a0c610c109c18e062e06a2e55",
|
||||||
|
"sha256:d0d5aeaedd29be304848f1c5059074a740fa9f6f26b84c5b63e8b29e73dfc270",
|
||||||
|
"sha256:daf54a4b07d67ad437ff239c8a4080cfd1cc7213df57d33c97de7b4738048d5e",
|
||||||
|
"sha256:e993468c859d084d5579e2ebee101de8f5a27ce8e2159959b6673b418fd8c785",
|
||||||
|
"sha256:f118a95c7480f5be0df8afeb9a11bd199aa20afab7a96bcf20409b411a3a85f0"
|
||||||
|
],
|
||||||
|
"version": "==2.9.2"
|
||||||
|
},
|
||||||
|
"jinja2": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0",
|
||||||
|
"sha256:f0a4641d3cf955324a89c04f3d94663aa4d638abe8f733ecd3582848e1c37035"
|
||||||
|
],
|
||||||
|
"version": "==2.11.2"
|
||||||
|
},
|
||||||
|
"markupsafe": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473",
|
||||||
|
"sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161",
|
||||||
|
"sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235",
|
||||||
|
"sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5",
|
||||||
|
"sha256:13d3144e1e340870b25e7b10b98d779608c02016d5184cfb9927a9f10c689f42",
|
||||||
|
"sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff",
|
||||||
|
"sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b",
|
||||||
|
"sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1",
|
||||||
|
"sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e",
|
||||||
|
"sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183",
|
||||||
|
"sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66",
|
||||||
|
"sha256:596510de112c685489095da617b5bcbbac7dd6384aeebeda4df6025d0256a81b",
|
||||||
|
"sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1",
|
||||||
|
"sha256:6788b695d50a51edb699cb55e35487e430fa21f1ed838122d722e0ff0ac5ba15",
|
||||||
|
"sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1",
|
||||||
|
"sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e",
|
||||||
|
"sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b",
|
||||||
|
"sha256:7c1699dfe0cf8ff607dbdcc1e9b9af1755371f92a68f706051cc8c37d447c905",
|
||||||
|
"sha256:88e5fcfb52ee7b911e8bb6d6aa2fd21fbecc674eadd44118a9cc3863f938e735",
|
||||||
|
"sha256:8defac2f2ccd6805ebf65f5eeb132adcf2ab57aa11fdf4c0dd5169a004710e7d",
|
||||||
|
"sha256:98c7086708b163d425c67c7a91bad6e466bb99d797aa64f965e9d25c12111a5e",
|
||||||
|
"sha256:9add70b36c5666a2ed02b43b335fe19002ee5235efd4b8a89bfcf9005bebac0d",
|
||||||
|
"sha256:9bf40443012702a1d2070043cb6291650a0841ece432556f784f004937f0f32c",
|
||||||
|
"sha256:ade5e387d2ad0d7ebf59146cc00c8044acbd863725f887353a10df825fc8ae21",
|
||||||
|
"sha256:b00c1de48212e4cc9603895652c5c410df699856a2853135b3967591e4beebc2",
|
||||||
|
"sha256:b1282f8c00509d99fef04d8ba936b156d419be841854fe901d8ae224c59f0be5",
|
||||||
|
"sha256:b2051432115498d3562c084a49bba65d97cf251f5a331c64a12ee7e04dacc51b",
|
||||||
|
"sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6",
|
||||||
|
"sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f",
|
||||||
|
"sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f",
|
||||||
|
"sha256:cdb132fc825c38e1aeec2c8aa9338310d29d337bebbd7baa06889d09a60a1fa2",
|
||||||
|
"sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7",
|
||||||
|
"sha256:e8313f01ba26fbbe36c7be1966a7b7424942f670f38e666995b88d012765b9be"
|
||||||
|
],
|
||||||
|
"version": "==1.1.1"
|
||||||
|
},
|
||||||
|
"paramiko": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:920492895db8013f6cc0179293147f830b8c7b21fdfc839b6bad760c27459d9f",
|
||||||
|
"sha256:9c980875fa4d2cb751604664e9a2d0f69096643f5be4db1b99599fe114a97b2f"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==2.7.1"
|
||||||
|
},
|
||||||
|
"pycparser": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0",
|
||||||
|
"sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"
|
||||||
|
],
|
||||||
|
"version": "==2.20"
|
||||||
|
},
|
||||||
|
"pynacl": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:05c26f93964373fc0abe332676cb6735f0ecad27711035b9472751faa8521255",
|
||||||
|
"sha256:0c6100edd16fefd1557da078c7a31e7b7d7a52ce39fdca2bec29d4f7b6e7600c",
|
||||||
|
"sha256:0d0a8171a68edf51add1e73d2159c4bc19fc0718e79dec51166e940856c2f28e",
|
||||||
|
"sha256:1c780712b206317a746ace34c209b8c29dbfd841dfbc02aa27f2084dd3db77ae",
|
||||||
|
"sha256:2424c8b9f41aa65bbdbd7a64e73a7450ebb4aa9ddedc6a081e7afcc4c97f7621",
|
||||||
|
"sha256:2d23c04e8d709444220557ae48ed01f3f1086439f12dbf11976e849a4926db56",
|
||||||
|
"sha256:30f36a9c70450c7878053fa1344aca0145fd47d845270b43a7ee9192a051bf39",
|
||||||
|
"sha256:37aa336a317209f1bb099ad177fef0da45be36a2aa664507c5d72015f956c310",
|
||||||
|
"sha256:4943decfc5b905748f0756fdd99d4f9498d7064815c4cf3643820c9028b711d1",
|
||||||
|
"sha256:53126cd91356342dcae7e209f840212a58dcf1177ad52c1d938d428eebc9fee5",
|
||||||
|
"sha256:57ef38a65056e7800859e5ba9e6091053cd06e1038983016effaffe0efcd594a",
|
||||||
|
"sha256:5bd61e9b44c543016ce1f6aef48606280e45f892a928ca7068fba30021e9b786",
|
||||||
|
"sha256:6482d3017a0c0327a49dddc8bd1074cc730d45db2ccb09c3bac1f8f32d1eb61b",
|
||||||
|
"sha256:7d3ce02c0784b7cbcc771a2da6ea51f87e8716004512493a2b69016326301c3b",
|
||||||
|
"sha256:a14e499c0f5955dcc3991f785f3f8e2130ed504fa3a7f44009ff458ad6bdd17f",
|
||||||
|
"sha256:a39f54ccbcd2757d1d63b0ec00a00980c0b382c62865b61a505163943624ab20",
|
||||||
|
"sha256:aabb0c5232910a20eec8563503c153a8e78bbf5459490c49ab31f6adf3f3a415",
|
||||||
|
"sha256:bd4ecb473a96ad0f90c20acba4f0bf0df91a4e03a1f4dd6a4bdc9ca75aa3a715",
|
||||||
|
"sha256:bf459128feb543cfca16a95f8da31e2e65e4c5257d2f3dfa8c0c1031139c9c92",
|
||||||
|
"sha256:e2da3c13307eac601f3de04887624939aca8ee3c9488a0bb0eca4fb9401fc6b1",
|
||||||
|
"sha256:f67814c38162f4deb31f68d590771a29d5ae3b1bd64b75cf232308e5c74777e0"
|
||||||
|
],
|
||||||
|
"version": "==1.3.0"
|
||||||
|
},
|
||||||
|
"pyyaml": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:06a0d7ba600ce0b2d2fe2e78453a470b5a6e000a985dd4a4e54e436cc36b0e97",
|
||||||
|
"sha256:240097ff019d7c70a4922b6869d8a86407758333f02203e0fc6ff79c5dcede76",
|
||||||
|
"sha256:4f4b913ca1a7319b33cfb1369e91e50354d6f07a135f3b901aca02aa95940bd2",
|
||||||
|
"sha256:69f00dca373f240f842b2931fb2c7e14ddbacd1397d57157a9b005a6a9942648",
|
||||||
|
"sha256:73f099454b799e05e5ab51423c7bcf361c58d3206fa7b0d555426b1f4d9a3eaf",
|
||||||
|
"sha256:74809a57b329d6cc0fdccee6318f44b9b8649961fa73144a98735b0aaf029f1f",
|
||||||
|
"sha256:7739fc0fa8205b3ee8808aea45e968bc90082c10aef6ea95e855e10abf4a37b2",
|
||||||
|
"sha256:95f71d2af0ff4227885f7a6605c37fd53d3a106fcab511b8860ecca9fcf400ee",
|
||||||
|
"sha256:b8eac752c5e14d3eca0e6dd9199cd627518cb5ec06add0de9d32baeee6fe645d",
|
||||||
|
"sha256:cc8955cfbfc7a115fa81d85284ee61147059a753344bc51098f3ccd69b0d7e0c",
|
||||||
|
"sha256:d13155f591e6fcc1ec3b30685d50bf0711574e2c0dfffd7644babf8b5102ca1a"
|
||||||
|
],
|
||||||
|
"version": "==5.3.1"
|
||||||
|
},
|
||||||
|
"six": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:236bdbdce46e6e6a3d61a337c0f8b763ca1e8717c03b369e87a7ec7ce1319c0a",
|
||||||
|
"sha256:8f3cd2e254d8f793e7f3d6d9df77b92252b52637291d0f0da013c76ea2724b6c"
|
||||||
|
],
|
||||||
|
"version": "==1.14.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"develop": {}
|
||||||
|
}
|
||||||
@ -1,3 +1,6 @@
|
|||||||
# infrastructure
|
Master: [](https://drone.remmen.net/martijn/infrastructure)
|
||||||
|
Development: [](https://drone.remmen.net/martijn/infrastructure)
|
||||||
|
|
||||||
|
# Ansible infrastructure
|
||||||
|
|
||||||
Ansible playbooks
|
Ansible playbooks
|
||||||
2
ansible.cfg
Normal file
2
ansible.cfg
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
[defaults]
|
||||||
|
host_key_checking = False
|
||||||
9
group_vars/all.yml
Normal file
9
group_vars/all.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
ansible_connection: network_cli
|
||||||
|
ansible_network_os: ios
|
||||||
|
ansible_user: ansible
|
||||||
|
ansible_password: ansible
|
||||||
|
ansible_become: yes
|
||||||
|
ansible_become_method: enable
|
||||||
|
ansible_become_password: ansible
|
||||||
|
ansible_ssh_common_args: '-o KexAlgorithms=+diffie-hellman-group1-sha1 -o StrictHostKeyChecking=no -c aes256-cbc'
|
||||||
6
group_vars/switches.yml
Normal file
6
group_vars/switches.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
vlans:
|
||||||
|
- vlan_id: 10
|
||||||
|
name: Gast
|
||||||
|
|
||||||
|
- vlan_id: 15
|
||||||
|
name: Werknemers
|
||||||
46
host_vars/sw01.yml
Normal file
46
host_vars/sw01.yml
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
interfaces:
|
||||||
|
- name: FastEthernet0
|
||||||
|
description: Management port
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/1
|
||||||
|
description: Access port gast
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/2
|
||||||
|
description: Access port gast
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/3
|
||||||
|
description: Access port gast
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/4
|
||||||
|
description: Access port werknemer
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
l2_interfaces:
|
||||||
|
- name: GigabitEthernet1/0/1
|
||||||
|
access:
|
||||||
|
vlan: 10
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/2
|
||||||
|
access:
|
||||||
|
vlan: 10
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/3
|
||||||
|
access:
|
||||||
|
vlan: 10
|
||||||
|
|
||||||
|
- name: GigabitEthernet1/0/4
|
||||||
|
access:
|
||||||
|
vlan: 15
|
||||||
|
|
||||||
|
l3_interfaces:
|
||||||
|
- name: FastEthernet0
|
||||||
|
ipv4:
|
||||||
|
- address: 192.168.1.150/24
|
||||||
|
|
||||||
|
- name: Vlan10
|
||||||
|
ipv4:
|
||||||
|
- address: 10.10.10.1/24
|
||||||
6
inventory.yml
Normal file
6
inventory.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
all:
|
||||||
|
children:
|
||||||
|
switches:
|
||||||
|
hosts:
|
||||||
|
sw01:
|
||||||
|
ansible_host: 192.168.1.150
|
||||||
33
roles/common/tasks/main.yml
Normal file
33
roles/common/tasks/main.yml
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
- name: configure login banner
|
||||||
|
ios_banner:
|
||||||
|
banner: motd
|
||||||
|
text: "{{ banner }}"
|
||||||
|
|
||||||
|
- name: configure system attributes
|
||||||
|
ios_system:
|
||||||
|
hostname: "{{ inventory_hostname }}"
|
||||||
|
name_servers: "{{ dns_servers }}"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: configure local users
|
||||||
|
ios_user:
|
||||||
|
users: "{{ users }}"
|
||||||
|
update_password: always
|
||||||
|
|
||||||
|
# - name: configure vty lines
|
||||||
|
# ios_config:
|
||||||
|
# before: "line vty 0 4"
|
||||||
|
# lines:
|
||||||
|
# - login local
|
||||||
|
# - transport input ssh
|
||||||
|
|
||||||
|
- name: configure http management
|
||||||
|
ios_config:
|
||||||
|
lines:
|
||||||
|
- no ip http server
|
||||||
|
- no ip http secure-server
|
||||||
|
|
||||||
|
- name: configure interfaces
|
||||||
|
ios_interfaces:
|
||||||
|
config: "{{ hostvars[inventory_hostname]['interfaces'] }}"
|
||||||
|
state: overridden
|
||||||
14
roles/common/vars/main.yml
Normal file
14
roles/common/vars/main.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
banner: |
|
||||||
|
Welcome to the party switch :)
|
||||||
|
|
||||||
|
dns_servers:
|
||||||
|
- 8.8.8.8
|
||||||
|
- 8.8.4.4
|
||||||
|
|
||||||
|
users:
|
||||||
|
- name: martijn
|
||||||
|
configured_password: martijn
|
||||||
|
privilege: 15
|
||||||
|
- name: ansible
|
||||||
|
configured_password: ansible
|
||||||
|
privilege: 15
|
||||||
9
roles/l2_interfaces/tasks/main.yml
Normal file
9
roles/l2_interfaces/tasks/main.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
- name: configure vlans
|
||||||
|
ios_vlans:
|
||||||
|
config: "{{ hostvars[inventory_hostname]['vlans'] }}"
|
||||||
|
state: overridden
|
||||||
|
|
||||||
|
- name: configure switchports
|
||||||
|
ios_l2_interfaces:
|
||||||
|
config: "{{ hostvars[inventory_hostname]['l2_interfaces'] }}"
|
||||||
|
state: overridden
|
||||||
4
roles/l3_interfaces/tasks/main.yml
Normal file
4
roles/l3_interfaces/tasks/main.yml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
- name: configure l3 interfaces
|
||||||
|
ios_l3_interfaces:
|
||||||
|
config: "{{ hostvars[inventory_hostname]['l3_interfaces'] }}"
|
||||||
|
state: overridden
|
||||||
6
switches.yml
Normal file
6
switches.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
- hosts: switches
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- common
|
||||||
|
- l2_interfaces
|
||||||
|
- l3_interfaces
|
||||||
Reference in New Issue
Block a user