Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅
π£tenv β ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π²Π΅ΡΡΠΈΠΉ Π΄Π»Ρ OpenTofu, Terraform, Terragrunt ΠΈ Atmos Π ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ Terraform, OpenTofu, Terragrunt ΠΈΠ»ΠΈ Atmos Π²Π°ΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΠΈ Π½Π°Π΄ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ. tenv Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΠ΅Ρ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΈ Π΄Π΅Π»Π°Π΅Ρ Π΅Π³ΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΡΠ΄ΠΎΠ±Π½ΡΠΌ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ: β’ ΠΠΈΠ±ΠΊΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΡΠΌΠΈ β Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ OpenTofu, Terraform, Terragrunt ΠΈ Atmos β’ ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ β Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π²ΡΠ΅ ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ΄Π±ΠΈΡΠ°Π΅Ρ Π½ΡΠΆΠ½ΡΡ Π²Π΅ΡΡΠΈΡ β’ ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° PGP (ΡΠ΅ΡΠ΅Π· gopenpgp) ΠΈ cosign β’ ΠΡΡΡΡΠ΅Π΅ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ tfenv ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈ β Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Go, Π±Π΅Π· Shell-ΠΌΠ°Π³ΠΈΠΈ β’ ΠΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ β ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Linux, macOS, Windows ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΠ‘ β’ ΠΡΠΎΡΡΠ°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° β Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ΅ΡΠ΅Π· Homebrew, APT, Chocolatey ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ β’ ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Go-ΠΌΠΎΠ΄ΡΠ»Ρ β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ API ΡΠ΅ΡΠ΅Π· tenvlib Π΄Π»Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ tenv ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ tfenv / tofuenv, Π½ΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄ΡΠΆΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΠΌΠΈ Π² DevOps- ΠΈ SRE-ΠΏΡΠΎΡΠ΅ΡΡΠ°Ρ . π₯Github @devopsitsec