Prima fază a fost să-mi fac manual un RPi ca să rulez niște containere, și cu asta să rezolv conflictele de versiune de Java pe care le aveam dacă încercam să instalez nativ aplicațiile alea în RPiOS. Și mă puteam opri aici bine mersi.CI/CD acasa, la o aplicatie facuta de altcineva? Configuration as code?
Faza a doua a fost când a trebuit să fac reinstalare pe alte RPi-uri, fie că a crăpat ceva, și mi-a durat o veșnicie să-mi amintesc toate comenzile și configurațiile făcute manual. Documentaion is king, dar decât să fac doar un CMDB mai bine fac CMDB + automatizarea necesară pentru ca data viitoare să nici nu trebuiască să iau ad labam toate comenzile din documentație. Trăiască lenea, catalistul inovației și progresului
Faza a treia e când dau de niște proiecte interesante pe git dar care nu oferă nici pachete gata compilate, nici imagine pentru un container. Varianta cea mai curată/elegantă e să fac un container în care să bag aplicația aia, fără să mânjesc host OS-ul pentru teste și fără să tot reinstalez OS-ul (cu toată automatizarea de la faza a doua). Ideal ar fi să pot automatiza tot lanțul ăsta pornind de la codul sursă, să pot instala ușor actualizările atunci când proiectul le publică. Iar dacă cu ocazia asta pot să experimentez cu alde Puppet, Ansible, Chef, Terraform și alte buzzwords, numa' bine capăt hands-on experience pentru când mă întâlnesc cu astea la job.
Nimic din astea nu e obligatoriu, sunt doar oportunități de învățat și încercat chestii noi pentru cine e interesat. Poți la fel de bine să trăiești fericit și cu, și fără aparat de sudură acasă, nu?