From b57199b28f52dccb38bfe3ee13a244026c2eebf8 Mon Sep 17 00:00:00 2001 From: June Date: Sat, 14 Jun 2025 20:49:19 +0200 Subject: [PATCH] wip: ansible pull --- .sops.yaml | 3 + .../chaosknoten/host_vars/netbox.sops.yaml | 469 +++++++++--------- roles/ansible_pull/README.md | 17 + roles/ansible_pull/defaults/main.yaml | 1 + roles/ansible_pull/meta/argument_specs.yaml | 9 + roles/ansible_pull/tasks/main.yaml | 34 ++ 6 files changed, 306 insertions(+), 227 deletions(-) create mode 100644 roles/ansible_pull/README.md create mode 100644 roles/ansible_pull/defaults/main.yaml create mode 100644 roles/ansible_pull/meta/argument_specs.yaml create mode 100644 roles/ansible_pull/tasks/main.yaml diff --git a/.sops.yaml b/.sops.yaml index d77d8fd..521b385 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -11,6 +11,7 @@ keys: - &admin_gpg_c6ristian B71138A6A8964A3C3B8899857B4F70C356765BAB - &admin_gpg_lilly D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - &admin_gpg_langoor 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + - &host_netbox_ansible_pull_age_key age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 creation_rules: - path_regex: inventories/chaosknoten/host_vars/cloud.* key_groups: @@ -117,6 +118,8 @@ creation_rules: - *admin_gpg_c6ristian - *admin_gpg_lilly - *admin_gpg_langoor + - age: + - *host_netbox_ansible_pull_age_key - path_regex: inventories/chaosknoten/host_vars/tickets.* key_groups: - pgp: diff --git a/inventories/chaosknoten/host_vars/netbox.sops.yaml b/inventories/chaosknoten/host_vars/netbox.sops.yaml index 05e5395..5ea0867 100644 --- a/inventories/chaosknoten/host_vars/netbox.sops.yaml +++ b/inventories/chaosknoten/host_vars/netbox.sops.yaml @@ -1,238 +1,253 @@ netbox__db_password: ENC[AES256_GCM,data:4k0wmOe1c5AE298Juw5HMm5dttTKB1WsVxha4MwaIILpyIbJO0CfmzjYflfBTFPPGgVeuYdCobzchzqkP+8eAQ==,iv:25Cj2BLGJK9tMDr42AqV1IzJc5zG2dk1YH5vC0b1T3M=,tag:knyB+nALZwME8y7CAQ4BCg==,type:str] secret__netbox_secret_key: ENC[AES256_GCM,data:zPzoFK5Sx7gJ31/Apwex9ffFU/GY+HxIfwrItCW68MM4kVvS33e+LY4cI0vbPYEUF10=,iv:SjpKxyxSAVo+p9vvE/YAQFCzAEudcZ1lwnJ6scxeQD4=,tag:oA+lBep610IfelGwdTohvw==,type:str] secret__netbox_social_auth_keycloak_secret: ENC[AES256_GCM,data:HP753hmQ7ssbYSQRH0zcRC0vRN5bKptvMXo9jjzcuk4=,iv:GQUoojXLAJxqdB92kKLhavDaka0Rkkg2uocBLshdvTk=,tag:LVnL/JHMsAd5UmmpnUv7og==,type:str] +ansible_pull__age_private_key: ENC[AES256_GCM,data:YBBIMoRiYfBEnZOnu9gWJgKjzixJwNqM4KfymvdniI1pBoaAZnQH2mkYgKgvbYVo3llxOF2G6n17buaG0xD1TSEqWcYF92R5ZYY=,iv:3DImVFWQtVeeW9ZwftOURQu3m86DR6Y71aBOw66Zx8o=,tag:Gf/CAHDi+5eAYazRFLHQbA==,type:str] sops: + shamir_threshold: 2 + key_groups: + - pgp: + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxK/JaB2/SdtARAAi7qjHT4E20Jp7tq/af0tc2jZEodbNov+mLjx4F4Ny5Iz + MoNRwvuXXlBP+j/kVIW/PZUvyPxD0IV6yUZRJzkwmD+HY9hHvNHu1Kzbvi3i7nQ0 + afWCdJhC+REzo/5A9Cm/jHpO5+oCvdR/e3OPB5R3HrBHTre4awq26DJvC8jzwxN1 + pZbTtMD8I5llkBveYwErATpsKmWj3yUMLzoI55vF6U+3KeAv/+sZEA7+0UKgudUl + oRNeiX2XFXqZ+UZKeq3ZQN6F6gxrU2YyTpIUtK0RfYOJdbdujiwFBbRGqQptujoO + 2fL0U1weRPNGJcEPHU1aGr2fHbHoaaVPHnCgBml6HS+ZuyYS/tEYW9zXZJOexSNV + N6jsAP9q4nYxwkkJ3cK070DdDtI83rdh3OPyvFyCUpyV74BigT/ogt1aBUsRAudy + HzD5++4MgWE8M23yjEzrADEA9urgxgnuEMaF1zWP6VjD3cM/jRrLVrqtfvpd0sBe + Us926+XxksqYabvyf/l5TOH6/a9bDxE8KXTtQ6P+24yvX0bbZ/ixyEC5HoyOLpbE + tPmSdQJ8yUMZA5T+L2VQ4iChzPlypoyqPy2shm5MHLobzzaobrsVy1g2wK8b2kEF + ivTTGst0ihk4r5Z5exgoc4CXoaagGrHuShdFcOPh6NHC8uIxoL/WS5fuJr4hnLvS + UgF0dxODS6q7B6uBqSJDQs2lzCmzqBxNF6A5xg9HWUw//R4Gff6OnhklTjOdoTH/ + PRHSYviJFC+1tOthfC2AeErlBy9e2FVK11/2QsAHZ0M+kWo= + =x7lx + -----END PGP MESSAGE----- + fp: EF643F59E008414882232C78FFA8331EEB7D6B70 + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA6EyPtWBEI+2AQ//SE1bYSxfe6SBgFX9gskd9t7YSDHVcMBr4BgIpP8vQcpU + ZYNpIgoe9eBhgI9qk7D5lWMJXQeWEFq5HJ96XhazT28ig+fbLPGAd0E1eSlee8Q5 + tlPRKYcqhblcn2WeLNSkQDw/yPOmW3mogEZw9klTg4fCh2oNeCi2aLG4ohzo4FvW + yVuwspYVUmYlzfxm9EomooLH3giVjX4Amhz+xOCD//LF4p0bZB4XxTMk3Pbf8Xtd + ugtPCmYL0Re136Dvn/naBwXNJj++PciNB8ZpE6JtGOss9o1fQAcjneVm9R0YFUCr + Du7Md6kc7Igud41e6vOq2yORo8jNtMMpX61furpPtY4qU5gtzEMqHlXKKHbnuEcn + XJTL69qSecDag5q+frG3z+1mZ7RdhPURvRV/8ImbFriA1mv68sBBvU+XueuTEAP1 + TXDIm7DGO76b2ywPnjhlLfuaXZj5UozksjaOmoIOptMAXxY86Ivm7f84urSkuD93 + 4j3UUjfunf1Vbl8xoAQDGiwyDHlDpfgKyb/64m9ZzeE8vadr4liej8Pl94Pd0egb + nBHxrPOnFUHGxZ6/SjF7G58PFOCY7YCp09KU0g8RinN+jneq3dHHZYoE8yy6R0gI + 24YOXCcuaR64cuElj5jKLgAH8MdD2Dfhryay12ekp9Mjn8Ja7yHUJKkm2nKYe2XS + UgHYvh27HoqjlpGN1z72aDExXPC4PLNImlMtYQLwVvmuIfBlMEn06e27hmce8bFK + TGBDzZfHyOgQeB34yn60BmKPFb9pYv6qzg1FN2Y1fYAUeS4= + =p+m7 + -----END PGP MESSAGE----- + fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAz5uSgHG2iMJARAA4/jZtye1xJ/XlqcdzIjWCVxS7fHW70g+KobQ86z+aKtY + hFTSIBktYvjEkyRYA+gxDddHxxXVaf7btFglacVC5rM8HKlXMnUusdvQDf5KVjFe + ZmLc1Wtvl4Ho1KrDj0kD01gBmRFA0UEIq/7AodzUOQEiTiJw350qQk46iCoqPj2m + ZvfQPY/ZjeE3QfXsUNiuyZLB4IfIA33f3c2f+gpDNkEfb6GVoVDVVVnKkxGrmHmA + qvBWKRnvISGWiYfIv6PZLHguc61o6/P860DCMdRwFeOv/mxZCXetPFA9uRo18guS + mGz5EYkfSB/fLfb4uthNTI+rLyISqAySUKe3AWo+/SQvu6iI61XL86MOMmx5U1ul + PExClPyLqqCbb38VQ/BxTC9e70zprFkwYt36hb9yUUx9ubDM4q8DzHEVYddYkIqk + ia+zgC/j+zGFXWdbh4k87R/TAsc7snH3nnbd5gUo1kfj4HIc55f6s+BG0Pqx+Ctt + lH1Ed7cEnxbmuVxXxdxqKUU3YzUMCsImjzxLkrgXQaKbKoRU8Sd3yAS5awdV0q/b + Y3RhfvJBXmJkaDtBe7/YN0bo8l3c57VawV1uCUq/ZMW0qY9Ar9W75mmFBxes3DNA + 5cMJKmz5eeNU54aSdiCjgWcgZyIjJESnj9UiEO3u33Wgf+mtIUVJ559skAsL/oLS + UgE44b1LKRe/cvOeIuKfCjsl/Aew7z5lnKUWj91kgCL0JKOqIbCa3Q78lIb53NuT + S+kmfYeOMeXQ3XIYBDXf3OtBPuGMkRdMQDKlQOVUBny62H4= + =AWz6 + -----END PGP MESSAGE----- + fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAw5vwmoEJHQ1AQ/+IbrY9tfhMtUpRlHYZLPhr8pcNl9l5H/HUCT2U5jZHH2o + cLmVTCaGl27eI+QgsKLK/dlH9m3QwBnXVcF6uDDemaFDmtrFWq/37oirIrF3i8pX + HWaMXS+27zbs4nyO5z7oVGlQtLwRx862ww+MaBZMtR9G8fv0vogpiVmB5sq45Bww + DzQ3k6l6qIJirmK6NL+vogW9jIT1lblw4wjQAmBON6D+ivT6XwHfNBhnf5EXFZUG + AtNsI7P8sske1ltxegVLNuNj3k+Qpgw7A36uenBTvQQkiH5Vi0BMLNHihUV5ZOYg + 8lhmsYhqIvW4+H6GA9+lGHmO3MDqno6QS5+LTArvBdtcN6sDI1QzZNcOpcLzN/if + 6wB1Jb/rAmCrjWXnS2bpYThx9XMFM/RKzljZ8/6x+2qStPNSPsnNVr/GU4rr6ZIg + ggdSxZwH9Y+OVP+9HyLFfGEyX37kkpktH9TaCFw54juEHuftaaXu8L+5zL9gt2IA + mfGx+QCjqkWcB+gQL/D88RNNiO0euUZGkZQsu1BVGIi6tTRUbhm1dKHOp8S2HAtf + ZGR7O8M7xJFB+m2GuPP0uo+P4rY61K5P8ug7XuggPjwzWaeSVD49Wbc0WbMavYec + Rzra6QSQwbE2fMgVS2WZzj14y7yK8v0NwfC71Ci5Yetk60o+S5Brd1yzCfopHhXS + UgEwd0ibU7AsyMbRnn/ejg5Kn3NYuHZIVgryJsvxT086w1zdhEn9c0ud2xL3aUSg + C+g1+7K3h6XpNjKCLVN7kd4kryXVP4aA6zJf055uvx8veSg= + =05+R + -----END PGP MESSAGE----- + fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA4HMJd/cQYrVARAAyXbqURzzhS8lCX6Rni2WlwvyTbg66mNw2wURbu79qjcc + VWJQYtG0u7yXZAU6i5gKP4MZwCQXR6baGj1UQIOteDpQikdsiURPws7SiI7P4ty8 + 3aWF3INAnQbLxEpa9RoDXWEozHiESXgyZ+WMkcYmlKCzl8tOf7JBqMU2+6vxOGaF + MufsOpxY5iwImel5XvHF+uyxAmMmy6WwqPNVCTVBdufGUK4kJjby+hrkdyEvmOHQ + HfHn+ZliokcU9+fvCtDe23LUfHxnphhxyhnZ6MjZ2rYnWJHS1+xVgUUFcijkl+J6 + qQO6HtXSHl9XglX6Ay8ICvqnT5ht6C5YE6vELS7uAX8D1xHh6kyk0TL+hGNzhJCC + hjdBTPJsJs6Jf0iGv/Y7qAR8LVcZNsTqnGKFpJevM3hAJ57KDtWPOCNFW2vKMX/W + ZzOLvw4Hz5x1d4z5J7Fz9UbKVlUchomJokuJrR/u/A329TUO09dkff1F+C0ZPs9R + sYVT5P5sWXTSDK/VD0h1kZWRY+VD+v5FgS2XGyqdt2mmy0OtYkFuhjv4DGIbGvZT + AHV9xhTFu1zLPna0CcvXDJnnug0lsAbWpBmuXRzxInjm8N4JHuMtn6vwS4y2cQ8W + KcTkcxctXtjHDNsgI2zg0OLZCZsvYMCCehqSs1ZQ3fhJ73/yURxf4KJh48XKEo/S + UgFKW5ZcyTZ0FCeTcCKZoX5b7qgkzjJvxN3vcfOT5sq73v/caTwzuAzj2y25edNf + rnhXoxgFlekl04U2dWjhNL4u4zUM9ffJDAE+8SZjxvB5tjc= + =KWcw + -----END PGP MESSAGE----- + fp: 91213ABAA73B0B73D3C02B5B4E5F372D17BBE67C + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMAxjNhCKPP69fAQ//YcGeB47tvL23hQx78f3eiPwyOxFRvz6+CvUvkFvuGANK + b0Mh6YwvPWXHiiyQGErDl+ouhk9EvuZx4APFaG6uKpCPv2j5uQKEaCHpieHDuRTZ + YzO1lSn22MFcNaFCyfNZYtpEbsRPfpKs39Bul94Y5QCvg9MzGKvQ59iO2R4iUyxi + QP7rQCziPSxJdHos88xOieAXfIlEsHXsx1iVDd0qwpHzmQkn1oIA7V75jRGQGUxB + meDso5JFaqKWxaFbfN9L8o0iqY8PH9ebg3/XSja85XQpqm8szZy9vzUfrixEpbb5 + Ni5qBuz+obKWJOB/qG3rRfzJUHX9dLkekGsPi5b49v6D/cZbmmDGpF8l2XLWxAtn + DpABlLLJU7OZHvbZSI4zq+vkYUajgOWU3pKrgOuRZPqNbBNrvONywjSCUYudyypY + 0XSAXxj40I0VRfg8MACw6AZpyha4Cskkrz/O8o9hc8VA5ejRqo5P1iVHzdPSCeTY + l2G6nb+7P1BGBwWyXFy+JG73ziyPOmMX7spMnQxthKubIyMvuIJNQXNiITgg4r0H + GpqfkdAH9g7vt0VVZ6AZf9PoGQrSnJpnoXi/WH6DYkiPtIU1AfN5cubkJIGKsyJf + eFqsz8KwVgSs7IFzjQhFg+ZHRe8kNzjZhjUJq6cIly+O6ybJIg//P9vbQ7oC32HS + UgGdPVT0yBW+K6o4gTuhJz2TRSpW8h2Nbh6+hJnjgLafUjVySXuM2KzqrWIlVhgZ + IxJP0gqqZVo3Wpmv6vMOnNQBYk1aDkYG5a3yWzdNfpS+m3c= + =Idfd + -----END PGP MESSAGE----- + fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA1Hthzn+T1OoARAArBT3QsCp727J105iH6wWGOz2mBkluGnn1GzsfgPfUksf + UHlksxzRn2f46NyOH1+gDHM3pzJ+P+u7ynNjkzUuBdvUO4V3S+aJqU7+JzwHsBB+ + PNNs6DXZB82dUdmgqXQ8t/c4kNWEsZnzoku21dXZb80XByBtFh5IZy4Wpzv6d+F9 + qjPv3+ljtkmFLX1N7AYrfIoA6Z0OHtBGYKEhK/XF0koI+g7PIYW2eIUfNz0+s9On + gxQZOx93hFa5DJ7/7UkyxgGcOJjpZ8PYzPrHyCUJDZga+3rkODrP1PKHEAJ6aTAO + USgBjT1/xiQq51SEL+0rYnxPH+3Udtxx4c/3phgfNC/tJ2sYVbvoXqhVydZuCtKh + NRY/KLquMkMpgLc2TuFyfYhR/jhl3y5bSX23o8Yz6wD9y0wwmo6Xk2i5fXgXtp+D + LSgdtZAx2zilSrvvVvAcuFWYsZJU+oGpsILDANO527mkZnzADxtSvCFeUMmKEl7G + PO9x7iRdsdojdKWgAq+U3OlkS2vgCeaJJUjr5wKmAuIWu/m2EAKtMzUlFPAErmK5 + EQEhFyj1NxENrKwR8wea55DPcUG2u5y/zbyCK4F8nUvU+QgStybUlweOCAFzgwD4 + bmklUyrDGn3y8mm5HxJUDzHQYU5opB+i6e5gFm0afauoq+yO1OckLNSO0sXf/oHS + UgFWWp7Ouy8PcL85OwfCDScNNQ2a64vcekJPtOOrUG51DpoQmN5dj+bF83a0zHO5 + gvAFCv0yy22d2idBTDQPuPrTNGzoq3zAG9ddNH/mkIZsHII= + =gHBP + -----END PGP MESSAGE----- + fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA46L6MuPqfJqAQ//dIKH7zlNopVeR288hF8LXlDnxBvmVK+WqJcselaatDvi + d9GdbjPvunR9FjFVHds/YkfhBc05eipU1sAKE7I317qa/lDaUCwiX6Xd9FmHplpa + HBdZAbRseSIPCjpRwk7/G8iWA+/030h3gXFeR9SIbo9U1aVtd/85j6P+yep1Dw93 + q90erdqiCOkS9hFQS2fGu/ARsUZPRMP/BeIgkSiw070mUl9zVsXmuS9UnyILbLs9 + Jt+Zt+S5hR6CZPcU6+39DVZ7CKjirQ4F1Azm0qHr1Ss1//8J+Xse+GRRDSEslTCg + 20jWhl3xix0znVTcmXLlCMyOAacQHhmJo+zVBV24w1Ug+s46MMi4Aw+eKP6YlA2V + 4659mUmwb+2HI9Gwys4W/S0oROvcTlCReTxowyzRJSojGIjmewyfPuBZQs4LPlQP + XbXbhoJjD5qHnCGSafwbsz0GdFfk0SApkigAU10ql5U9mpmpDYj8OhyGUFIrrpPf + ulmvVsbLaswOjx2Q7yFHevHoTui5BlVKel4lHBD68AwGjz6vSibs14uSYvzFaEX/ + AEDWLSOgVPzTNhv+3JR6FsIlDmgtoTxhqsG4e6WEDo3m4ePT0l6kDneOWiRwe1c1 + 2bu1GvO08Rnsu9/Cj1x8uPMiRy6aR/zcctOTC+6Bs93xVEOIdoU4oufnwrMQgBvS + UgFnG2QsWUE/s5xwWQ7PBxtJGf7l0rmM2vPrwBQgqL3i1Dmy1kh1l9eck7v+QO5D + X1usfYDaiT5LF5jEg/vSqP93lg6uyL6B/q17Vh2cEPn1xeQ= + =dMuG + -----END PGP MESSAGE----- + fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA4EEKdYEzV0pARAAhNd/HYE6Hcj30P0+tgVzcRz4xMr5quAlVMyyTHUIQSqi + 3gDq6bV9W8TnvcUoFvHiSLiQiBmp3Y0Ss+2CW/gYm9fc7KvJPsoc0B4Zy3qAWG7a + k44zxpaAeayb9YUk4iRx6D4JBRRU6ja6ib57yjaxYd4sa/JvIEKUFfTY0ssbAOag + cYlfmBM9SiqruFkr3NHPwYLdDey9WJTe1nzn0lr+eJZXg30LMn4maqMxhauKxT0+ + Ap5b8LO8XIF9M7FNRPSJC48TjYUVsA7fBgsvFlf20cTa30x5NY4hs8FaFB70kHfu + pH0WD2Jbkf4L5fjhM6xxL6C1ZDXbZMG+0ORKiOFOEm6t0ep2SYBaqEYcQ/V0mDRC + 536+tikTdPZh/1XPkyisqedsW0fvRuYeCXxYfcC+GjF6FANHpEDJGNORemp6CyMS + heI6mJKpXywTITUFmsPt3ptImi7Q3iqbYjQuu5TZy8KU/rpduNPY73gW8CMznIjE + e047VxfJvg4oRVhsfNUNEuqYAHATg70OqnXt/dV7Cv+3H2yFuZt7bETCqiBJvgaC + FEU9xmxX/29J25WpGdOjD9GSN6N+3Nrel6ZLWi/YtR//paUM8DqFsIMyy+4VrCTK + HRlMGxT+4K9GI9vy6cTTwaXxiuwa0MCWs3yLLaTyI7bXNMI6+F0qK9XTG/18DcHS + UgHE2UeINB4EQkX/EMV7zSgnUQuH806cjJTODqoYxCieMezYBrZgLAfxqqAPWwMQ + xdw3hJq0DQPwWxk6AYcEh+lh0DA2mGbPXMMH4b5aj6XWgNg= + =NMIY + -----END PGP MESSAGE----- + fp: 9DFA033E3DAEBAD7FDD71B056C7AAA54BE05F7BA + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DQrf1tCqiJxoSAQdAzZkyIbGTDDoK56jGkfljDzMssyZGhi2DTmKblJMhKQUw + n5zdg0jxvh0uNLsUD0oitESPzdpd3hVYWqro/u66x5KqyRMPxqXoiUscYofM2MC8 + 0lIBJwmYag6D/9DOJOMcmvBbGeYFBWR1mLXXAfZiQ6Sd+7CRUZo+Z5l+SKg635fs + BVXGXDPRpyLuDHgCAHevOmtRb5A/lBbzYecdduPdRJheEYTX + =rLbc + -----END PGP MESSAGE----- + fp: B71138A6A8964A3C3B8899857B4F70C356765BAB + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hF4DzAGzViGx4qcSAQdA9KmnuvklNZQ4ROeDg3YvUjIUE10AoLkll85wrchUPwMw + HBzcqN/ulYSkTdtAfqd/nQzkhD/pz6FtIcGLiBfcwZyegLj+udqNqaTeS3PrVpf5 + 0lIBMThookkstN32qQKcQBxLLxs78NqOUaL9suSywSnBEXOR17Aoc+Moqd66k9WE + Y0M5lUCSelr17kQIBCnUwJ2RV0ewrUA58sM4r09565kX0HGR + =vuH3 + -----END PGP MESSAGE----- + fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD + - created_at: "2025-06-14T18:49:00Z" + enc: |- + -----BEGIN PGP MESSAGE----- + + hQIMA2pVdGTIrZI+ARAAql8OiNrZ0Shq3C0fls11lKDX8EKqj2tL4Z6NgfMOxbhQ + U7ZdNMlLvRh86//qgUqYsGWDu1wU9ycMvdWfbNkqEanF9/zPap2bKy+qkU0kJn2u + /oUmDm9DQsfGLKyRPgsZL5ROquci/5dj2gWs8IqMczk58w4JJY41aTHSjgXV3Ff2 + uKCd0eQTgnqkJizvoX8t1OMGiNrWqgFdt3oIjAKw/3cqFgz5Mmpf+UJGiwyn8lCd + 28DkNn7vTyXEqAAn2jkexpxMiGkD314XOvqhg5oC1/1Jj0Z6xXhAZthgg1Wzr+pi + xBLzAb8suEP95GoTU4IedRhT3jmSnH9PAduAZJpNIOpqT8L5e1TQ4JPd/HY7syLz + PbxqiFOm3lWeyVYy+WlnT+vRwf6kk1H2XXseB1AqMJIpn880kqIdfFv921Tn5tqF + hnaktBWGFiG+tbfBA7S/vLbUvQUEm+hhtYElIkomx8IEWPfaI5YB+3rUV91W+1Rf + ZMRl/hCC6D1bRaG5RuksdkzuAU6kpJCTNfGV/s1uY/PCP5yPJNov6PR2tB8SxAdI + KQKBJr0egS76CI1pWcsiOAke8MtDPpr7dxXDTTCKiRqA1r+/jUj2XOK2X04zyphL + /4MjqX6x9+QWT4REVyd6zcSNSID19+YGfNQ1DqjgBPwcC1XEaq5m3ZBIGUAhDCTS + UgFzGkbOgU6HEA3DzUDM34Kgx+NQW5ry4lZp5mhSKuQZ20mzewLzd4qxoRymW6ZI + Uar4hj9RsqGyhcIp6OLhNUtgqWVBBDSMdg7a1jJQeONXPbQ= + =njQ8 + -----END PGP MESSAGE----- + fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + hc_vault: [] + age: [] + - hc_vault: [] + age: + - recipient: age1ss82zwqkj438re78355p886r89csqrrfmkfp8lrrf8v23nza492qza4ey3 + enc: | + -----BEGIN AGE ENCRYPTED FILE----- + YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBqcVpJNzFJQmxhaGI2ZlJr + NzRJSzhxdUJHRHg4N2hMSkZLSXJjNXVCR1NJCk1uVFVWR3NPczNNWlBjWWVRWkRO + VXFYWUpYLytNY2owRXpTV3MxUmVreXMKLS0tIG4rYUUvZjdtVGNsQTkrenN6TXk0 + dTE4ckxFK2FkZHB4T0dEWGl2MnEraUEKHSERpp/D4IlowMoDCci3qdB7T8H29CVF + E5mnX7B8UuxOWruykkgRqBe19g5vVcymxrUy4o8cNg59+fI+BxcxZ/o= + -----END AGE ENCRYPTED FILE----- kms: [] gcp_kms: [] azure_kv: [] hc_vault: [] age: [] - lastmodified: "2025-05-04T13:54:30Z" - mac: ENC[AES256_GCM,data:/+JlBnsQuJrx3+CXlH/0dtst8PdBw7cTnUpBavcQRXFjd5PsZ54kUCosFu7Y2ngL9xh6WOWKSJCKpHFb8TCrBhslJz+8SQiH97py9m59diMwG5m/RF3I3YHBIoonSZvl8ocDTbz5myycS41fad3CMs5XtGt/vEcceSFhgqjZs9A=,iv:yL8aRIn22zmTIQ53/e71t6o2z7q1fyvmgqvpz4va39M=,tag:DH1oCBbdOgK2NdanzMSn9w==,type:str] - pgp: - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMAxK/JaB2/SdtAQ//bpe59yKZIbuu3vrmQQb8fE1KMD4sGbPL9SVZbZY9VXMg - ANWwUHDmf1m6IWiC03czF4oecnc2qGjaQSQqGER3m/zYk14KqofrYIVxS+uJvxGS - tMMCwSCtOdbOzKGCY9gxS/QwBoSYc1OO6iF7i/n9A0Ql2mXG7naGu68kw20WnKke - RMWSRzgF4TIveGYmQizKnAENLV8P2vOQsXvdwqpfWVTRBT/K48t3SuAVfsQYIc2g - TvUhlA124o+0t6lBjEfDQihWiN7YiGumDtZZX8XUili1xcdsl4OWrOqDRRzxzirC - ESJeCw9B3CRM2JfqCrDEYuLSJPpHJSzzyqor9T6BfeisC+xm0dhFIO90gGDUm8U3 - 415350GAUy34Qk9WNPpelxZXx/fh2JB9iW+rYLOy1iQgE1i9EsYdEZXbhpbGjZ+l - 7W0qTm9kNFboy27NmT9EKPntWkJTQRRbeAqi5oHABUy5dZlUmW71vL2P1ent6XzA - 8tOI6VhfMtZ1TwAb0Xg/14qlBtOdWTdvH4lVw+YihTMtPfnoLa1zQ5apgW6oKUxo - QAhkcQHpu5HZsjiglQP9F6MylS9ggw7Na2GfR+3FIe5dUjHQvGHqkaBA4nrPkx3i - okWBFWLR4RVSSpwtIAvURxi6fcgRuonyoVKZzZ6m9WHTioHIB4Vvl0R/fU78hZnU - ZgEJAhBo1PHJr9dSYqgCI8qeq4sITZmFLieBhZaKoM5lPqb2AvLcC8M1AlFiK69d - Vr0AeQiWaYwxtMEBuQnJtO0OHv0XlgtA30EYP2cJVpzxFppxn+6LWq4uMGJNrk/Q - /31kOXsdng== - =899N - -----END PGP MESSAGE----- - fp: EF643F59E008414882232C78FFA8331EEB7D6B70 - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA6EyPtWBEI+2ARAAs55/kGd5sN9inu1n61yHG+ivPn5rsDhRV+chHlAjBnQM - EWdql7OlhDxMs2+wRLpQYR/d3LlGxpyocBYGptAmIXD7mas8T9BI6KynZ3cMCMWN - 9YNg1gkPNnmpbFUWHkv2l3xowXWfeKp83Nsod3F7FChwv4P3dIagbbW15OK6mCe/ - XJb2n8AZF7REZeGYr0j6ZNMYdfxhvJ3WJAiLn40lfuLbQAOQ6tgB/MZyQdae+OJz - rE2eJhWb2G37h+H/N0vMuXLMpbqi4cw2WQz6078+eV7Z1CX1qZuRlcryKenJeoFQ - LZ5J+r7uy8RtHOre7kzDtRF21hey2VMQCjOngamgUl7hZCb1MDiazaW3OItVBPp7 - wAiSBpoliyRNdnaAXjZa/Pt+wdy8ytJv2RouGQm0NoC3a7HcN1pYhxJJZH6hrNhJ - PIijyBEoREYO/9DUhKpHNxcD7FNw9eRB8HB/F/d3xTQw2vtgcG6sj6AxWaVyyZJo - 6OerhlKk6T4QFEPdjhpHXhYHH6gw5wKtoCmlX4E4zm5xx4Uerdn3VG65nSDOWlSQ - PPziZHn4zTG1jbx5FXwDGKtGskk82mMKF3+rJxWfmnnHA+O6wg327g8rWl5+F4sk - o+uEaMp/ix7Aw1lDzrx2io6MsMHpE9pCc05MZht4UGNHlhMW8G8UgRtCF9yurLTS - XAFwOkdtDAxpFCh5WRraCc/loHYXFzbOBdZgZYMfbpHyOYnVFiOkMcoBUTIdrVdz - duZFgkk/tq7iws3FzCHppSL97LhdQQYfqr8J9lMUhIm2TKilful/O1yqJ60r - =Zzwx - -----END PGP MESSAGE----- - fp: F155144FC925A1BEA1F8A2C59A2A4CD59BFDC5EC - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMAz5uSgHG2iMJAQ/+KRJ2tL+RTjzTThefMzFUwD2hPyEO5Z5QmaUqrO3cd0Pb - mnVs+Rf7RMX86kgXKQSTU/Wz/BXPgrDQhQvcVfVmaKU6veeMTLd+jZBTa/XMLiVm - azxjW3ZlKqGrRGAd9NxJfvgYIkNuBaXcAwkVNZ8P3byjAYM7VOfela8IBfnO4mH/ - 0rIo+1kG+nzAYqWH4yh03TCwntzkt+lVQj+JEXa/yygfczG4+HWpKmpjS1pnGY8r - zVa0tyrJ5w6KxuOW7bc73AOze7g9KPS8HmRrhFya1pb1BuQnsxUcXZXD8+9jK+7s - R9NIELFzZj0PY+T5cfLX3EJrIYfMOzug5XF11MfmpzCafXd5OgBmfm/xAPbYTK/W - YPOEdgVu3Z8f2APtRwJrmqg4f0HLnHypaIodOkMquDLhMaP1WxhGcHmXZ4r5/CYt - qU2IcKcw09txzdeCqazj2npEvR5BX5B2xS+MEuicR/R0zzPCX+Brf4fuwMoBPkQG - lRoaj9nhY88UuFb352TxXKck31eI8kPeX6HNZnfRwSIn1JwdmKihWR+IEcsJg4EX - fNlggDjPP9M8u/UIUyOWtQhfuCBqnM45M4n+4yVY+1RmhlfyaXtK3wvWtRLAR2/6 - PvaHtV4a6gybjHjwVkhoRZfUFVzHgGeEYq58uLCzgTG5QHqiETrfWtlbC7qYgsDS - XAHpOOMNxbpxoO6EjPwHEhZvQ1lQa/Tjse00pOpnosP8isgeHz9ut6ljmDPyUpIK - 415qhkIxX1wUIBXfmtOl27Y6GQg/1tIKzE0x1UhTG7X9l/nPnjSPIwFDLC9r - =c/cC - -----END PGP MESSAGE----- - fp: 18DFCE01456DAB52EA38A6584EDC64F35FA1D6A5 - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMAw5vwmoEJHQ1AQ/+ObNalgUdCT3UOdYADVxNPjI7H7pCBk4QfP/Ui4/uocxi - FbTleBj0wOJRhiTKUD73kdkD52WgpurVh5L/Zx6esnt3RMK7KO8BJ2fqPhC49QLD - iohIPybxF8+aX6ZMCmmCbImqH6vNU+Q1eQzd95UM+1w5hepieJhAgO6IHqIAWU9w - BdVQv0K5DrEuk4HApwaegxPr4NTu2UEI+2hBORHsOfmdIQap6ls57O1Ia1invUTp - Qm+19HfkTafccbso688b11zFZ9NAsOcm19B5a4m9bySLdvgnVC0CTCNOAwVG0Y6q - O8SxdxZt6KHaIFHK/5g/tlWxuQ4zDm/5TFE0+T3Ith3Pf2ITkqKLZFcTjM97yCNP - 3vdlVzmQjChx3QoA8nxZVCFoL+7kgSPvGxTIUmNlwrFgUD6+yZXfkzBiQ2ME4Qar - 0Fy+LIOfWblTWjHmYPmar9QWn1T9LTL66LZt9/z8R03qjebTqrf8/ScyhQXBb3gZ - hSLAZHOtvSYyMZwyfib0rDUFiSnRtQVZZ9eSq2UY9Pi/sXwSfbmbNA0AjchR8kmx - 2Q8WAjyGTDk7ESyawEgmxc0HxIeL0u2KguPmTp8wLO8dNEvi1EDwoup3fqCuA11J - p0wWTgL4chjFzJ49FpQ7Q2a7MHK/NaMI0U8nWuI44Rlc45iJhp13wMM1i5uj/dHS - XAF1Xqyf7KQYvni6eUm7kUUC4XnG1peMhBe3TiHRw4TqqOxnGIiT7/yx0eaJTMQv - CyR8H04cWr5rf0QApm3u/k/QxxiZ0I4uydgLAtDw8pgUMzVjZS98axdxM9Zh - =p2PY - -----END PGP MESSAGE----- - fp: 87AB00D45D37C9E9167B5A5A333448678B60E505 - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA4HMJd/cQYrVAQ//S4UuEzAJ1f4c/qGGNph73wRpXk/j8Az2tqIDhE85MFho - 5GZB8IYaF1Hvt1N23WzEysvZjsrF1pWG0Y8aX5YFP1TxNx/JVaBndleYE4CzQV/W - 577HIaGL6Z8VePGQ7TQQ0b2wvH9E6ZepSyynLWLYtXeUSbmpzhOf31eRgGKL+1gz - oQPHpj4INOTKOvXjwxZswkP6mpFTaZ+TkvXNjKQQnhbrXHr3q/QN0guQ/wGb1nqD - 29zVBbKHviY/WosLLr72bhymNMJVy2/+l0SnBN1UJbUm/hEIfct6GBvGcgu7waD5 - uF5fRQOjmRXAlM9/uFk/D7hgl+0cSapKqugyVkMRJVdjGRxYDq5O42AlI9260jTB - yd++YbiPV8xNwXhrqfEntKNXsQvINLbgOLiKAC7aSjD3lyNLxbt765wP/xdArsKH - nYsBiPvdiKLS814thY6MZlsI3TIwZzeVNouXsK5BXWhcE79be3lhlTesu36/uH6X - CAy3Gjy2ARX98WDp5AHsaDk4Fx9+b3DETpBLmYsmiPy0jiccMR2Wr0lrsYSQVamh - cpfyS+iKiHvbmXAzTTNg1IGrEtMyAH0lS99TJrvvB6qw/N4snr8v+avhGU+RJlTX - PhA6dC9HGdnfv/EbiIU/Nk0kmPIXiwl76v3MaqbxG82Tz8kVAV9+bBWUoRVJFc7S - XAHOetFJslv5kJzbmkUyjzGMyPMhXKjzEFVUmIEe5eJzsC+olavMYmGbXhZO+XJG - vRBn6oN+VZdcynLTTfiJjaT/zu12D3CqkIrtioMnF1rxLY/ngoDyC4C+K2hy - =RIa3 - -----END PGP MESSAGE----- - fp: 91213ABAA73B0B73D3C02B5B4E5F372D17BBE67C - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMAxjNhCKPP69fARAAmz/ImAmuv9pkG7/KGKQ9rlults7nf1g2a2+96p5D03i6 - DKN+Bqc4CqxCkK9RQOXLEcUAw+CfZZZQBk6YTpIIkMeR1+Sb4dLQZIdo76is6CHc - HSYYMeTq2nPJJrO7v8LWS0udqERi1gIQr99FtjS9V6XiDH2sqnB38t+TlXpI6m3+ - X2epCI2OrGHOtnP1yGRHs1nOd5whHPZ6Y8JXm2WVokjudDx9dC8pgP2qd8ZS/K7F - 3GnEo0MZZYo9VpdrGiElnpQvLS32hk1Z13hF/XdbOohTM7Gz1d4VtrUMuzjC+hHI - QSmjh4IKKhLnN0gOnAvmDOmzHoWfUbgTyNsvJyTmedXXPqR3vsDhHChMaO1BjBsE - Q64b/Tx/W4CzUDEOKJkHG5bH3HAVo3P7150JE8YToD2toua2Pj+j5o76EHCOmWMV - KbtG7bUef0r45yHgUzOiVUyAI+oBIdG6RvgVqfDPDUkEZxFgBFeRdCG+4HqHyTxP - +mI9zwabdXjx+4MwcOF+frJoP7TmxK6mBzW2ron9Mz9HwgTHUepS5ei+fgWIkYzW - wCMpGIXfrX35P17OkfqhkuiEib1t+Ec/xPHR9n+Rpr1p9c3EewIdqBr516EVYENs - M0ryuQ+MaT2q563y+sb2ocGNruY9GbsZigTJtqdovnZtoMs50xTifvGp7Dkjw0zS - XAGafKX8TtXlxOqcP9sI5bMpLQjfhbTFS72fgTxfQEErO3LKxV8Z/InGxRXl9HmA - T9bHsArbS4EpYByG0u0ZI9iZbK1Yp1njhUYoFTfB95FXL05bY5HTArELxqqq - =fGbe - -----END PGP MESSAGE----- - fp: F38C9D4228FC6F674E322D9C3326D914EB9B8F55 - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA1Hthzn+T1OoAQ//bE4PcCxl8ZxiaJv6YcFNyq+3QDtCF4fkexVznowNDu97 - SfLAEoNVjztvjdk199N1zbBWxNZVecV+2im4LHP46Z338m80eXLkSbp6Ig3QPXCA - IsfQ5hp/mXrDVSKa5j39zSk1TXM+nH1eUadSPNSvau74XMbXDW2SHhSdeoOxfo8q - Bts3fZ//QqSvEEhY90tcnI9ptvh5FtHh7F1m/0DQOnL2A0WIp7HxoXb2AvCIOyM5 - 3iJwAWqlHI8Z1SsSB9+s3T6XwkLMFh457+w5mSWoGkeTo9mYEMPQpQmtZ5z08tnf - Xouyvg/TzCWfnI/4h8EJqYxm3qZdDtSd+cdYChnkv1xzhL0goEBWjzrqtSXOUoJ/ - 6lvEjwaArrIDEJ5NcfDFTm1+9SwzDtn7OfL7ee3hctA3cUVWKj1jASB/ouGg6Uvb - 7dUkKu0rVuC4m9AhlDGSiaN1WaE2XHyxjtbVRbMg4Umrh2CYRX7ndeErnXuhFzfE - fLZyb/n8Pad4OF1KLnORZliRp79gXdyrBt8tWF+Xc9OD5Ca269Hgk7llh1DQCYPt - GlmkM75AOvYAumoRXi3eMCyT0HRHWtvOy1ljNB7H+DkWsR1dZbG+0H1q/xVVxvZf - uVc6R1oZMrMInrEeyf5+2gbILkU0Ms+TtXQgCv73qdioNuhTafi8acbyiyJJfXLS - XAHyl8IJ8fagy8iccVQUg6tPderxLaoA/NeH+lsxgbbZIxAPom8e79XRm7I40E7q - pCXFUuskc5kK3JaWzMc4PAPzlLs2895qBdLXyYJ/FRAzulhkKLypStFrZOp7 - =SwE9 - -----END PGP MESSAGE----- - fp: 5DA93D5C9D7320E1BD3522C79C78172B3551C9FD - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA46L6MuPqfJqARAAsXgEGDcmiICJUisG40O4A6ePGtxFjIRmZtdYcl0ku093 - 8bF6zJvPOwRyQqDMeD7Qlt3/HZXjMQZC6qnpWG6KY7KUkjLoUOHIQdG/+ofz7WJe - Pn/M9pp9v0/Ra2sLbtpxOIObbK+tdLSR3L3hWjBs+KMoSX2IPeW5LOtBID7CEQEZ - ay4Y/WnbY3jUSxQ3dqDGl1TTylyvAnmIup3vkVHmU7ZgbS4x9NLGVhbus0EYZl2w - C40S/mFLqixu9lt8GNcu/EdsNgihrAuUkFQATz6vPZs/lSiVGdl9EM75DrWuOFcc - kXBvvKvi0e9IAGKb3IT6h05wLTMj2pu0489HybYyoaj6Jg/4L/3i3HZRpdALOqzA - h73Akzzaqm7pRMgCyxxCo8RBuxQ84wSnkK2Oi4S5MpFoUnLLqm4CpEI2FDkpNGKQ - zQNEQIzAHWxz7rbhjYCXtv9x5KWACflBw5/ILuFIu4wxdyDlDGMnI0raNIhtyyfV - rROHwgWZtKS/WJXpTer1V6O86eHgY2AsSsSaadrWC0e0PXNZEP+VbhxtR3eftK10 - 7a/2xVwA4lF+vYZeD6v9rVqn97hZd8DBKL7mj4N6EYEE8KtFCdt5/2FWZ3USXbQQ - JG+eaCtVW2IZn1ZEl3HxEV5crlGFq07RVfbDU+nH+98Hfn2qP8iuPDNFLdSQa6jS - XAFFDdFRXehEYgT6itTnkppNQKpPApFNbN62kiIHOvlc+gemUCLsR+XeL6f3P5QP - qzR9B4/dwH0IyquEkwqHOeGaZQgGnyqqzaBQuAEoDGlapYa3ThBdFgvOjl3A - =xw+2 - -----END PGP MESSAGE----- - fp: 8996B62CBD159DCADD3B6DC08BB33A8ABCF7BC4A - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA4EEKdYEzV0pARAAn7PuDmwZ6ii0LyFxAcsoN10eL2XoMrRr+zYsmhRfFOEO - vFGigdkMNg83r05MbPYOVdbIWZmWec0LVtXspHvKlXFB9XxErBYK5Mu4NMZTxIEg - Zf3vlXtR+A7fPg1SxrgXOjA2deAkGIUHVv/aQLAtTfJVgYtsAY4IvklEFNPLgFp+ - DhjgkVVWsE/V/KHLMP3dUc35+ikrQD73kkIXMKvi4Ez3cGtXQQ3tONkdvCmfV/Y4 - eXVSZPyf32XYjAl1isjx4YRgUK1C7S/MTxhhS3AFlaXtDcisRWbQzRnZZzkEo4t5 - +/xUIl42hGdi2qRTrvnyhM0u4XXNm+lqk65CTLY7UcfYJLzAdaQbnSQcG4krDCi0 - 8hnLmh7iflkrV0/MS44nOZDiU3I/9L6F9gy9fx+MfNZv0bDNHU0BL5NfWhTwiVIl - dE4Z2akYheoFvoAWpJNA3TKa5OV5Z7Zr7/N3o8KZL6QUXKv9tgDuzL+dqZE/fo+V - agi087xYmK51+enWcsmYW7t8UoKe2/5VsMJyGJDmuOBn/iRiHq7gVhLuyvnQtjKo - MeCv6bntSarPX9FfPrGnPNqgWd0ONFpFSHau69LEAmVSxhrJPEqNzVvelS2mQKx2 - jJVqNSGc2rg5DCV4zzwf09Dlw2XAwnBFk5uRIfvYEv5XHmm7VQSfbIlyJRmeBKvS - XAEtrHwm24dfrh6m7DJkRPjjeNCS1FPSO3d9/rVgm/+f+7l8r9ntATNiQiHOg3Dp - Pq0XKumNIAvA1tfPTSqnP8ELcnGHbmnQ9r3oa1pA7t79kZbifV3TjINdIRc6 - =q772 - -----END PGP MESSAGE----- - fp: 9DFA033E3DAEBAD7FDD71B056C7AAA54BE05F7BA - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hF4DQrf1tCqiJxoSAQdAjb0VgOjbJnMpyOvRyy7ne6A22RmC73MY8VtNodSZxGgw - rZt89++1gokfH9gCT+0vHRT5nLa3VyEmNY6KDH68wrGF7Lo9vfFjSCziLJoRypLR - 0lwBoDbGqpDquVgZ49CoWEzms716kVf636RuDCm/mclqBVYqT9ueBc/1FfPgednM - tu08vimske+zsgxf1EWIisc36CBB5shd/W3vvcjG9+KcgNb6aA9P/vybcWxzGQ== - =wdPS - -----END PGP MESSAGE----- - fp: B71138A6A8964A3C3B8899857B4F70C356765BAB - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hF4DzAGzViGx4qcSAQdAmlJByvoMsSxY6qHJKC7NfMUdf8I1zPFZ0eX4kAC812Mw - b2+S+R58j/XPFInJP9UHdSJsOhDVAhqQ/R7QBzf2iFRhL4M507pTJfK8FUbvhJQ9 - 0lYB8ixT4IVILQR8FG3pCy7lMFhslLmHy6cBFcp1UomVJFmtlM1mJU9Og6jUBLhE - xmxtytF6/716ofjH8gOUvh/3TUe8mDOegy6SEcEm4fyqzJbH4QQJ2g== - =ZOn5 - -----END PGP MESSAGE----- - fp: D2E9C0807BF681F5E164DAFC5EE1B61CD90954CD - - created_at: "2025-05-04T13:51:50Z" - enc: |- - -----BEGIN PGP MESSAGE----- - - hQIMA2pVdGTIrZI+ARAA3WKKOl7qNGQemym8vuu+ZqanNRcreICN+OxTVGU/j3rj - K0gtoqUlzy+QQ/KRmPYhfL2Oome5ld6LdN//OJ2MjuRwLhtLBXhJlrle2OvHbAm4 - q5Io2Cc23X3x0nmuM9iT4e7oWjTbfwRDLseXG4vQuUZCJUCLLpJ3naOO4q9qz31u - tuG+llD6NcYwyFnE0d7vqy252TPOuK+C7DQ069VQnKF6ZBLciSRMeSZeAX8LFPKC - spkZGkIBEziZE+HxOI/XZy2K+nRGvkEpHNLcpHYo3cSKpuVBwRs5njJx1sJrkODq - OYhRFbcluRp4ugDVw/MLY/mDVCfvFQ01jTsJbOW2FweAPFvDuxATfgO7c9UgSL/U - fp3ff0rHBMatZb+4zlMyXxwYHeSr2DiLMCax/n9hm5Bsfb72TkkfQcy14viVeK+p - 79BjZS3nwGCZvBiKE/J7yxX1/QGe5EUEtMosA+dDa2g3jehiEJGSkDeoaKfyaUwR - I8BAl9qgIeHUcQOU+HI6AqoQvxztR5a7WYbf+qFoo+K7oxFAiMQrjTssjWxmVmzN - IrxYIQnYTIIjmy9u2nGAk97vn0RGE66g2X3BzFwV8JnNPBlomza9gD6Yg0K5MlXd - cvpse5bOA7Es6JV1Iqqayms+u2bDiz9AjcW80bYLun8eVRK3i/YqArUBQ3tQ8B3U - ZgEJAhD9cUaAxKVPkLABVS5134/Pa5hb5WyypqHu7Zj8iYWVziLhRdBprjLuP/al - Ld/os4MBUB/JLhIQz6SyqYECBPNhXyStBt9OIsP4KeUT52YqKmE/UzWv8TSrcJHS - 9Kytv+IMsQ== - =HnMS - -----END PGP MESSAGE----- - fp: 878FEA3CB6A6F6E7CD80ECBE28506E3585F9F533 + lastmodified: "2025-06-14T17:44:05Z" + mac: ENC[AES256_GCM,data:L7+GHLqn1OgAqr7wTuhhwWS9vuDGNGjuo0yxY5BB4XSoDeja7aNe18KA8K9LC5/o8WtiRcr15uQUEtKT8dGrmZSmXRAJ+FC34B1E6OtjNzzuibLHFccq6SL3kxnnPQwgtvNLne+caSGOSYLIZOUej8VnbRTTvwTtPjUjH0fAjUQ=,iv:tCX6HEuXISrSo3IK3fdrPFAgCgXquBToKV4/kiK6MNE=,tag:DsKn+niR70XxnenBF8YfgA==,type:str] + pgp: [] unencrypted_suffix: _unencrypted version: 3.9.4 diff --git a/roles/ansible_pull/README.md b/roles/ansible_pull/README.md new file mode 100644 index 0000000..8e3cb45 --- /dev/null +++ b/roles/ansible_pull/README.md @@ -0,0 +1,17 @@ +# `ansible_pull` role + +A role for setting up automatic `ansible_pull` runs. + +## Supported Distributions + +Should work on Debian-based distributions. + +## Required Arguments + +- `ansible_pull__age_private_key`: The age private key to use to decrypt SOPS secrets with. + +## Optional Arguments + +- `ansible_pull__user`: The user to run `ansible_pull` as. Defaults to `ansible_user`. + +## Links & Resources diff --git a/roles/ansible_pull/defaults/main.yaml b/roles/ansible_pull/defaults/main.yaml new file mode 100644 index 0000000..37d84ab --- /dev/null +++ b/roles/ansible_pull/defaults/main.yaml @@ -0,0 +1 @@ +ansible_pull__user: "{{ ansible_user }}" diff --git a/roles/ansible_pull/meta/argument_specs.yaml b/roles/ansible_pull/meta/argument_specs.yaml new file mode 100644 index 0000000..a57d10e --- /dev/null +++ b/roles/ansible_pull/meta/argument_specs.yaml @@ -0,0 +1,9 @@ +argument_specs: + main: + options: + ansible_pull__age_private_key: + type: str + required: true + ansible_pull__user: + type: str + required: false diff --git a/roles/ansible_pull/tasks/main.yaml b/roles/ansible_pull/tasks/main.yaml new file mode 100644 index 0000000..f0d26d7 --- /dev/null +++ b/roles/ansible_pull/tasks/main.yaml @@ -0,0 +1,34 @@ +- name: ensure dependencies are installed + ansible.builtin.apt: + name: virtualenv + state: present + become: true + +# https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html#installing-and-upgrading-ansible-with-pip +# https://www.redhat.com/en/blog/python-venv-ansible +- name: ensure Ansible installation exists + ansible.builtin.pip: + name: + - ansible + - jmespath + state: present + virtualenv: /usr/local/lib/ansible_pull_venv + become: true + +- name: ensure secrets directory exists + ansible.builtin.file: + path: /etc/ansible_pull_secrets + state: directory + mode: "0750" + owner: root + group: "{{ ansible_pull__user }}" + become: true + +- name: ensure age private key is deployed + ansible.builtin.copy: + content: "{{ ansible_pull__age_private_key }}" + dest: /etc/ansible_pull_secrets/age_private_key + mode: "0640" + owner: root + group: "{{ ansible_pull__user }}" + become: true