From 81e11132e55f7ea64fec947af533699f9590f868 Mon Sep 17 00:00:00 2001 From: polsevev Date: Sat, 5 Oct 2024 01:20:13 +0200 Subject: [PATCH] Setup acme.sh with DNS challenge for homelab --- ansible/bootstrap.yml | 4 +- ansible/roles/common/tasks/main.yml | 2 + ansible/roles/common_proxmox/tasks/main.yml | 1 + ansible/roles/grafana/files/grafana.conf | 49 ++++ ansible/roles/grafana/files/prometheus.yml | 212 ------------------ ansible/roles/grafana/meta/main.yml | 5 + ansible/roles/grafana/tasks/main.yml | 17 +- .../roles/grafana/templates/prometheus.yml.j2 | 79 +++++++ ansible/roles/grafana/vars/main/vault.yml | 52 +++++ ansible/roles/nginx/default/main.yml | 1 + ansible/roles/nginx/tasks/main.yml | 69 +++++- ansible/roles/nginx/vars/main/vault.yml | 8 + .../uptime_kuma/files/docker-compose.yml | 38 ++-- .../roles/uptime_kuma/files/uptime_kuma.conf | 63 +++--- ansible/roles/uptime_kuma/meta/main.yml | 4 +- 15 files changed, 342 insertions(+), 262 deletions(-) create mode 100644 ansible/roles/common_proxmox/tasks/main.yml create mode 100644 ansible/roles/grafana/files/grafana.conf delete mode 100644 ansible/roles/grafana/files/prometheus.yml create mode 100644 ansible/roles/grafana/meta/main.yml create mode 100644 ansible/roles/grafana/templates/prometheus.yml.j2 create mode 100644 ansible/roles/grafana/vars/main/vault.yml create mode 100644 ansible/roles/nginx/default/main.yml create mode 100644 ansible/roles/nginx/vars/main/vault.yml diff --git a/ansible/bootstrap.yml b/ansible/bootstrap.yml index 1ea543d..0bae02b 100644 --- a/ansible/bootstrap.yml +++ b/ansible/bootstrap.yml @@ -1,6 +1,6 @@ --- -- name: Bootstrap playbook +- name: Setup uptime_kuma hosts: - havneboks roles: - - uptime_kuma + - uptime_kuma \ No newline at end of file diff --git a/ansible/roles/common/tasks/main.yml b/ansible/roles/common/tasks/main.yml index e483b45..08f4f03 100644 --- a/ansible/roles/common/tasks/main.yml +++ b/ansible/roles/common/tasks/main.yml @@ -7,5 +7,7 @@ - btop - ca-certificates - curl + - python3 + - python3-pip update_cache: true become: true diff --git a/ansible/roles/common_proxmox/tasks/main.yml b/ansible/roles/common_proxmox/tasks/main.yml new file mode 100644 index 0000000..ed97d53 --- /dev/null +++ b/ansible/roles/common_proxmox/tasks/main.yml @@ -0,0 +1 @@ +--- diff --git a/ansible/roles/grafana/files/grafana.conf b/ansible/roles/grafana/files/grafana.conf new file mode 100644 index 0000000..4d013e9 --- /dev/null +++ b/ansible/roles/grafana/files/grafana.conf @@ -0,0 +1,49 @@ +$ANSIBLE_VAULT;1.1;AES256 +38316335346634313932366466303631373231326134323264666166373261373039333961396266 +3361353931393863333363343665356264343638313666300a393066653536306238353538613263 +34323335646337313664303561323933313566613561633337386536326462373861616237366664 +6133343337303230350a653339646534613130353237373633316136346231666565373938363537 +37646539353138343738336538346630646430316537383363323137633333613936643137616339 +32663133663362313731373763383636663264313137616533376165636233303566373938353066 +36346637613732353362613434646261363135343936383338383662383736653439343464376430 +33333861363739613736356565383632323662323232393866353633643163646161663165366237 +30396430313136316365373834666138386165346535663830376562386235613431353365326665 +39646461653133313862643730613465366336326638393432303139653761343135643138653161 +33346263643331376438353466333161323738363366366466613561396230616637663539633838 +62633936656435373637343832623536663664663434376462323231653666613538333935323363 +35653533326162313836363731656664353238383438636431656362313161633863326236663564 +66316331346166303264643638303665346364656637336339646332303562306638316632653639 +30333732363732373865353335356135373637653237356261663631373764393365303061333765 +66376134633536633166656466366238653763383937643537323938616166636338616135356564 +37303632666162613036393438356235616162393035353736346365346162376231393466393264 +63346561643732376639363163396534633333333235386362646136356263303837623565366466 +36363939663562363431356137323062623138366665386332303231653264373164303238316438 +61343437613633633335383038616134356538396432663833386462316234316632643834636266 +35376665336432633930396461356433313831346131636433623633643733386464383635613832 +64353766326266373433626233656366643538636231633664663164336366643766363434303336 +33646130313430613339633364303739666563613236313635383664633361313662313031316561 +65613137613062393134343362626362346533656134373162653032336332373462303538396232 +64313236613162393035343736373836646266646565663132373462633337663465623865303461 +31303235386138323434363831653064616635616535613836393563643132393263626338393633 +39616539326130346561613065656165343837353961366566323133306261343236393064353238 +31386133643636653938373761336330333965343933333033633239633766393931623864303838 +37313937356337306335613365333732313235323361343933383932656535653263663332353237 +31613734363536643230333139666235346239656539306132396361353433396339346264303839 +31613135323131653365643135653130613361356133303862393061316631323535363833393364 +62636530616630323664346533343039653437353937633830316337646536346534323630636632 +33626232626466363836393164646163646632373763316635346662633361343034363961376431 +63633232623866303532323832346364633430393163336535616633623363333332383935316439 +62323434383661326338633463306363353739633831346263323634313136363532643630653464 +62646566303331353737663931376534653463303730346334383433633064323965323430383265 +35366130613737656633656230663137653562663633383233393639663364633663663338666362 +37363930363861623464373638306166366663643737393133316464336130383364313238343832 +38613165666132643964343564623462623361363366616230663864323266343935633261346531 +65656264323862363936653532393362333261353935353765303232356631383931303161623662 +31636636656239303032643563616163646338643238326262623464326535636439313834623131 +64363863626532363234366139393262333061353031386239393439386531636536306336366135 +33353736326231333630666137626462333832363639353733303933313064393161356130373265 +37373466373637363263666463343262363737383830653333366235303034393135633636333563 +33613432353165663433343230383563326161633866626565623332386438303136303763656261 +65326137376561313530333665303764313132346139356563653631333737356631383532366362 +31643539363366386261643862336138656364323938366331343061353634303231633563623639 +62646534623836623164 diff --git a/ansible/roles/grafana/files/prometheus.yml b/ansible/roles/grafana/files/prometheus.yml deleted file mode 100644 index 11d82f4..0000000 --- a/ansible/roles/grafana/files/prometheus.yml +++ /dev/null @@ -1,212 +0,0 @@ -$ANSIBLE_VAULT;1.1;AES256 -38343232316262353863376331346434643638303433353964373164646662623163306635386135 -6438653666306337636565303133353736373836383230620a613366336336386566666139396133 -65333936346662663037613165383036663266623334643636363736643036333533366164643136 -6637643536383961660a303730373935633361336232653435616366663465653165623439656537 -65363936343735303934376234326339373232386635376362333033643734306131336538303966 -64333937653639656166333132386135396539663464386366323362313835656437653138326637 -34363466323431343031653562343334643366343538323037633161336438656239633966336638 -37323134303932323461373866303961376362323639393037316637343162363435646164343264 -63633739346439323165303134343132656133616463623835306433386239353161646666633239 -39383162333636663233353161623733336262613837623533356331643862303935393132363661 -35366338376539313866636134313266353334313766386331633230396432303464626330616664 -38653339386332663862643237663034386138333930623162623230323063333437646336303666 -32396639616432653030666164326535663336616264306133633634646361356439626137363163 -64323031326438623831383732623634353131363438653930613363376661616234336661386262 -65316638316530363737306233303536396536343738633733643133633539326562666538393333 -61366661353139663234373631323436373961386531633964356236636564353537366334633362 -38383030613330363938306564313634646436613635383661643065373361333464343062373961 -38303462613163383963346362316165366166346461333863313238393136646631393036333764 -35343462326265343464656165346339353061636131393265363238626564383238353631643739 -35333334643139303338376664306136373062653130353134376561613564313836636638333230 -65393334613035343831373163643564333033353461626565323037396439393839383164356435 -33643036396463373362353239383838333833393132303764383661623237393161373362356439 -32336139653830643136333066323362616533633866373564623536656630343237646161666366 -32343132626262383937643336353966323339383831396237333635623964393366353938626465 -31653239333136323436616331306432343065366436343132353534356433363733346263303434 -30366531393330646366366630323736376134303435613035623431323164623965643362313632 -63303532623166636563663563353435336665336365383135616131393634313532616130383665 -32663938646265616162653539633765366131653338653061643834646265363339396434333661 -35356230643461353938323166636132373934663435376639373730626131303633306665336233 -64316433643166313665386665366632356437313331613333393565306666666336333535386165 -37653863383165616136316434636561646131663666366136323363653365353366646262356266 -62393339633134316537396433633437386261396237383136663938333937313538306336343166 -61353330376563393565626339626634646430646236663465666465636261353364343163373066 -33306366396335356336316533343533323638373234326564643133363263336364386638653762 -39356636613933333231333266653965333937666533643763373366613334613436386532376661 -63383537383739386633623035376535656564663835643763636233613030346565346265353737 -32386433663362633163343066313131303339396339373037663565383334393132623235663038 -36373030393738383435663039326231356365333235363664633966663162323235626663373930 -62393165623036316438626137646133616662653335373436643734346433383764613431336139 -62366264343033386234376164623933343061306234326239306330356638333661333031633266 -37613563663732353937336161663335643064666363633962653262653063623763333132303335 -61363861333735393162313761323666363532346263623462616531316236303434616236366464 -39323866656334343364613235316661353433343366393231373166326433636237383937623835 -37656637343638373165373130353839643737353035326134316462393433646263336634346265 -39343361356565616538623032366564363533393862356131356265356662333864643536623966 -31616339346131623931393838633934633264303939613034383237333935396438303263393164 -33306537663238343165303464316132363736663263666639366336623333616334376639613539 -30336638353739656362666561303934363437393538333833326466646432386235326131313666 -39313564333835366666386661656332666135353236316364383333376433356533363831316363 -38306261666261313939343264616362366261653038633362396636316538333132363361653562 -31636437353438333864363631616462303032316632383830643438333861366431663934323236 -63323962643439386435663138366333336664363938643238353266633637303966363939303261 -61336235333332633439313135663832323264313739626463396439373139396665366364313737 -35656232633063303138663664383763366264623831653035363538303735326235376439663862 -64373365396464666663383630663361346466316639356461373233363763356333636336346132 -31646338336432366533323962376565313763396435353033346362376237316265646365383731 -61393533633631316166376335653432313865346531313530616130643064363765666431376463 -30643762356630653132373734313930623537356261396230363834336338663331633666616630 -36623037636530303261616264303331636263393731613737626237636662376462313337636362 -63316438386361653065346534653661316366613431653966643334376234363031313265306366 -33363534326634623437663263323939656430383234396531353934313735393334366433663663 -33653533613138623064313137383166343637386263646264666233323733316532613866343639 -36663839376664643033346165656463393634356233343761383738343666323863386130326236 -61363065363037313666613364623561336664666633363163393231626335396364323466643236 -39623766366431663531633866623665643737313036333365363934313036346463636539343836 -38663566613035343661363437636135383933383262643530646339316164333730653336636235 -38313064333534653732346535333432313038666334303065653663393734393134343661626436 -34343735353739396533383932383135656566323063323461653962326235613461626566613837 -37653735626165633365303266363632613838363239653762663462663635653564363334393237 -35666139316561613330613063323336643131336263613065383465393535393136613838636233 -35333065316132643863343633623737323234623836353338323032653162613736326265363334 -35633730376564653731656366623763663962383031336662633436386163333361383435333632 -62336235323237303435653633353535326131666663663766356539623761333863336461303866 -38363361656461333634303139666638616436653534313839313764356631353938663938343131 -66356530393362643730323838313566623064306362373534663462386632623766636139333439 -35613737663762326632653230613132623263376530363036366436303934346562363331303532 -36633936356137346366656664326261336263636237346237326331646465346466356138623665 -32343432663531336561353135303861336366633332353036333230663332363466323739386264 -35656461306438383234656162323933656238393265353631643339336434646237363831376535 -65663166386464663166333032663461373063646532303234353338373461666662306432313166 -36396432376163336635663338653736666231366631646133373930326135393731313131633632 -64633637353230636337306339313364336637643965393630613566383530396561323836646631 -63613336623238623137643966366531653739656535616666353139613566356366326434343134 -61323762643363323236383731306133396631363736346239306463373330353337653637306130 -33616366663362393336326162343833653730343836343137363231643434323439336164356266 -61386566303430396236333164656131366236343865393864333863373330323437373833316563 -63656235623231383938663234363162646237373739643030623538333863306139633339633434 -64383566333066303937616135333138303966633838326238346365663733313133663063666236 -65383764376533396166343166313733393532346434353133663462303430656262306137633963 -36393336363731396538356364376263303031333738643131393138663965336662303264363564 -39366531333133653738636131646132386633653064636637353233386237373630643539633362 -38653436663138616532346535646633396232376232626134373235343637343430326334643566 -35373032353962643262376239643735373130666361643537633939646237363239646233653038 -36306663626162313330396435323565623339613164303331613839343463356331616538653833 -32303234326361323435626466383430396536613364323462373335353435653235633764363135 -38623165636530343465306439633830323764363833653063653132306531336563646431623730 -64313738306265366437656637666636313533313535626463366361666134653435313064326533 -34343735323635353463393532626261613531336166333264323864366635356330616437376139 -63343032363331623366363637356438333130663533623133623932323461366332366133646237 -35643466616336323664633635333339326534613733653930613736313738626539323062663933 -61366266646132326362316665386631616662323161613938653235373739643463363565623934 -30346462623462663963653334373365633235386661363131396261663561646337623966343332 -65346238623733353663393839653338656662663330633537616666663238326139346166643565 -39376230633836353431323439653438666232313561636338333138633565303333633162663934 -39303362633936393663316638666232366361366164333237353062653863633034653830326133 -36376631656263653631666239343264366232663739323766643834333038626666313635613763 -32666339613465393338356537643033316163343761306238306137616532663466363764616165 -62633839376539366138656561653034623565303262313938333239353230633734666337653062 -66653562623862343838383161316238303633383930656561633162353466373932303964636164 -63623665653935396331353230333336636237643037383637393834643838373166343432643736 -33396135363136393133626165363061323265643032666636343739343966343532656530376231 -33376564306438393661613336353537643661306536666530643936393762613465336464346632 -62316636663063623863356339616539306439653638373366623764333964326139393731373834 -36643531376665653037316537333061613136396563663264643363396334313539313335666337 -37613934353261383663383166626438646335386336313132373430643433666565636262633835 -35663334373932376637656263623634333265333131383039383166356362336630353838633665 -34653037376430613831366434383537326133653836613634316133656666366632386132643935 -63366131333735303530363866623962653861343234643830626263623261656433633966653531 -32396566623737366333636466313833643434383562653631316566383230616462353636663266 -64333265373036326461363066306661666637346530396466383762313839666466363465326430 -36666439663163616263623437653761303032643139613063393434373436366162643731396630 -64663536366134633039663033393936323633643730653638303431356630623239366235356134 -34333663366339643236333765613934303661353963646135366332376538656239613634616163 -65633464326161356635633936646539613035343334393633663035356564336432333531636537 -37353038626266623736393733343065666566323661646665643330333934323335323136316230 -32363330326131623433333736343465616434343062363332366432353134373538346337653461 -37313032393933363136356231363834636239353036323634376461646266373964373337396664 -37323764663633343133616439393831633364333363336439313163333464393633343736316333 -63383439356531396633643435643363373731666235653035383338316262323734373738623536 -65383832363263663532303333626366343239373737383661323461373438643932386534626364 -32326230326238396234373836343364306538643632326665323839353366373937353566393462 -38666339646638373132373730386562343734386633396232383962346162316431353531303436 -64353930336366623165313939386538623761323137656230353966303130616262313431376337 -63666163653938366236333237663563393532386239333236313734363734373964316165336566 -33323730643162306366616133303162366137383737346164326432376534326232353664623463 -64353837323738303638346564323033346365303034353931376164643532363932636162666232 -38303838653534383761303364396338376232363733303738666137363235356661653364383438 -34616535666334633234386239323533633561663230313063626436343430613636396636656431 -31323864643137333936303835336333316661336263623963386665653131333065336239363166 -33333533666236306337656131376231336438353730643531626264356537306431356165616531 -33363138363335326662373662616664393333373138343165376462363233303461653965613632 -61313662366439366131363661396535616134663333356338303738356135663232316361643037 -38663533396233326235383539303430326337313663373266646536386234313236353633633962 -34333534616165623038303938626664626232643662653930353133663563343031613230663066 -61323662336464373535643235333062663066366663326230303833383639353362633530353534 -38663239326131383565383232353435396361613964666362616666303236636235663135383766 -64333762313938373565636138363336303635343433373837663766373635313563303839656534 -63636464363663306334353362303862313633633335303630623734633934626130643533353036 -35663335366230666532343863636263316638613761623030353436303638616132393436613061 -30303534363938323635333938623138373234333732373061366234373764313038313362373962 -30343034366437313261663332646336366335656538353832353266653935386134666139353065 -37353235626633366265396463383639363563633030623037373339376265393131633237643737 -30386265353538303662306635313634333161323537613633613261633833323262373836306139 -62646361656435363361363537663531386563623237666230303834663638623133666262666439 -33376533666562306530653364333531336638356665373038356133396439616266613563663839 -63363564316339306239636464323939323631373837383230393331346633343238666430613366 -64386635623561386434306337343231643631386561366363303234613532396663623533363434 -62623361366466316666626330623839666636653066666132323834376436353235353033363830 -62373465353434643932643262643338346334386138346262356266396366366135666330646139 -38366632393761303130643865346533313264366265323731333739396263336339373536336330 -62306634343965653234643032616438653138636533326434646430633763363736636162663935 -64353135316439613636326132316465306238323932386238396437396434323031333730616536 -66613932343630333166313530626539623831303636626635316434383362646632646233343761 -33346565653532646131643537663666333739306265306336316236316433666264393166636533 -30623832333733316133323938373634346634333932353536343364633562653766393665623830 -30333138333361616561336136363466393838343930376264376538363034623038623735336662 -37656666333964323461386330333163326337646566346265626563613531356338346662383330 -66343431646539346139336332346261356362383766326632393136316636396230323734376432 -35386165316266353531626531393661353235386236383163346232333935653630373466336636 -33316137356633636162623963333265343030313038353139343262323136346563363863623137 -65326166666663663831363963656332323737636463613064663831346565666537363237313537 -63323830303766616364656666613535376464346231366565353930303863306465323364363635 -37326561646266353232363937396130653363363931303862356135653261353438393761353830 -33623464393362333764356436306236613235376366643062373036636637373965616465363664 -36313734646535353664366563663737623864323230613131396165363932363733356234366665 -34376663636136393637616436353666633063613232663630653635333432303965636436633462 -35303733303736623234306437386562653466393932353964336266663537666363303835623165 -62643439653937323133383766626532326162303631343464623231376261356533636639343435 -64306232383666316462386235333530333063343236366331616366626463373464326335633839 -36633937616230353338643731386235356461646263653365303636613638326334646632376336 -63363865656362633832323761353265353135363937396434396363373237623465373965643338 -30613236363833623734636135656166323963396330663533323834356133303964623466646537 -37643163343930653131626432353762303262383138386266616235626561626235313865633861 -63616233336334316432616166663162353037316465303132643861373964633832666434306635 -34636234366234633835396361323764643065353937373936386531363738366138343164313766 -36646431616336353961303832313965613263646162363438323039366563346234616432613665 -37636535353066346166386362623033643033333766303139643839623731393961613465393566 -37366665303138383666396438316134646635643762333263303461393437353936646232363865 -65623730626230623438383265353666613463653562666633393861313939643132393336316137 -61646130333065326163316261323764343038653764323264626362336536633762393136376137 -34323561313836303963306331373433373562623562306363306664653763353537373366626430 -61663731326338333139643064326434353039643065643839393833313130326534616639303630 -66386432303162323035373666303931616630623931316639336433303434376436336136383734 -39383837643264623939373431393064303134633337323761343233633061396461613565396230 -65376438626237613530353637623637626636663461303534356436303735613431663363386134 -66343161393738623136326162393537623762383961643332323363353164633431646431616331 -39623734366636663966303338626532356266316661656230633166333738383431636638323433 -61666638363432326261663231303930386630623539306239393534393362653132663861343134 -39373065666262313334376265653538646637343039333765613339363633656634333834393034 -30353734383935383462613561633030613065366332306236313934393039306664396235643733 -31386466653865356266656330623762303539386132303235323739376336623839396530313666 -30373539366364303732343236653239663737633832363735383365386261613539613131623661 -39363438353866356135303539303831653330373761396363633333373566313665336361613631 -66383437346438313361376261363664323838353039323563386639663134366438326262656364 -34623038343839633832353362646438353665333234333035316437613931346333303235313534 -61306261353932323235356266663861366665666139353638323336313236323265366261373564 -33356432646262326236363234333237666533383436303864386662663439326666636461653662 -36396434353034636435643630656634623664306339653033376437373932616262346339653362 -37336363303861373762646666356331366439303762336236353737623761393037623462653262 -38666635386635346130313235373730306466386262666563383238333031373166396634646564 -643136333130623965653064363662663839 diff --git a/ansible/roles/grafana/meta/main.yml b/ansible/roles/grafana/meta/main.yml new file mode 100644 index 0000000..358af87 --- /dev/null +++ b/ansible/roles/grafana/meta/main.yml @@ -0,0 +1,5 @@ +--- +dependencies: + - role: nginx + nginx_acme_sh_domains: + - grafana.l.polsevev.dev diff --git a/ansible/roles/grafana/tasks/main.yml b/ansible/roles/grafana/tasks/main.yml index af0909d..07c1153 100644 --- a/ansible/roles/grafana/tasks/main.yml +++ b/ansible/roles/grafana/tasks/main.yml @@ -35,11 +35,24 @@ become: true - name: Copy prometheus config - ansible.builtin.copy: - src: prometheus.yml + ansible.builtin.template: + src: prometheus.yml.j2 dest: /etc/prometheus/prometheus.yml owner: root group: root mode: "0644" become: true notify: Restart prometheus + +- name: Copy nginx config + ansible.builtin.copy: + src: grafana.conf + dest: /etc/nginx/sites-enabled/grafana.conf + mode: "0644" + become: true + +- name: Reload nginx config + ansible.builtin.service: + name: nginx + state: reloaded + become: true diff --git a/ansible/roles/grafana/templates/prometheus.yml.j2 b/ansible/roles/grafana/templates/prometheus.yml.j2 new file mode 100644 index 0000000..3b7d26d --- /dev/null +++ b/ansible/roles/grafana/templates/prometheus.yml.j2 @@ -0,0 +1,79 @@ +$ANSIBLE_VAULT;1.1;AES256 +64353137393661633061343838663336326364393838646330386564393735613763626337333364 +3136656461653062323531353533616631323833393136620a656235346135653163643232653233 +31396634396130626335653838393437323336303839613434616465643661343262386237616432 +6533623837313231300a633665643230343564303063333363626538653964333562363166316439 +39656336636430396563613462333261383431633363363738633862376264616362623632393137 +65353630396634386265613139373039316536656265396664396432313061333533613864353430 +65306265633136393031643935353662303932303861366436643539306166383838353936653536 +36303566363436633866353262616537633637336264393066393262626231636336346365343733 +63333365623863343030383030396365666437323965633430646439663035386235353531376566 +66633762303932663636633234306138656432393739663433333731363565643964656538313661 +37643634393636633731346233663337623131366264346463663164646264333336346330343533 +33323336636533646530336238376132616131373163376435616561666330356630396166393834 +62623565366165356265656262383033626435383865663963383530623231303234393638303532 +37646462346639373738656433326533333162383239366632336138386439636232376434343436 +39303231616333313134396362386565383937356237643963616639613362666236303533616334 +36396563323565366561373132633363623464383833356366633436386335336464393330643363 +39316432363565363365616231633934366261316466613262373534656561323335613264393436 +34306534396433326661386132313866303437343338633334353864346566366239623034663161 +37623731353336653763396138336536333131396235346437313466663831306133653230343333 +38336462393532306535383463643439353636663661346531303166346264663736633538343664 +37386665616136383637623834383461653436653931393138396633326632396132376234306462 +31653831666133633135663133393562633763326363633761376639386166666436316637633831 +34656234323662313062363761643630643366356436613962313239363433326336623930353530 +38343535363761616633656666333532343635333038306230326630383536336461656163356636 +63373062653638326531656164383034356234623966366434306464636131306165663261363264 +35643436333632363938353562356137316164323535373565613534626666373836646362313634 +35333562343730313031383538623165313163626537653662383431333535373931626565633434 +34373237396566363866356330346165316630366638623461303630613761653432346431636136 +38346162663738313833396461393631323837353563303238666533653733353434306334623162 +31333764356430643139353862326163623138386265356432663730353937303737613865366135 +37613762633930663438633537636264373261313636626436633234616434376135313864373634 +36313666366661396231373532666637353439663730653634316636633635333662363933363638 +65636531313564363063326339663532306639306630326236663839636361303332356634383236 +33643332323138383034363934653266633064306335306138303038353465363837343463366362 +30653165623533383133386661613733626230646363343934373464363864323666393533306330 +64376234346134646566356461333963373535356362656230323534353433353233666136396430 +65633961646536363761396132333930633263306338316361346238613834616461636361336465 +39363761306131313966663332353130313264353530666135653162333530393863366661356533 +31623633373430316566363837626562383136383962396433633536633361316165616631613136 +64313265356362353263663666346362623634333335323766663830666139613834646630353161 +62393435333964636431383231623865363633326331626232646437333334633564336333373934 +35363161636530363733613861333063383066653638626536353235373365393834316661363237 +61633365343961623965356663626466353534356132643431343864643261616665303831643538 +35303435353138316336393034303836323838393061626238396139336635653536613830356266 +63306233323564663736643838613566363637643766353063633935353931376134376532343037 +36393062366336373430616130323264626438626463653833383063386131653633353534363039 +31643035656638623862363461626430326138353131346433633166333831643839663337363866 +30323930316438633266623034306439393036313634353533373838303664373961366662313463 +33366564316433363532343338613261646663656530613362353562306630613563303562373861 +34326565373466636234313935343431363763663332663335666434656366653266326361636632 +62343833316139393433663366656266656134623538343962326162363236663234363461343735 +63653431653831363363633265326661393230616661613562393439373834313965363334303664 +66383764363430343965316263313438633961306233623834633566373062613162626166616439 +31653530646434326666313731613430316338386437336265613234323237336534633835666265 +35316131333366623334326332633839316334616433353566636462616664396466303939306465 +32353935316362616530376265356537376634313765333063326638303764393731366235656234 +64373637613130336663633139366561656665613262663866373965313563643162633631383631 +65386666316565643336326366626230366164303735386564306231633030313331343632393436 +32646665656132616436303062366431643564613630366131373037303737326534326163613338 +34323261663239323936333434643933313933383464303463343864386566653930363762636266 +38376334346265623639346462643832313261366434303931323231646264363166666261363138 +30373836393638333735393461396533366132643861626263613633656634333461363133316265 +32383566653964346661393562636165396330616333323939323662376231363838653637613534 +30386637656239373930376631396561626561643735643761373336323235666331323462623632 +64653432333661333064323636633065333761363031366530333366306566373932316339366338 +38386363333666616138656566386666336466626361613731643837333763313535633833373536 +65313830346333303764663338336161633362363538333437346239373231323135316664636135 +33343838616333363062616630363635323066306165333131396136373766653465326466336339 +31313231383163313263346332646630353230653461346436663465336233373864656332366133 +64396562333865663037623931323638636661623064376365323038323065633634663364333337 +30353166663632636462393162313339616261613832376465663531613762666338373935336637 +30366233636363306266646130393034306339343730376237666461306637623566393232623865 +38363433653931383739366336636364373666346161353836623034336131663661363032373166 +30656237373937323631613530623536633736663532613962646535643432623639633263623038 +39333564373934616235323139383435633030363235663263666361653134633939323437393733 +66393264303638643338663233663735626562336266646664616439373565653834353138386162 +39663630653237346335333366663666623061643734643030313833653330353463646261396661 +3438356139306462663162383738616438323034323538646461 diff --git a/ansible/roles/grafana/vars/main/vault.yml b/ansible/roles/grafana/vars/main/vault.yml new file mode 100644 index 0000000..07896f0 --- /dev/null +++ b/ansible/roles/grafana/vars/main/vault.yml @@ -0,0 +1,52 @@ +$ANSIBLE_VAULT;1.1;AES256 +66336531633136643661393561346163656433336234636237646362393965623230373031613962 +6531663962366662336637363539663937333734376133330a336563366532326130633834343333 +36336437653432626130336466366532663035343235336535366630303863313230366664373664 +6434383935613030320a623265316163303862346638663465613036626531343834356631626461 +61643362383463626362363663623061393332363034396538333734333364653335386165393333 +66393464326666626339363234383435373662363866326466316661343666306536313138653261 +39323064646433626432636435383239346438336435663861343730316366616365303534343733 +31643163633666633238643662336539353564616630653630323837643965333832653135356234 +65353935356662383966303039356263366231346437303733636261653764383133613363356464 +36356238313163333562343937343861373430653234646530373465333833353466636564623863 +37323533346162636637303630663166666663666362353437326266653462636266623631343563 +30646530623638653339663766636162396630343035303563323935343664643032373863383837 +39623235346633303765613336623932366566383337663662306536643737626265343161646262 +39366331626462386430663334373637343166316538613738643665383164383464326432383930 +30366136626565306364643037313665376536303433623831376531623362376131356135366633 +39343935353938316165306166626236333364636335343238376166393531663937323236313037 +32366131633138343264363662663536663761663338643262343734346333303636316630633032 +30313236623137623831376236393932353365363766336138636664383563363966313964343438 +32353862383363613831363931613363626463346639323231313761396137383130643232323637 +64396232623237393433363636333836343162626132373433343130663165316235313562393364 +65383833646366333532636234366462656465346463336463656135653335626135613265353963 +35313830373362643261323739303633656430613439646235633335666339373130613965333639 +33363131336633633135356331663664613137623031663062633865316164353031353165623763 +61343136323061326562353537383239646235313133393538303136393234306261633339373462 +36373864316335306235306635363734343862306462373735363833333439613064333964353231 +30666538333765303834363631396636303761613135626665633263353630343038386536383362 +38663433396366353631346166343038636138663664653831396264376535656432353635303066 +33316432663739626262646131356137303330363739326638636466613439633463366235393031 +36363530306138316438313235666332656265303066663531316666363936636431346361323465 +64333165373362653363653936396536326437613032333565326264363065613933653932346234 +37383437646338653035323662373630326334396632396665396539306466613333333733616464 +37336639313636303931666238643837363734663036383365346566623330326538363837376465 +36616430346135396631343632393335343563656132633236333062383262613631383830306430 +31396562383865316239613932393963336235353138326635333030333232393733633266313862 +36363639316233656362313139643762373732396439363733343432616335616363323435336531 +31333835306234643538336337653633336231373539306436336637353230313466613064333366 +65626261306531393732633833646264613433663432656630613761653933343636366435616638 +36653536376337666630623632306466303337333161316266613837303239613436303630353039 +64616433646237653834386636373630313330396338393761373736326134383634313066333032 +34376163396335346438363436326433643339666664356465306332363961386561316533333263 +37623862396637613935383262346537666663623565393730656536323463316235616139396636 +35353439643963663930323535373937663433313133353561363462363961646362613335393339 +61343630643663386239346135376335323934313939353433633664383732386231356462346132 +32383362353438323333666232633732656533383161623535396363323036656139656339343331 +38313039643265306562333033613464383830633935633963616334343766323639646234393632 +37373862326235643635653735373132373231393838336434326661313036613538356566613062 +37336366623064326664623665336539356238623031343330343966356264323439656230373737 +38663438306630323466623837336438666533653362613761326366306365316561376630663437 +65613936363937323738626265373965666234653832373137303336613338616438623761616535 +32373233633061316137643362363136386632623431656633363636643563363135616435323738 +313764373431633031623434373731316638 diff --git a/ansible/roles/nginx/default/main.yml b/ansible/roles/nginx/default/main.yml new file mode 100644 index 0000000..d757e39 --- /dev/null +++ b/ansible/roles/nginx/default/main.yml @@ -0,0 +1 @@ +nginx_acme_sh_account_email: rolf.martin@glomsrud.no diff --git a/ansible/roles/nginx/tasks/main.yml b/ansible/roles/nginx/tasks/main.yml index 5b9f094..191a0ba 100644 --- a/ansible/roles/nginx/tasks/main.yml +++ b/ansible/roles/nginx/tasks/main.yml @@ -3,6 +3,73 @@ ansible.builtin.apt: pkg: - nginx - - certbot update_cache: true become: true + +- name: Clone acme.sh github + ansible.builtin.git: + repo: https://github.com/acmesh-official/acme.sh.git + dest: /home/ansible/acme + depth: 1 + update: false + version: master + +- name: Install acme.sh + ansible.builtin.command: >- + ./acme.sh --install --log + --days 30 + {{ "--accountemail " + nginx_acme_sh_account_email if nginx_acme_sh_account_email else "" }} + args: + chdir: "/home/ansible/acme" + creates: "~/.acme.sh/acme.sh" + become: true + +- name: Determine if acme.sh is installed + ansible.builtin.stat: + path: "~/.acme.sh/acme.sh" + register: is_acme_sh_installed + become: true + +- name: Upgrade acme.sh + ansible.builtin.command: ./acme.sh --upgrade + args: + chdir: "~/.acme.sh" + when: + - is_acme_sh_installed.stat.exists + register: upgrade_result + changed_when: upgrade_result.rc == 0 and "Upgrade success" in upgrade_result.stdout + become: true + +- name: Create cert path + ansible.builtin.file: + state: directory + path: /etc/nginx/acme.sh/ + mode: "0700" + owner: root + group: root + become: true + +- name: Issue acme.sh certificate(s) (this will sleep for dns_sleep seconds) + ansible.builtin.command: >- + ./acme.sh --issue -d {{ nginx_acme_sh_domains | join(" -d ") }} + --dns dns_cf + args: + chdir: "~/.acme.sh" + become: true + register: issue_result + changed_when: issue_result.rc == 0 and "Cert success" in issue_result.stdout + failed_when: issue_result.rc != 0 and "Domains not changed" not in issue_result.stdout + +- name: Install certs to nginx + ansible.builtin.command: >- + ./acme.sh --install-cert -d {{ item }} + --key-file /etc/nginx/acme.sh/{{ item }}.key.pem + --fullchain-file /etc/nginx/acme.sh/{{ item }}.cert.pem + --reloadcmd "systemctl reload nginx" + become: true + loop: "{{ nginx_acme_sh_domains }}" + args: + chdir: "~/.acme.sh" + register: install_result + changed_when: install_result.rc == 0 and "Reload successful" in install_result.stdout + failed_when: install_result.rc != 0 diff --git a/ansible/roles/nginx/vars/main/vault.yml b/ansible/roles/nginx/vars/main/vault.yml new file mode 100644 index 0000000..276293e --- /dev/null +++ b/ansible/roles/nginx/vars/main/vault.yml @@ -0,0 +1,8 @@ +$ANSIBLE_VAULT;1.1;AES256 +65326333303132373162376233643737636430656266346532653861633262666363313932613232 +3266353232663266646162623138613530656339653038330a376431303736336165333166633461 +61396665323263653137363233373838393863633038376466393636363231636636396561303134 +3339646534306133650a363863646666303637356230363365383037383432313837616330616630 +63643839393766356539633638393761326165646139336230323732396538343735326563353138 +38323064613066366433336165336364646566353763393839353134366334666137356163663339 +333135303861396639653832386431663434 diff --git a/ansible/roles/uptime_kuma/files/docker-compose.yml b/ansible/roles/uptime_kuma/files/docker-compose.yml index 7bab0a2..32de080 100644 --- a/ansible/roles/uptime_kuma/files/docker-compose.yml +++ b/ansible/roles/uptime_kuma/files/docker-compose.yml @@ -1,20 +1,20 @@ $ANSIBLE_VAULT;1.1;AES256 -63643964323736643466386561313136363162356130663130666538343034656336393666333866 -3839386534656266613039373163326464613538353136350a336236343535633666326634633138 -39303365303634633061356164633237316132323961366265306135343631306566396163323637 -6633386566663532320a356362316463316365646135656430623730313732333366336137613761 -32663563313536363163353038323063396633363339303837616635613538353934363463626432 -37643630333565623635303238316632373439623532633138373565396663353238383032376537 -62393130393337303032666331346436626463313234666566366138316637613034383763313233 -38303530353565396665353661623333663435323132313930303661333164386134613234626264 -66316265363933326435623038333830633961666331313736313463303962643730663331336133 -36656165356666353633366536393037343665623939663264643166323934663061626465623130 -63663830663163663334633738623936633036353065653030623962636463636238383466333163 -34656536633438303037326132363537386166376365623062366334343264366638373737633434 -63663336663163616534643364613963646331653762386330633464356335326462383938353436 -66386138343239323466626333343762373565353131333234363732366266303338363039636231 -62323366663937326665343763323265383234336137353766653339613662363035613662643832 -32666661653634346363356465646461623039636663646639396233373031316562643336353361 -38396662666533636562316239323337316465393961313333623033663362633162663662366462 -32386534643661356439303935333336653432323039636137366664643836303566323935636662 -643035366237656561306539356161343431 +66353437386562316639363837303363666530396339363331616231656533613636306238376162 +3132336330656438383933383538663261366336346563660a333163653430656434653132343635 +61356434313737313935383864323437373439323065663266333339383135656262636663316133 +3930346532356561320a353338353866346335386436646663613134306662613931646533363830 +64316139353233383134353433623939643530313130623934636264626435646163613337633435 +37306466623137343932353833613637336638353039356430653039313939373462343133353965 +37626432336661396134623033333735353738376364623563623164656636363333633732643834 +65303964343065316430353666313638633131383535613235333931663837353935333839633830 +65306435373264373735343635333634653435303431623333366433346536633561353264656264 +31626164323230613430666663653731663764373336353362633438656531613532626231626335 +61666238643663646161616230623363316233353533323362616636323836346336376136343237 +35393733383433353731623336633766616662393362356530316530303232666664666565643634 +37343135633862613361366132323937376466393065393632386363323932663438356637613634 +64636131643133366331633633333232643936366633666163386433353536353962613930343963 +36633261393561353963316638653030633437326165653434326231373965313339633035613230 +34373064623461643061663262613232626530616365623939653264643964633466346539396632 +34303761326564623462666639396334316437323634383661646665313133326539313139373737 +65616664626261316439383430653733353966333038653233336133353538643362656232663230 +343831646332356665316631383166653061 diff --git a/ansible/roles/uptime_kuma/files/uptime_kuma.conf b/ansible/roles/uptime_kuma/files/uptime_kuma.conf index 83b8f70..43f0470 100644 --- a/ansible/roles/uptime_kuma/files/uptime_kuma.conf +++ b/ansible/roles/uptime_kuma/files/uptime_kuma.conf @@ -1,26 +1,39 @@ $ANSIBLE_VAULT;1.1;AES256 -31306561383033373639646131353537636465336363643238623137303163353964646166353662 -3466643834303239656430363432333838346633393066620a336238613035646666663832653933 -66353334366364643238376361613436613232306330613138396535646361646636326530323633 -6364386465313863340a353235653934383332333739396230643561663565323335326431636364 -66326133303039336332656430643930636430336232356361623764336338643364346663393563 -34353932326338393365616632306131643530613666316565643636343530323363353033393637 -33653763356666663535663063346533373963386562666534306337653264623134666231316136 -36666339353637653164353066613230356262616365343030356665383162303565363133613966 -32316366626330613133353061653362663637343133373364616466633832653731393462653036 -63613364623862353333393962623532626532383436633362663139623938616564343732336566 -32656561356636343963313463383839666633303034303963333931656333363563306533616134 -32326231336535633035356466636430303862343136363062336463356465306231306165393432 -35363031326538633165346331326138393666383439646438303236656662393938306132353834 -64383764363666626363663662663136383162393263306133343835613932343466323035656435 -31313038383730613335653263383334383861643431613030663133646631383166386436396565 -39323762666363373539373131313761623233366239396266386264636230646334393130633933 -30366133633263363661643338333865636530333431666437363437643235373431383636653266 -34623237643932393336366231393838313663346532326666643632323439636632623037386138 -62353138373435323439383933663665336335316131366538633536373332653938616562316135 -39613933353362623563376539353762333866633037633338623232323330646434313032353962 -63373765613836633264616166316630666134323763366433636438303832343137653664633733 -32336330613261363237313538633734323230373364656530303739643835316561333365643935 -61366432623937383865633766343866353836363037306364356430633136393061323536393461 -62383238663832373035313863326463643833613930333030303430656663656562343637653737 -33393333396130336138393139323037323037373731376235393236343137646163 +39353535343532373237396263626266346462346664633566363139346437316365386339316436 +3935626664386664363939393033386137366661326463370a326131336633393362616635386338 +31633133393464383332653231313032613131653038376337383931636366386262646162333263 +3730386430643439390a636637333664633036316131663534623163303139646533636634653431 +64306636623430326136396533663465653666343335363832343231353633396334313661386339 +63653935656134383636663435393261633337633966333566336534616639636237663836643731 +65343933393765373362633234646334363965613138636139616564636336373930623936623063 +33666139613261303362376332343763363936613464376338643762623736613933303064343765 +31393733383130333737393239336436373664353830646339616661313265336163323964656465 +62663861313264383363653132396531643265643538653136613166396564626564656262656637 +31633364333533373232613435343162353636646665343839623630306665343938643531346364 +39323335383138633137373132643763326663343437323761623735313166376565333734363039 +34356232336262623936386634306636306162356333636164333537383238326266643465366233 +39386561623335343532613031313564626534636435316139393137663338333936636462343030 +36373936623165356335333532613665323639643264623830333730313635383339663161366433 +65353862323331626364613133643262653839316134623963323665623336653962623533343632 +61366334623262613133636635316361663365623130336438343061326465303632656163313739 +37336562356438376364396231316362656632386634333239663963643634623035653335636131 +36313663363639643733353033396436386536653033306630646366366133656662373837353837 +38336464303562343863613638633331643662323738623432323339626364353165313234313864 +63643334306266633361393962306135623764663836323965333561616337393461326231653939 +34363364656338373834666530343838333239363838373530376166383433643031663963313239 +39373135343435643332636437383062656633643562623961396666363966356165623134666234 +35646163353132386136333665303135643538393830633062656138633335303065623366386133 +38633631393463336433656539336363313530373765396532313862323838323161653636393939 +31633930376464353032646565373863316337646166333038323339333430656533373737363639 +61343034396536373965326664333036616465383831306433396339313635643939356134313366 +33323365316162313430323134633839653563393437386161373165616536366532306236643838 +32326465626662373433313039376630656265393931393239376461616331303233323438393864 +35636366643636616533616436336435646232666431646662383234316465356137316333343936 +37396338333436303432663731373238663836383036626533323135633731306466623532383832 +37643835313333316634623266333465663635353664316363376332373261623763396263303331 +66333462626233383233383739393837333735353736636165323738613131303764366331613265 +61323166343437653162333538623932363761666532656230653338666138353139323265616139 +66393037396131303831653161633735303562376432616163663766616336653761356561316666 +37383731613562623936366139613738356630616261363739313766633936333039396638623233 +32376661323266333563323866346666613030383138656366386236323239666636626532316161 +3439303331396635626133356564343037626135343731633761 diff --git a/ansible/roles/uptime_kuma/meta/main.yml b/ansible/roles/uptime_kuma/meta/main.yml index 3d12d71..7514df9 100644 --- a/ansible/roles/uptime_kuma/meta/main.yml +++ b/ansible/roles/uptime_kuma/meta/main.yml @@ -1,4 +1,6 @@ --- dependencies: - common - - nginx + - role: nginx + nginx_acme_sh_domains: + - uptime.l.polsevev.dev