diff --git a/.debops.cfg b/.debops.cfg index f08c7c0..e286ee2 100644 --- a/.debops.cfg +++ b/.debops.cfg @@ -1,17 +1,45 @@ - # -*- conf -*- -[paths] -;data-home: /opt/debops +# Define custom paths which can be used to override files and templates in +# Ansible roles or inject tasks via lookup plugins provided with DebOps. +[override_paths] +files_path = ansible/overrides/files +tasks_path = ansible/overrides/tasks +templates_path = ansible/overrides/templates [ansible defaults] -display_skipped_hosts = False -retry_files_enabled = False + +# Path to the default Ansible inventory directory managed in the DebOps project +# directory. +inventory = ansible/inventory + +# String which will be set as the "ansible_amanged" variable in templates +# generated by Ansible. +ansible_managed = This file is managed remotely, all changes will be lost + +# Don't show tasks that were skipped during Ansible execution +display_skipped_hosts = false + +# In case of failure, Ansible creates the '.retry' files beside the +# playbook which contain names of hosts that failed. This is useless with +# DebOps since playbooks are in a central location therefore it will be +# disabled by default. +retry_files_enabled = false + +# Make the default output of 'ansible-playbook' easier to read by a human. stdout_callback = yaml + +# Define the list of the built-in callback plugins enabled by default. +callback_whitelist = timer + ;callback_plugins = /my/plugins/callback ;roles_path = /my/roles [ansible inventory] + +# This option disables the warnings about missing Ansible inventory groups +# defined in a playbook. This warning message is very common in DebOps +# playbooks and disabling it is recommended. host_pattern_mismatch = ignore [ansible paramiko] diff --git a/.gitattributes b/.gitattributes index a68c720..7e660c8 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,4 +1,4 @@ # Uncomment the lines below to encrypt your secrets with git-crypt -#/ansible/secret/** filter=git-crypt diff=git-crypt -#/secret/** filter=git-crypt diff=git-crypt +/ansible/secret/** filter=git-crypt diff=git-crypt +/secret/** filter=git-crypt diff=git-crypt diff --git a/.gitignore b/.gitignore index d2166f7..bb7768e 100644 --- a/.gitignore +++ b/.gitignore @@ -12,20 +12,6 @@ /playbooks -## Debops secrets, EncFS implementation -# If you'll be using git-crypt instead -# Remove this whole section -# and uncomment the lines in .gitattributes - -# EncFS mount targets -/ansible/secret -/secret - -# EncFS encrypted folders -# Remove this when you're ready to commit it to git -.encfs.secret - - #-- python *.py[co] diff --git a/Pipfile b/Pipfile index 218fe05..edd3c40 100644 --- a/Pipfile +++ b/Pipfile @@ -4,9 +4,12 @@ verify_ssl = true name = "pypi" [packages] -debops = "*" +debops = "3" +# https://github.com/debops/debops/issues/2148#issuecomment-1179720009 +ansible = "<6" +netaddr = "*" [dev-packages] [requires] -python_version = "3.9" +python_version = ">=3.5" diff --git a/Pipfile.lock b/Pipfile.lock index 729fffe..fd6a75e 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,11 +1,11 @@ { "_meta": { "hash": { - "sha256": "52615710627e2e5ad0aea09cae5ada8c06972a15ff7a604d3493956d29902b9a" + "sha256": "1473243c3f2b5f72f50da8d16d600887d4f08535ccc2ccfb86bec0adcebf1683" }, "pipfile-spec": 6, "requires": { - "python_version": "3.9" + "python_version": ">=3.5" }, "sources": [ { @@ -16,27 +16,293 @@ ] }, "default": { - "debops": { + "ansible": { "hashes": [ - "sha256:0e35b53672ef43ad93413ebc2ad03a73186d4c29b0cfa8ec7af14a20a4b4b417", - "sha256:8d87dcad8f1cc672a9a288199db599f299272daa19153b1802748d520eb7282c" + "sha256:c77f556a7c3d9948f86639c5742aa885be25a7cdbda3bfb41a8314b60a3341e8" ], "index": "pypi", - "version": "==2.3.2" + "version": "==5.10.0" + }, + "ansible-core": { + "hashes": [ + "sha256:bb938ce5888a4083cb37774e5ab1523f258fd468049e8c7d23c6f658b90efe99" + ], + "markers": "python_version >= '3.8'", + "version": "==2.12.8" + }, + "cffi": { + "hashes": [ + "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5", + "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef", + "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104", + "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426", + "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405", + "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375", + "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a", + "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e", + "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc", + "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf", + "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185", + "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497", + "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3", + "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35", + "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c", + "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83", + "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21", + "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca", + "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984", + "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac", + "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd", + "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee", + "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a", + "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2", + "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192", + "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7", + "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585", + "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f", + "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e", + "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27", + "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b", + "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e", + "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e", + "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d", + "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c", + "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415", + "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82", + "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02", + "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314", + "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325", + "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c", + "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3", + "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914", + "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045", + "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d", + "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9", + "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5", + "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2", + "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c", + "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3", + "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2", + "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8", + "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d", + "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d", + "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9", + "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162", + "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76", + "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4", + "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e", + "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9", + "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6", + "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b", + "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01", + "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0" + ], + "version": "==1.15.1" + }, + "cryptography": { + "hashes": [ + "sha256:190f82f3e87033821828f60787cfa42bff98404483577b591429ed99bed39d59", + "sha256:2be53f9f5505673eeda5f2736bea736c40f051a739bfae2f92d18aed1eb54596", + "sha256:30788e070800fec9bbcf9faa71ea6d8068f5136f60029759fd8c3efec3c9dcb3", + "sha256:3d41b965b3380f10e4611dbae366f6dc3cefc7c9ac4e8842a806b9672ae9add5", + "sha256:4c590ec31550a724ef893c50f9a97a0c14e9c851c85621c5650d699a7b88f7ab", + "sha256:549153378611c0cca1042f20fd9c5030d37a72f634c9326e225c9f666d472884", + "sha256:63f9c17c0e2474ccbebc9302ce2f07b55b3b3fcb211ded18a42d5764f5c10a82", + "sha256:6bc95ed67b6741b2607298f9ea4932ff157e570ef456ef7ff0ef4884a134cc4b", + "sha256:7099a8d55cd49b737ffc99c17de504f2257e3787e02abe6d1a6d136574873441", + "sha256:75976c217f10d48a8b5a8de3d70c454c249e4b91851f6838a4e48b8f41eb71aa", + "sha256:7bc997818309f56c0038a33b8da5c0bfbb3f1f067f315f9abd6fc07ad359398d", + "sha256:80f49023dd13ba35f7c34072fa17f604d2f19bf0989f292cedf7ab5770b87a0b", + "sha256:91ce48d35f4e3d3f1d83e29ef4a9267246e6a3be51864a5b7d2247d5086fa99a", + "sha256:a958c52505c8adf0d3822703078580d2c0456dd1d27fabfb6f76fe63d2971cd6", + "sha256:b62439d7cd1222f3da897e9a9fe53bbf5c104fff4d60893ad1355d4c14a24157", + "sha256:b7f8dd0d4c1f21759695c05a5ec8536c12f31611541f8904083f3dc582604280", + "sha256:d204833f3c8a33bbe11eda63a54b1aad7aa7456ed769a982f21ec599ba5fa282", + "sha256:e007f052ed10cc316df59bc90fbb7ff7950d7e2919c9757fd42a2b8ecf8a5f67", + "sha256:f2dcb0b3b63afb6df7fd94ec6fbddac81b5492513f7b0436210d390c14d46ee8", + "sha256:f721d1885ecae9078c3f6bbe8a88bc0786b6e749bf32ccec1ef2b18929a05046", + "sha256:f7a6de3e98771e183645181b3627e2563dcde3ce94a9e42a3f427d2255190327", + "sha256:f8c0a6e9e1dd3eb0414ba320f85da6b0dcbd543126e30fcc546e7372a7fbf3b9" + ], + "markers": "python_version >= '3.6'", + "version": "==37.0.4" + }, + "debops": { + "hashes": [ + "sha256:57a5e497346062842918beba876726293c78f3fbf904ef67ecb4a27cc87207da", + "sha256:89962ab3e10cb2240936d1d9383a90334fdce292988ba87ae1d1b419ee7ec633" + ], + "index": "pypi", + "version": "==3.0.2" }, "distro": { "hashes": [ - "sha256:83f5e5a09f9c5f68f60173de572930effbcc0287bb84fdc4426cb4168c088424", - "sha256:c8713330ab31a034623a9515663ed87696700b55f04556b97c39cd261aa70dc7" + "sha256:151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39", + "sha256:d596311d707e692c2160c37807f83e3820c5d539d5a83e87cfb6babd8ba3a06b" ], - "version": "==1.6.0" + "markers": "python_version >= '3.6'", + "version": "==1.7.0" }, "future": { "hashes": [ "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d" ], - "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2'", + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.18.2" + }, + "jinja2": { + "hashes": [ + "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852", + "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61" + ], + "markers": "python_version >= '3.7'", + "version": "==3.1.2" + }, + "markupsafe": { + "hashes": [ + "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003", + "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88", + "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5", + "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7", + "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a", + "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603", + "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1", + "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135", + "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247", + "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6", + "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601", + "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77", + "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02", + "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e", + "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63", + "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f", + "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980", + "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b", + "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812", + "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff", + "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96", + "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1", + "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925", + "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a", + "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6", + "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e", + "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f", + "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4", + "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f", + "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3", + "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c", + "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a", + "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417", + "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a", + "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a", + "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37", + "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452", + "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933", + "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a", + "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7" + ], + "markers": "python_version >= '3.7'", + "version": "==2.1.1" + }, + "netaddr": { + "hashes": [ + "sha256:9666d0232c32d2656e5e5f8d735f58fd6c7457ce52fc21c98d45f2af78f990ac", + "sha256:d6cc57c7a07b1d9d2e917aa8b36ae8ce61c35ba3fcd1b83ca31c5a0ee2b5a243" + ], + "index": "pypi", + "version": "==0.8.0" + }, + "packaging": { + "hashes": [ + "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb", + "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522" + ], + "markers": "python_version >= '3.6'", + "version": "==21.3" + }, + "pycparser": { + "hashes": [ + "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9", + "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206" + ], + "version": "==2.21" + }, + "pyparsing": { + "hashes": [ + "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb", + "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc" + ], + "markers": "python_full_version >= '3.6.8'", + "version": "==3.0.9" + }, + "python-dotenv": { + "hashes": [ + "sha256:b7e3b04a59693c42c36f9ab1cc2acc46fa5df8c78e178fc33a8d4cd05c8d498f", + "sha256:d92a187be61fe482e4fd675b6d52200e7be63a12b724abbf931a40ce4fa92938" + ], + "markers": "python_version >= '3.5'", + "version": "==0.20.0" + }, + "pyxdg": { + "hashes": [ + "sha256:3267bb3074e934df202af2ee0868575484108581e6f3cb006af1da35395e88b4", + "sha256:bdaf595999a0178ecea4052b7f4195569c1ff4d344567bccdc12dfdf02d545ab" + ], + "version": "==0.28" + }, + "pyyaml": { + "hashes": [ + "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293", + "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b", + "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57", + "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b", + "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4", + "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07", + "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba", + "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9", + "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287", + "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513", + "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0", + "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0", + "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92", + "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f", + "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2", + "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc", + "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c", + "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86", + "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4", + "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c", + "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34", + "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b", + "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c", + "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb", + "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737", + "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3", + "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d", + "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53", + "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78", + "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803", + "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a", + "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174", + "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5" + ], + "markers": "python_version >= '3.6'", + "version": "==6.0" + }, + "resolvelib": { + "hashes": [ + "sha256:8113ae3ed6d33c6be0bcbf03ffeb06c0995c099b7b8aaa5ddf2e9b3b3df4e915", + "sha256:9b9b80d5c60e4c2a8b7fbf0712c3449dc01d74e215632e5199850c9eca687628" + ], + "version": "==0.5.4" + }, + "toml": { + "hashes": [ + "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", + "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" + ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==0.10.2" } }, "develop": {} diff --git a/ansible/inventory/group_vars/all/ifupdown.yml b/ansible/inventory/group_vars/all/ifupdown.yml new file mode 100644 index 0000000..76882af --- /dev/null +++ b/ansible/inventory/group_vars/all/ifupdown.yml @@ -0,0 +1,12 @@ +--- + +ifupdown__interface_layout: 'static' + +ifupdown__interfaces: + + 'external': + iface: 'eth0' + dns_nameservers: + - '195.190.28.82' # resolver1.greenhost.nl + - '195.190.28.85' # resolver2.greenhost.nl + dns_search: 'bij1.net' diff --git a/ansible/inventory/group_vars/all/netbase.yml b/ansible/inventory/group_vars/all/netbase.yml new file mode 100644 index 0000000..c133805 --- /dev/null +++ b/ansible/inventory/group_vars/all/netbase.yml @@ -0,0 +1,5 @@ +--- + +netbase__domain: 'bij1.net' + +#netbase__hostname_config_enabled: False diff --git a/ansible/inventory/group_vars/debops_all_hosts/system_users.yml b/ansible/inventory/group_vars/debops_all_hosts/system_users.yml new file mode 100644 index 0000000..c12d29e --- /dev/null +++ b/ansible/inventory/group_vars/debops_all_hosts/system_users.yml @@ -0,0 +1,18 @@ +--- + +system_users__accounts: + + - name: 'arjan' + admin: True + sshkeys: + - 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDHg8MUtkmTJ/klyDK3hqCHm8TTSOMqvtxuXaS/+EQRcTb9BaAajcpMDdpsPx9YHt04x4jsQiOdwV/gi0RRxdEf3lD9jjrGeTeb1gFjLeyttDu6zD0LrTa73Ly//ccN+TnFSnwSgJ+0eSzYJAQu3qIqTyKyBaWGMq1iNwlBQ42PnKSYvnz70qU25zCgVfgUohdeSawNYxYPdvKj4jA4NlVLcZScwk7cOTHZ0bBq2D2ksUsmNmPDKLI55xxKbgBT/7q4T2IKBZixKVA8B1meYDSZ/lUzDy+BlQU+EWjSiue62g/W4KnUBeea+0L91E3YLw0m8LPV/I8EvDnQWj24EyZtCneFxz3EuNyPudr61j0Ec95qFY//nH+HtTqxxa1GO02dtFstGWIvKHaMrU4vEYNpfkSDYHEhinAvT+2yJnj02TT4zEe/2S1u3ESh8y8Q+s2w0uiy0lYcslYrLtTLJhdp+7FTefd0P8v1xXlKTGRmxhsrWMg+VqZ78W3T2ncnNlKvvpOsTHaUNYu4nLCgPVdsc9ZcA7SnNXwfJf/M+h/9mi6/SuKQftwUdUbdTScCnftYrsF93/0bMcCVCZes1O/uCTDNJQEN1acNwie6kdXtAelwHip3d4xdgQgHOpxwvibZsQP5EqLJZOolD2rFzBkDoeo4vEjlFwYdZu4QtNAmaQ==' + + - name: 'kiara' + admin: True + sshkeys: + - 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC1Z5/y24+GbZITmmjfrqLujsJnS+B1YgQB4GYj+aut/WvoCt51kZ0nmNDv9c23OOQvTm7XPt+tCJm1GA+Fa1X/UurImMn0aZwB7pGg8qRvJFtYYqQOoxkUtMs4IXrhiGwTKWKgXr4q+MZxqv5otf3uHszVGqT+VNeGpmJfwZV7CdT/vWXKKuO3CIgHypg0StgUZ4O8kEFDDGu/M+bBDMeStm8AeA2LpOBCP9IP75zvGgNrI0mTPJa/Wlx/GO1Nf4DWxZSZh5Wk+77QF0YSl4jT49A3g/D3187/EJafFukaeHMziMG+gz5ZRZOCs4HnA7a5A0CpfGindrJQmQyp+GugTlxA6NVmrqFOlr9KXfB6ZFPWqTmQKYR4F0IyP3OoLM1e8n/2yuXFeOPuvHXOSbDKkerjcjyRxDN1gdG8X8XNTy1/V51+OkVgMFNoDVc9Q9kZXdWL98IC1BavDArnQUyE3Zc+Ip2j66bM1c+zLNdyTpATlp1zhkkYw1K79i1ZNYqw9EoW4O6bciC/DFxZeKDEw73fCR7S1zAxT4IBbiCQ2dj1Wx44EjxbF0baiw679SlfxEkkZBplcRHeBeIrmQ5gaIceNu6RdR14wSqYhcPAQtz6hSpoGowEKvtHHrEqw4F+tNQ3nOMDkCw8my/9c4jl/loM69knuGBmk11ffNZFKQ==' + +system_users__default_shell: '/bin/bash' + +system_users__self_name: 'ansible-admin' + diff --git a/ansible/inventory/host_vars/build/docker_server.yml b/ansible/inventory/host_vars/build/docker_server.yml new file mode 100644 index 0000000..6d0d65a --- /dev/null +++ b/ansible/inventory/host_vars/build/docker_server.yml @@ -0,0 +1,4 @@ +--- + +# required for this Ubuntu version +docker_server__upstream: True diff --git a/ansible/inventory/host_vars/code/nginx.yml b/ansible/inventory/host_vars/code/nginx.yml new file mode 100644 index 0000000..8f98d83 --- /dev/null +++ b/ansible/inventory/host_vars/code/nginx.yml @@ -0,0 +1,14 @@ +--- + +nginx__servers: + + - name: 'code.bij1.org' + type: 'proxy' + proxy_pass: 'http://localhost:3000' + +pki_realms: + + - name: 'code.bij1.org' + acme: True + acme_default_subdomains: [] + # acme_ca: 'le-staging-v2' diff --git a/ansible/inventory/host_vars/controller/dnsmasq.yml b/ansible/inventory/host_vars/controller/dnsmasq.yml new file mode 100644 index 0000000..a1b31cc --- /dev/null +++ b/ansible/inventory/host_vars/controller/dnsmasq.yml @@ -0,0 +1,15 @@ +--- + +dnsmasq__interfaces: + + - name: 'tap-mesh0' # vpn interface + address: '10.13.12.1/24' + domain: 'internal.bij1.net' + +dnsmasq__nameservers: + - '195.190.28.82' # resolver1.greenhost.nl + - '195.190.28.85' # resolver2.greenhost.nl + +dnsmasq__boot_enabled: False + +resolvconf__static_enabled: False diff --git a/ansible/inventory/host_vars/controller/tinc.yml b/ansible/inventory/host_vars/controller/tinc.yml new file mode 100644 index 0000000..ca58bb9 --- /dev/null +++ b/ansible/inventory/host_vars/controller/tinc.yml @@ -0,0 +1,7 @@ +--- + +tinc__networks: + + 'mesh0': + link_type: 'static' + address: '10.13.12.1/24' diff --git a/ansible/inventory/hosts b/ansible/inventory/hosts index 90e1a48..36dcbc9 100644 --- a/ansible/inventory/hosts +++ b/ansible/inventory/hosts @@ -16,4 +16,33 @@ # You can however use a virtual machine as the Ansible Controller. [debops_all_hosts] +intranet ansible_host=intranet.bij1.net ansible_user=ansible-admin +controller ansible_host=controller.bij1.net ansible_user=ansible-admin +code ansible_host=code.bij1.net ansible_user=ansible-admin +build ansible_host=build.bij1.net ansible_user=ansible-admin +[debops_service_controller] +controller + +[debops_service_tinc] +intranet +controller +code +build + +[debops_service_dnsmasq] +controller + +[debops_service_nginx] +code +build + +[debops_service_ifupdown] +intranet +controller +code +build + +[debops_service_docker_server] +code +build \ No newline at end of file