ืคืืชืื ื DevOps ืืืืื ืืืืืชื ื. ืืืื ื 8 ืื ืฉืื, ืืืกืื ืืืืชื ืืื ืืื ืืื ืืืืื ืืืก. ืคืชืืื Vasya ืขืื, ืืืืืชื ืื ืืืฉืืื ืืืฉืืง ืคืจืืืงื ืืืฉ ืฉืกืืคืง ืขื ืืื ืคืืชืื Windows. ืืฉืืจืงืชื ืืช ืื ืขืจืืืช ืืคืืชืื ืฉื Windows ืขื ืืฉืืืื, ืืื ืชื ืฉืืืฆื ืืื...
ืื ืืชืืื ืืกืืคืืจ ืืืืกื ืืจื ืกืื ืฆ'ืื ืืื ืขื
ืืืฆื ืืืขืืืจ ืืงืืืช ืืืื ืืืืฅ ืคืจืืืงื ื-RPM ืืืืฆืขืืช ืืืืช TFS, Puppet, Linux .NET? ืืืฆื ืืชืืื ืืืืจืกืืืช ืฉื ืืกื ื ืชืื ืื ืฉื ืคืจืืืงื ืื ืฆืืืช ืืคืืชืื ืฉืืืข ืืช ืืืืืื Postgres ื-Flyway ืืคืขื ืืจืืฉืื ื, ืืืื-ืืืื ืืื ืืืจืชืืื? ืืืฆื ืืืฉืชืื ืขื Docker? ืืื ืืื ืืข ืืคืชืื NET ืื ืืืฉ ืืช Windows ืืืฉืืืงืื ืืืืืช Puppet ืืืื ืืงืก? ืืื ืืคืชืืจ ืงืื ืคืืืงืืื ืืืืืืืืืืืื ืื ืืื ืื ืืืื, ืื ืืจืฆืื ืืื ืืืฉืืืื ืืชืืืง ืืช Windows ืืืืฆืืจ? ืขื ืื, ืืื ืื ืขื Web Deploy, ืืืืงืืช, CI, ืขื ืฉืืืืช ืืฉืืืืฉ ื-TFS ืืคืจืืืงืืื ืงืืืืื, ืืืืืื, ืขื ืงืืืื ืฉืืืจืื ืืคืชืจืื ืืช ืขืืืื, ืืชืืืื ืืื"ื ืฉื ืืืืกื ืืจ.
ืื, ืืืกืื ืขืืื, ืืืฉืืื ืขืืื, ืืืคืชืืื ืืืืื ืืงืืฆืจ ืจืื ืขื ืงืืฉืื. ืืฉืืื ืชื ืืืกืืฃ ืฉืื ืืคืฉืจ ืืืืืืจ ืืช ืืืกืื, ื ืืืฉืชื ืืขื ืืื ืื. ืืืืชืืืื ืืขืจืืชื ืืช ืืืื ื-WMs ืืฆื ืฉืื ื. ืืฆืืื ืื ืืื ืืืืืช Windows.
ืืืืืื ืฉืื ื ืืคืชืืื DevOps ืืืืคื ืคืขืื, ืืื ืชื ืฉืฆืจืื ืืฉื ืืช ืืฉืื ืืืืฉื ืืืกืคืงืช ืืคืืืงืฆืื ืืืฉื. ืืื ืจืง โโืคืชืจืื ืืื - ืื ืืคืฉืจ, ืืขืืจ ืืื ืืืื ืืงืก. ืืืื ืขืืจ ืื - ืืืืชื ืืื .Net ืืืจ ืืืขืืจื ืืืื ืืงืก, ืืืื ืชื ืฉืื ืืคืชืจืื!
ืืื ืืืืช .NET ืืฉืืืื ืขื ืืื ืืงืก?
ืืื ืืื ืืกืคืจ ืกืืืืช. ืืื "ืืฉืื ืืกืฃ" ื"ืื ืืฉืื", ืืจืื ืืืืจ ืืฉื ื - ืืืื ื. ืจืืฉืืื ืขืืืจ MSDB ืขืืื ื-1 ืืืืจ; ืืืืงืช ืฆื ืฉื ืืืื ืืช ืืืจืืืืืืืช ืฉื Windows ืขืืื ืืืืช ืืืืจืื. ืขืืืจ ืืืจื ืืืืื ืื ืืืฆืื ืืืืื. ืืืื ืื ืึดืกึธืืึนื - ืกืืื ืจืืฉืื ื. ืื ืืืฉืื ืืืืชืจ, ืืื ืืื ืืืฉืืขืืชืืื ืฉืืื.
ืืืื ืืช ืืืจืืืืืืืช ืฉื Windows ืชืืคืกืืช ืืืชืจ ืืฉืืืื ืืืืืื ืืืื ืืงืก - ืื ืืืืื. ืืืชืืฉื ืืงื ื ืืืืื ืฉื ืืืืจื ืืืืืื, ืืืจื ื ืืืื ืืงืก.
ืืืขืจืืช ืคืฉืื ืืฉืืืืช ื-CI ืงืืื. ืื ื ืจืืืื ืืขืฆืื ื DevOps ืืชืงืืืื, ืื ื ืืฉืชืืฉืื ืืืืื, Jenkins ื-GitLab CI, ืื ืฉืจืื ืืขืืืื ืฉืื ื ืคืืขืืช ืขื ืืื ืืงืก.
ืืกืืื ืืืืจืื ื ืืื ืืืืื ื ืื. ืืืื ื ืฆืจืืืื ืืืืจืื ืืช ืืืกืื ืืื ืืกื ื"ืืืืืื" - ืืืืจ'ื ืฉืืืื ืื ืืช ืืืืง ืืืื ื, ืืืืืืื ืฉืืจืืช ืืื ืืคืจืขื ืืืชืืืงืื ืฉืืจืืชืื ืืืงื ืืฉื ื. ืื ืืืจ ืืืืจื ืืช ืขืจืืืช ืืื ืืงืก, ืื ืฉืืจืื ืืืชืจ ืงื ืืื ืืืืื, ืืชืืื ืืืชืืืง ืืืฆืจ ืืืฉ ืืืฉืจ ืืืฉืงืืข ืืฉืืืื ื ืืกืคืื ืืื ืืืืื ืืช ืืืชื ืคืื ืงืฆืืื ืืืืช ืฉื ืชืืื ื ืขืืืจ ืคืืืคืืจืืช Windows.
ืืจืืฉืืช
ืงืืื ืื - ืื ืืืืช ืฉื ืืคืชืจืื ืืืืฉ ืืืคืชืืื. ืื ืืืื ืืื ืืืื ืื ืืฉืื ืื, ืืืืืื ืืืืจ ืฉื ืืืจื ืืืืื ืืื ืืงืก. ืืคืชืืื ืจืืฆืื ืืช Visual Studio ืืืืื ืขืืืื, TFS ืขื ืืืืงืืช ืืืืืืืืืช ืืืืืืืื ืืฉืืืงืื. ืืืคื ืืืืฉื ืืืืฆืืจ ืืื ื ืืฉืื ืืื. ืืื, ืืืืื ื ืื ืืฉื ืืช ืืช ืืชืืืื ืืจืืื ืืืืฉืืืจ ืืื ืืื ืฉืื ืื ืืคืืชืื Windows.
ืืจืืฉ ืคืจืืืงื ืืืฉ ืืืฉืชืื ื-CI ืงืืื. ืืืกืืืืช ืืืจ ืืื ืฉื ืืื ืืขืืืื ืืืืชื ืฆืจืืื ืืืืขืฉืืช ืชืื ืืชืืฉืืืช ืืคืจืืืจืื ืฉื ืืขืจืืช ื ืืืื ืืชืฆืืจื, ืชืงื ื ืืกืคืงื โโืืงืืืืื ืืืขืจืืืช ื ืืืืจ.
ืงืืืช ืชืืืื ืืชืคืขืื, ืืชื ืื ืืกืฃ ืื ืืกื ืืื ืืืื ืืื ืืืฉืชืชืคืื ืืืืฉืื ืืืืืืืช ืฉืื ืืช ืืืืืืงืช ืืชืืืื.
ืืืืืื - ืืชืืื.
Win Group Development
ืขื ืื ืฆืืืช Windows ืขืื ืื?
ืขืืฉืื ืื ื ืืืื ืืืืื ืืช ืื ืืืืืืื IdentityServer4 ืืื ืืืืคื ืืื ืืืช ืืื ืืื ื-ADFS ืขื ืืืืืืช ืืืืืช, ืื ืื ืืืืช ืืกืืจืช ืืืฉืืช - ืื ืขืื ืืืคืชื, ืฉืื ืืชื ืื ืฆืจืื ืืืจืื ืืืชืืืช ืกืงืจืืคืืื ืฉื SQL, ืืื ืืชืืจ ืฉืืืืชืืช ืืืกื ืื ืชืื ืื ืืืื ืื OOP. ืืื ืื, ืืืืื ืืืืื ืืชืืื ืืช ืืคืขืืื, ืืกืชืืืชื ืขื ืืขืจืืื ืืื ืืืืื ืืื ืืชื ืืชืืืช ืฉืืืจื, ืืืืืืชื ืจืง ืืช PostgreSQL ื-Git.
ืืืืชื ืชืงืืคื ืืฉืชืืฉื ื ืืืืคื ืคืขืื ืึผืึผืึผึธื ืืืขืจืืช ืื ืืืื ืชืฆืืจื. ืืจืื ืืคืจืืืงืืื ืฉืื ื ืืฉืชืืฉื ื GitLab CI, ืืืกืื, ืฉืืจืืชื ืขืืืก ืืืื ืืืืื ืื ืืืืฆืขืืช HAProxy ืคืืงื ืขื ืืื ืขื ืืืืืงืก, ืจืฆืืขืืช ืืจืคื ื ะธ ืคืจืืืชืืืก, ืืืจ, ืืื ืื ืืกืชืืื ืขื ืคืืกืืช ืืจืื HP c ESXi ืขื VMware. ืืืื ืืืืจืื ืืช ืื - ืงืืืกืืงื ืฉื ืื'ืื ืจ.
ืืืื ื ืกืชืื ืื ื ืกื ืืืืื ืื ืงืจื ืืคื ื ืฉืืชืืื ื ืืช ืื ืืืชืขืจืืืืืช ืืืื.
ืื ืงืจื
TFS ืืื ืืขืจืืช ืืืงื ืืืื ืฉืื ืจืง ืืกืคืงืช ืงืื ืืืืคืชื ืืืืื ืช ืืืืฆืืจ ืืกืืคืืช, ืืื ืื ืืขืืช ืกื ืืืื ืืืจืฆืื ืืืืฉื ืืืื ืขื ืฉืืจืืชืื ืฉืื ืื - ืืื ืืกืคืง CI ืืจืืช ืืืฆื ืคืืืคืืจืืืช.
ืืขืืจ, ืืื ืืื ืืืื ืืช ืืืฆืงืื. TFS ืืฉืชืืฉ ืืืกืคืจ ืกืืื ื Build, ืฉืฉืืืฉื ืืืจืืืช ืคืจืืืงืืื ืจืืื. ืืื ืกืืื ืืฉ 3-4 ืขืืืืื ืืืงืืื ืืฉืืืืช ืืืืืขื ืืช ืืชืืืื. ืืืืจ ืืื, ืขื ืคื ืชืืื ืืืช ืืฉืืจืืจ, TFS ืกืืคืงื ืืช ื-Build ืืืจื ืฉื ืืคื ืืฉืจืช ืืืืฉืืืื ืฉื Windows.
ืื ืจืฆืื ื ืืืฉืื?
ืื ื ืืฉืชืืฉืื ื-TFS ืืฆืืจื ืืกืคืงื โโืืคืืชืื, ืืืคืขืืืื ืืช ืืืคืืืงืฆืื ืขื ืฉืจืช Linux Application, ืืืฉ ืืื ืืื ืกืื ืฉื ืงืกื. ืึถื ืงืืคืกืช ืงืกื ืืืฉ ืืื ืืขืืืื ืฉืืคื ืื. ืืคื ื ืฉืืคืจืง ืืืชื, ืืงื ืฆืขื ืืฆืืื ืืืืืจ ืืื ืืืืื ืขื ืืืคืืืงืฆืื.
ืคืจืืืงื
ืืืคืืืงืฆืื ืืกืคืงืช ืคืื ืงืฆืืื ืืืืช ืืืืคืื ืืืจืืืกืื ืืฉืืืืื ืืจืืฉ.
ืืงืื
ืืื ืฉื ื ืกืืื ืืฉืชืืฉืื. ืจืืฉืื ืืฉืื ืืืฉื ืขื ืืื ืื ืืกื ืืืืฆืขืืช ืืืฉืืจ SSL SHA-2. U ืืฉื ื ืืืืชื ืืืฉื ืืืืฆืขืืช ืื ืืกื ืืกืืกืื.
HAProxy
ืืืืจ ืืื ืืงืฉืช ืืืงืื ืืืขืืจื ืื HAProxy, ืืฉืจ ืคืชืจื ืืช ืืืขืืืช ืืืืืช:
- ืืจืฉืื ืจืืฉืืช;
- ืกืืื SSL;
- ืืืื ืื ืืงืฉืืช HTTP;
- ืืงืฉืืช ืฉืืืืจ.
ืชืขืืืช ืืืงืื ืืืืชื ืืืืจื ืืฉืจืฉืจืช. ืื ืื ื - ืกืืืืช ืืื ืื ื ืืืืืื ืืืจืฉืืช ืืืช ืืขืฆืื ื, ืืืืืื ืฉืื ื ืืขืฆืื ื ืื ืคืืงืื ืชืขืืืืช ืืืงืืืืช ืฉืืจืืช.
ืฉืืื ืื ืื ืงืืื ืืฉืืืฉืืช, ืืืื ื ืืืืจ ืืขื ืืืืฉื.
ืงืฆื ืืืืจื
ืื ืชืื ื ื ืืืืฆืจ ืืช ืืงืฆื ืืืืืจื ืืืื ืืงืก. ืืงืฆื ืืืืืจื ืืงืืื ืืื ืืจืืงืฆืื ืขื ืืกื ืื ืชืื ืื, ืืืขื ืืช ืจืฉืืืช ืืืจืฉืืืช ืืืจืืฉื ืืืืืจ ืืื, ืืืชืื ืืืืื ืืจืฉืืืช ืืฉ ืืืฉืชืืฉ ืืืืจืฉื, ืืกืคืง ืืืฉื ืืืชืืื ืขื ืืกืืืื ืคืื ื ืกืืื ืืฉืืืืชื ืืืืฆืืข, ืื ืืืคืงืช ืืื ืืืฉืื.
ืืืกืืื ืขื HAProxy
ืื ืืกืฃ ืืฉื ื ืืืงืฉืจืื ืฉืื ืืงืื ื ืืืื, ืืื ืื ืืงืฉืจ ืืืืชื. IdentityServer4 ืจืง ืืืคืฉืจ ืื ืืืืื ืก, ืืื ืื ืืืื ืืื ืื ืืืืง ืขืืืจ ADFS - Active Directory ืฉืืจืืชื ืืคืืจืฆืื.
ืืงืฉืช ืืืืืช ืืืคืื ืืืกืคืจ ืฉืืืื. ืฆืขื ืจืืฉืื - ืืงืื ื ืื ืก ืืืืง ืืืืืจื, ืฉืชืงืฉืจ ืขื ืฉืจืช ืื ืืืืง ืืช ื ืืืืืชื ืฉื ืืกืืืื ืขืืืจ ืืืงืื. ืื ืืื ืื ื ืืฆืื, ืืืงืฉื ืืืืืจื ืืืจื ืืืงืฉืจ ืืื ื ืืื ืืืืขื, ืื ืขื ืืคื ืื, ืืขื ืืืคื ืื ืืื ืขืืจื ืืืืืช.
ืฉืื ืฉื ื โ ืืืงืฉื ืืชืงืืื ืืืฃ ืืืจืฉืืืช ื-IdentityServer, ืืืื ืืืงืื ื ืจืฉื, ืืืืกืืืื ืืืืืื ืืื ืืืคืืข ืืืกื ืื ืชืื ืื ืฉื IdentityServer.
ืฆืขื ืฉืืืฉื - ืืืงืื ืืืคื ื ืืืืจื ืืืงืฉืจ ืฉืืื ื ืื ืืืืข.
ื-IdentityServer4 ืืฉ ืชืืื ื: ืืื ืืืืืจ ืืช ืืชืืืื ืืืงืฉืช ืืืืืจื ืืืืฆืขืืช HTTP. ืื ืืฉื ื ืืื ื ืืืงื ื ืืืงืืช ืืฉืจืช, ืื ืืฉื ื ืืื ืืืจื ื ืืช ืขืฆืื ื ืขื ืืชืืขืื, ืืื ืคืขื ืงืืืื ื ืืงืฉื ืจืืฉืื ืืช ืฉื ืืงืื ืขื ืืชืืืช URL ืฉืืืืขื ืืจื HTTPS, ื-IdentityServer ืืืืืจ ืืช ืืืชื ืืงืฉืจ, ืืื ืขื HTTP. ืืืื ื ืืืื! ืืืขืืจื ื ืืช ืื ืื ืืจื ืืงืฉืจ ืืืืืช ื-HAProxy, ืืืืืชืจืืช ืืืื ื ืฆืจืืืื ืืฉื ืืช ืืช ืคืจืืืืงืื ื-HTTP ื-HTTPS.
ืื ืืฉืืคืืจ ืืืืคื ืืกืืช?
ืืกืื ื ืืกืฃ ืขื ืืื ืฉืืืืฉ ืืคืชืจืื ืืื ืื ืืืจืฉืืช ืงืืืฆืช ืืฉืชืืฉืื, ืืฉืืืื, ืืืืืื ืฉืื ืืฆืื ื ืืช IdentityServer4 ืืฆืืืช ื ืคืจื ืืงืืข ื ืคืจื, ืืื ืืฉืชืืฉื ื ืื ืืื ืขื ืืงืฆื ืืืืืจื ืืืืชื ืฉืจืช ืื ืคืืขื ืืงืฆื ืืืืืจื ืฉื ืืืคืืืงืฆืื .
ืืื ืื ืืืืจ ืืขืืื
ืื, ืืื ืฉืืืืืชื - Magic Box. ืื ืื ื ืืืจ ืืืื ืื ืฉืืืืื ืื ื ืืืชืงืื ืืืืืื ืืื ืืงืก. ืืืื ื ื ืกื ืืฉืืืืช ืกืคืฆืืคืืืช ืฉืืจืฉื ืคืชืจืื ืืช.
ืืชืืื ืืืื. ืืื ืืกืคืง ืืื ืื ืืช ืชืฆืืจืช ืืฉืืจืืช ืืืืคืืืงืฆืื, ืืื ืฆืืจื ืืืชืื ืืชืืื ืื ืืื ืืืื. ืืืื ืขืืคืจืื ืืจืื ืืจืืืืืช ืืื ืืืจ ืืืืขืืืืช ืื ื ืขืฉื.
ืฉืืืช ืืกืคืงื. ืืกืื ืืจื ืืื RPM. ืืืื ืืืื ืื ืฉืืืื ืืงืก ืืชื ืื ืืืื ืืืขืืื, ืืื ืืคืจืืืงื ืขืฆืื, ืืืืจ ืืืจืืื, ืืื ืงืืืฆื ืฉื ืงืืฆื DLL ืื ืืชื ืื ืืืคืขืื. ืืื ื-150 ืืืื, ืืคืจืืืงื ืืื ืื ืงืฉื. ืืคืชืจืื ืืืจืืื ื ืืืืื ืืื ืืืจืื ืืช ืืืื ืืจื ืืื ืืชืื RPM ืืืคืจืืก ืืช ืืืคืืืงืฆืื ืืื ื.
ืืืจืกืืืช. ืืืื ื ืฆืจืืืื ืืฉืืจืจ ืืขืชืื ืงืจืืืืช ืืืื, ืืืืื ื ืฆืจืืืื ืืืืืื ืืื ืืืฆืืจ ืืช ืฉื ืืืืืื. ืื ืฉืืื ืฉื ืจืืช ืืืื ืืืจืฆืื ืขื TFS. ืืื ืื ื ืกืืื ืื ืืื ืืืื ืืงืก. ืืืฉืจ TFS ืฉืืื ืืฉืืื ืืืืคื - ืขืืื - ืืกืืื Build, ืืื ืื ืืขืืืจ ืื ืืืืจื ืฉื ืืฉืชื ืื ืฉืืืืขืื ืืกืืคื ืฉื ืืืจ ืืกืืืืช ืชืืืื ืืืืคื. ืืฉืชื ื ืกืืืื ืืื ืืืืืื ืืช ืฉื ื-Build, ืฉื ืืืจืกื ืืืฉืชื ืื ืืืจืื. ืงืจื ืขืื ืขื ืื ืืกืขืืฃ "ืื ืืืช ืืืืืช RPM".
ืืืืจืช TFS ืืกืชืื ืืืงืืช Pipeline. ืืขืืจ, ืืกืคื ื ืืช ืื ืคืจืืืงืื Windows ืขื ืกืืื ื Windows, ืื ืืขืช ืืืคืืข ืกืืื ืืื ืืงืก - ืกืืื Build, ืฉืฆืจืื ืืืืื ืืืชื ืืงืืืฆืช ื-build, ืืืขืฉืืจ ืืืื ืืคืฆืื, ืืืืืจ ืืืื ืกืื ืฉื ืคืจืืืงืืื ืืืื ื ืขื ืกืืื Build ืื , ืืืืืฉืื ืืฉื ืืช ืืช ื-Pipeline.
IdentityServer. ADFS ืืื ืื ืืืจื ืฉืื ื, ืื ืื ื ืืืืืื ืขื ืงืื ืคืชืื.
ืืืื ื ืขืืืจ ืขื ืืืจืืืืื.
ืงืืคืกืช ืงืกื
ืืืจืื ืืืจืืขื ืืืงืื.
ืกืืื Linux Build. ืืื ืืงืก, ืื ืื ืื ื ืืื ืื ืืื - ืื ืืืืื ื. ืืืง ืื ื ืขืฉื ืืฉืืืฉื ืฉืืืื.
- ืืืืจ ืขืืืืื ืืื ืืื, ืฉืื ืืืืชื ืฆืคืืื ืขืืืื ืืืืืจืช ืขื ืืคืจืืืงื.
- ืืชืงื ืืช .NET Core 1.x. ืืื 1.x ืืืฉืจ 2.0 ืืืจ ืืืื ืืืืืจ ืืกืื ืืจืื? ืื ืืฉืืชืืื ื ืืคืืชืื, ืืืจืกื ืืืฆืืื ืืืืชื 1.09, ืืืืืื ืืขืฉืืช ืืช ืืคืจืืืงื ืขื ืืกืืกื.
- Git 2.x.
ืืืืจ RPM. ืืืืืืช RPM ืฆืจืืืืช ืืืืืช ืืืืืกื ืืช ืืืคืฉืื. ืืื ืื ืืืืชื ืฉื ืฉืชืืฉ ืืืืชื ืืืืจ RPM ืืจืืื ื ืฉืืืื ืืื ืืืืจืืื ืฉื ืืื ืืงืก. ืื ืื ืฉืื ืขืฉื. ืฉืจืช ืืืืืจ ืืืืืจ ืืืง ืจืฉืช ืฉืืืจืื ืืช ืืืืืช ื-RPM ืื ืืจืฉืช ืืืืืงืื ืฉืฆืืื. ืืจืกืช ืืืืืื ืืืืื ื-webhook ืขื ืืื ืกืืื ื-Build.
GitLab. ืชืฉืืืช ืืื! GitLab ืืื ืืฉืืฉ ืื ืืช ืืืคืชืืื, ืืื ืืช ืืืืงืช ืืชืคืขืื ืืื ืืฉืืื ืขื ืืจืกืืืช ืืคืืืงืฆืืืช, ืืจืกืืืช ืืืืื, ืื ืืจ ืืช ืืืฆื ืฉื ืื ืืืื ืืช ืืื ืืงืก, ืืืื ืืืืกื ืช ืืช ืืืชืืื - ืื ืืื ืืคืกืืื ืฉื Puppet.
ืึผืึผืึผึธื - ืคืืชืจ ืืช ืื ืืืขืืืช ืืฉื ืืืืช ืืืืืืงืช ืืืกืคืง ืืืืืง ืืช ืืชืฆืืจื ืฉืื ืื ื ืจืืฆืื ื-Gitlab.
ืื ืื ื ืืชืืืืื ืืฆืืื. ืืืฆื ืคืืขืืช ืืฉืืื DLL ื-RPM?
ืืฉืืื DDL ื-RPM
ื ื ืื ืฉืืฉ ืื ื ืืืื ืจืืง ืืคืืชืื NET. ืืื ืืฉืชืืฉ ื-Visual Studio ืืืืฆืจ ืขื ืฃ ืฉืืจืืจ. ืืืืจ ืืื, ืืื ืืขืื ืืืชื ื-Git, ื-Git ืืื ืืื ืืฉืืช TFS, ืืืืืจ, ืื ืืืืจ ืืืคืืืงืฆืืืช ืฉืืืชื ืขืืื ืืืคืชื.
ืืืืจ ืืื TFS ืจืืื ืฉืืืืข commit ืืืฉ. ืืืื ืืคืืืงืฆืื? ืืืืืจืืช TFS ืืฉ ืชืืืืช ืืืฆืืื ืช ืืืื ืืฉืืืื ืืฉ ืืกืืื Build ืืกืืื. ืืืงืจื ืื, ืืื ืจืืื ืฉืื ืื ื ืืื ืื ืคืจืืืงื .NET Core ืืืืืจ ืกืืื Linux Build ืืืืืืจ.
ืกืืื ื-Build ืืงืื ืืช ืืืงืืจืืช ืืืืจืื ืืช ืืืจืืฉ ืชืืืช ืืืืืจ NET, npm ืืื'. ืืืืืจ ืื ืืืช ืืืคืืืงืฆืื ืขืฆืื ืืืืจืืื ืฉืืืืจ ืืื, ืฉืืื ืืช ืืืืืช ื-RPM ืืืืืจ RPM.
ืืฆื ืฉื ื, ืงืืจื ืืืืจ ืืื. ืืื ืืก ืืืืงืช ืืชืคืขืื ืืขืืจื ืืฉืืจืืช ืืืฉืงืช ืืคืจืืืงื: ืืื ืืฉื ื ืืช ืืจืกืืืช ืืืืืืืช ืืืจื ืืืืืจ ืฉืื ืืืืืกื ืืชืืื ืืืคืืืงืฆืื, ืืืืืจ ืืื Puppet ืืืคืขื ืืื, ืืืื ืืช ืืืืืื ืืืืฉื ืืืืืืจ, ืืืืจืกื ืืืืฉื ืฉื ืืืคืืืงืฆืื ืืืื ื ืืฉืืืืฉ.
ืืื ืคืฉืื ืืืืืื, ืืื ืื ืงืืจื ืืชืื ืกืืื ื-Build ืขืฆืื?
ืืจืืื DLL RPM
ืงืืื ืืงืืจืืช ืคืจืืืงื ืืื ืืืช ืืฉืืืืช ื-TFS. ืื ื ืกืืื ืืชืืื ืืื ืืช ืืช ืืคืจืืืงื ืืขืฆืื ืืืงืืจืืช. ืืคืจืืืงื ืืืืจืื ืืืื ืืกื ืงืืฆื DLL, ืืฉืจ ืืจืืืื ืืืจืืืื zip ืืื ืืืคืืืช ืืช ืืขืืืก ืขื ืืขืจืืช ืืงืืฆืื.
ืืจืืืื ื-ZIP ื ืืจืง ืืคื ืืกืคืจืืืช ืื ืืืช ืืืืืช RPM. ืืืืจ ืืื, ืืกืงืจืืคื ืฉื Bash ืืืชืื ืืช ืืฉืชื ื ืืกืืืื, ืืืฆื ืืช ืืจืกืช ื-Build, ืืช ืืจืกืช ืืคืจืืืงื, ืืช ืื ืชืื ืืกืคืจืืืช ื-build, ืืืจืืฅ RPM-build. ืืืืจ ืืฉืืืช ืืื ืืื, ืืืืืื ืืชืคืจืกืืช ื- ืืืืจ ืืงืืื, ืฉื ืืฆื ืืกืืื Build.
ืืืืจ ืืื, ืืืกืืื Build ืืฉืจืช ืืืืืจ RPM ืืงืฉืช JSON ื ืฉืืืช ืืฆืืื ืืช ืฉื ืืืจืกื ืืืืื ื. Webhook, ืฉืขืืื ืืืืจืชื ืงืืื ืืื, ืืืจืื ืืช ืืืืืื ืืื ืืืฉ ืืืืืืจ ืืืงืืื ืืกืืื Build ืืืืคื ืืช ืืืืืื ืืืืฉ ืืืื ืืืชืงื ื.
ืืืืข ืกืืืืช ืืฉืืื ืืืืืืืช ืืกืคืฆืืคืืช ืืื ืืืืืจ RPM? ืืื ืื ื ืื ืืืื ืืฉืืื ืืื ืืช ืืืืืื ืืืืจืืืช ืืืืืจ? ืืขืืืื ืืื ืฉืืื ืชื ืื ืืืืืืช ืืืืืืืช. ืชืจืืืฉ ืื ืืืืื ืืช ืืืคืฉืจืืช ืฉื ืื ืฉืื ืื ืืืจืฉืื ืืืขืืืช ืืืืืืช RPM ืืฉืจืช ืฉื ืืืฉ ืืื ืืืื ืืช ืืื ืืงืก.
ื ืืืื ืืจืกืืืช ืฉื ืืกื ื ืชืื ืื
ืืืชืืืขืฆืืช ืขื ืฆืืืช ืืคืืชืื ืืชืืจืจ ืฉืืืืจ'ื ืืื ืืืชืจ ืงืจืืืื ื-MS SQL, ืืื ืืจืื ืืคืจืืืงืืื ืฉืืื ื Windows ืืืจ ืืฉืชืืฉื ื ืืื ืืืื ื-PostgreSQL. ืืืืืื ืฉืืืจ ืืืืื ื ืื ืืืฉ ืืช ืื ืื ืฉืฉืืื, ืืชืืื ื ืืืฉืชืืฉ ื-PostgreSQL ืื ืืื.
ืืืืง ืืื ืื ื ืจืืฆื ืืกืคืจ ืืื ืืื ืืจืกื ื ืืช ืืกื ืื ืชืื ืื ืืืื ืืืจื ื ืืื Flyway ื-Entity Framework Core. ืืืื ื ืกืชืื ืขื ืืืชืจืื ืืช ืืืืกืจืื ืืช ืฉืืื.
ืืกืจืื ืืช
ืืกืืื ืืืืกื ืืืื ืจืง ืืืืืื ืืื, ืื ืื ื ืื ืื ื ืื ืืืืืื ืืืืืจ ืืืืจื - ืื ืืืกืจืื ืืฉืืขืืชื. ืืชื ืืืื ืืืฉืืืช ืืืชื ืขื Entity Framework Core ืืืจืืื ืืืจืืช - ืืืืื ืช ื ืืืืช ืืืคืชืืื. ืืชื ืืืืจ ืฉืฉืื ื ืืช ืื ืืืืืช, ืืืงืจืืืจืืื ืืขืืงืจื ืืื ืื ืืฉื ืืช ืฉืื ืืืจ ืืคืืชืื Windows.
ืขืืืจ Flyway us ืืื ืฆืืจื ืืกืื ืฉื ืขืืืคืืืื ืฉืืืืจ'ื ืื ืืืชืื ืฉืืืืชืืช SQL. ืื ืืจืื ืืืชืจ ืงืจืืืื ืืคืขืืื ืืืื ืื OOP. ืืชืื ื ืืืจืืืช ืืขืืืื ืขื ืืืืืืงืื ืืกื ื ืชืื ืื, ืืคืงื ื ืฉืืืืชืช SQL ืืืืฆืื ื ืืืชื ืืคืืขื. ืืืจืกื ืืืืฉื ืฉื ืืกื ืื ืชืื ืื ืืืื ื, ืืืืงื - ืืื ืืกืืจ, ืืื ืขืืื.
ื-Entity Framework Core ืืฉ ืืื ืืก - ืืขืืืกืื ืืืืื ืืื ื ืฉืืืืชืืช SQL ืื ืืืคืืืืืืืช, ืืืืจืืื ืืืกื ืื ืชืื ืื ืืืืื ืืืืืช ืืฉืืขืืชืืช. ืืื ืืืืืื ืฉืืื ืื ื ืฉืืจืืช ืขืืืก ืืืื, ืื ืื ื ืื ืืืฉืืื ืืช ืืขืืืก ืืืืืช RPS, ืงืืืื ื ืืช ืืกืืืื ืื ืืืื ืืืืฆืื ื ืืช ืืืขืื ืื ื ืืขืชืื.
Pros
ืืืืช ืืกืืจืช ืืืฉืืช ืขืืื ืืืืฅ ืืงืืคืกื ืืงื ืืคืชื, ื-Flyway ืืฉืชืื ืืงืืืช ื-CI ืงืืื. ืืื ืื ืื ื ืขืืฉืื ืืช ืื ื ืื ืืืคืชืืื :)
ืืืื ืจืื-ืืค
Puppet ืจืืื ืฉืืืืข ืฉืื ืื ืืืจืกืช ืืืืืื, ืืืื ืื ืฉืืืจืืืช ืขื ืืืืืจื. ืจืืฉืืช, ืืื ืืชืงืื ืืืืื ืืืืืื ืกืงืจืืคืืื ืืืขืืจื ืืคืื ืงืฆืืื ืืืืช ืืงืฉืืจื ืืืกื ื ืชืื ืื. ืืืืจ ืืื, ืืืืฉืื ืฉืขืืื ืขื ืืกื ืื ืชืื ืื ืืืคืขื ืืืืฉ. ืืืืจ ืืื ืืืืขื ืืืชืงื ื ืฉื ืืจืืืืื ืื ืืชืจืื. ืกืืจ ืืชืงื ืช ืืืืืืืช ืืืืคืขืื ืฉื ืืืฉืืืื ืืชืืืจ ืืื ืืคืกื Puppet.
ืืืฉืืืื ืืฉืชืืฉืื ืื ืชืื ืื ืจืืืฉืื, ืืืื ืืกืืืื ืื, ืกืืกืืืืช ืฉื ืืกื ื ืชืื ืื, ืื ืื ื ืืฉื ืืชืื ืืชืฆืืจื ื-Puppet master, ืฉื ืื ืืืืืกื ืื ืืฆืืจื ืืืฆืคื ืช.
ืืขืืืช TFS
ืืืจื ืฉืืืืื ื ืืืื ื ืฉืืื ืืืืช ืขืืื ืืฉืืืื ื, ืืืืืชื ืืืืืง ืื ืงืืจื ืขื ืืืืืืืื ื-TFS ืืืืืืช ืืืืืงืช ืืคืืชืื ืฉื Win ืืคืจืืืงืืื ืืืจืื - ืืื ืื ืื ื ืืื ืื/ืืฉืืจืจืื ืืืจ ืื ืื, ืืื ืืืื ืืขืืืช ืืฉืืขืืชืืืช ืืืืืจืืช.
ืืื ืืคืจืืืงืืื ืืขืืงืจืืื ืืืงื 12-15 ืืงืืช ืืืจืืื - ืื ืืจืื ืืื, ืืชื ืื ืืืื ืืืืืช ืืื. ื ืืชืื ืืืืจ ืืจืื ืืจืืื ืืืืื ื-I/O, ืืื ืืื ืขื ืืขืจืืื.
ืืืืจ ืฉื ืืชื ืืืชื ืืจืืื ืืืจ ืจืืื, ืืืืืชื ืฉืืืฉื ืืืงืืื. ืจืืฉืื - "ืื ืื ืืืจืืก ืงืกืคืจืกืงื", ืืฉืจ ืกืืจืง ืืงืืจืืช ืืื ืกืืื ื Windows Build. ืฉื ืืช - Windows ืึทืคืชึฐืึธื. ืื ืื ืืืฉืืช, ืืืื ืืืกืฃ ืืืื ืืืช ืขื ืกืืื ื ื-Build ืืืืื ืชืืืื ืืคืจืืกื.
ืฉืืืฉืืช - ืืชืงื ื Npm. ืืชืืจืจ ืฉืืจืื ื-Pipelines ืืฉืชืืฉื ื ืืชืจืืืฉ ืืืืืืง ืืื. ืืื ืืื ืจืข? ืืืื ืืืชืงื ื ืฉื Npm ืืืคืขื ืืืฉืจ ืขืฅ ืืชืืืช ื ืืฆืจ ื package-lock.json, ืฉืื ื ืจืฉืืืช ืืจืกืืืช ืืืืืืืช ืฉืืฉืืฉื ืืื ืืืช ืืคืจืืืงื. ืืืืกืจืื ืืื ืฉืืืชืงื ื ืฉื Npm ืืขืื ืืช ืืืจืกืืืช ืืขืืื ืืืช ืืืืชืจ ืฉื ืืืืืืช ืืืืื ืืจื ื ืืื ืคืขื, ืืื ืืืงื ืืจืื ืืื ืืืงืจื ืฉื ืคืจืืืงื ืืืื.
ืืคืขืืื ืืคืชืืื ืืชื ืกืื ืืืืื ื ืืงืืืืช ืืื ืืืืืง ืืื ืืืง ืืกืืื ืื ืคืจืืืงื ืฉืื ืคืืขื. ืืคืขืืื ืืชืืจืจ ืฉืืื ืืื ืื ืืืงืื, ืืื ืืจืืืื ืืืชื, ืืืืื ืืืชื ืืืืื ืื ืขืื. ืื ืื ื ืืชืืืืื ืืืืื ืื ืืืขืื - ืื, ืืจืกืืืช ืฉืื ืืช ืฉื ืืืืืืช ืขื ืชืืืช.
ืืืืื
- ืืงืืจืืช ืืืจืืืื AV.
- ืืฉืืช ืืื ืืงืก.
- ืืขืืจ ื npm ci.
ืืืชืจืื ืืช ืฉื npm ci ืื ืฉืื ืื ื ืื ืื ื ืืืกืคืื ืืช ืขืฅ ืืชืืืช ืคืขื ืืืช, ืืื ื ืืงืืืื ืืช ืืืืืื ืืช ืืกืคืง ืืืคืชื ืจืฉืืืช ืืืืืืืช ืื ืืืืืช, ืฉืืืชื ืืื ืืืื ืืืชื ืกืืช ืืงืืืืช ืืื ืืขืืื ืขื ืจืืื. ืึถื ืืืกื ืืื ืืคืชืืื ืฉืืืชืืื ืงืื.
ืชึฐืฆืึผืจึธื
ืขืืฉืื ืงืฆืช ืขื ืชืฆืืจืช ืืืืืจ. ืืืกืืืจืืช ืื ืื ื ืืฉืชืืฉืื ืงึถืฉึถืืจ ืื ืืืื ืืืืจืื, ืืืื REPO ืคื ืืื. ืืืืจ ืคื ืืื ืื ืืืื ืืช ืื ืืจืืืืื ืฉืืื ืื ื ืืฉืชืืฉืื ืืืืจืืช ืคื ืืืืืช, ืืืฉื, ื ืืืืจ ืืืชื ืขืฆืื.
ืื ืื ื ืื ืืฉืชืืฉืื ื ืืื, ืืืืืื ืฉืืฉ ืื ืืืืื ืืื ืืืชืจ ืืืฉืืืื ืืื ืืื ืืืืืืช ืืืจืื.
ืชืืฆืื
ืืืืจ ืฉืืืฆืขื ื ืืืคืืืืืืฆืื ืฉื ืกืืื ื ืืื ืืื, ืืื ืืื ืืื ืืืืืฆืข ืืฆืืืฆื ื-12 ืืงืืช ื-7.
ืื ื ืกืคืืจ ืืช ืื ืืืืื ืืช ืฉืืืืื ื ืืืฉืชืืฉ ืืื ืขืืืจ Windows, ืืื ืขืืจื ื ืืืื ืืงืก ืืคืจืืืงื ืืื, ืืกืื ื ื-10$ ืืื ืจืง ืืจืืฉืืื ืืช, ืืขืื ืื ื ืืงื ืืืฉืืื ืืช ืืชืืื.
ืชืืื ืืืช
ืืจืืขืื ืืื, ืชืื ื ื ืืขืืื ืขื ืืืคืืืืืืฆืื ืฉื ืืฉืืื ืืงืื.
ืืขืืจ ืืชืืื ื ืืจืืฉ ืฉื Docker. TFS ืืื ืืืจ ืืื ืื ืขื ืชืืกืคืื ืจืืื ืืืืคืฉืจืื ืื ืืืฉืชืื ื-Pipeline, ืืืื ืืจืืื ืืืืกืกืช ืืจืืืจ ืฉื, ืืืฉื, ืชืืื ืช Docker. ืื ืื ื ืจืืฆืื ืืืคืขืื ืืช ืืืจืืืจ ืืื ืืืืชื ืืื package-lock.json. ืื ืืจืื ืืจืืืืื ืฉืฉืืืฉื ืืื ืืืช ืืคืจืืืงื ืืฉืชื ื ืืืืฉืื, ืื ื ืืื ืื ืชืืื ืช Docker ืืืฉื. ืืืืืจ ืืืชืจ ืืื ืืฉืืฉ ืืคืจืืกืช ืืืืื ืขื ืืืืฉืื ืืืืจืื. ืื ืื ืืืงืจื ืืขืช, ืืื ืื ืื ื ืืชืื ื ืื ืืขืืืจ ืืืจืืืืงืืืจืช ืืืงืจื-ืฉืืจืืชืื ื-Kubernetes, ืฉืืชืคืชืืช ืืืืคื ืคืขืื ืืืืจื ืฉืื ื ืืืฉืจืชืช ืคืชืจืื ืืช ืืืฆืืจ ืืื ืืื ืจื.
ืชืงืฆืืจ
ืื ื ืืืืืฅ ืืืืื ืืืจืืง ืืืื ืืช, ืืื ืื ืื ืืืื ืฉืื ื ืื ืืืืข ืืื ืืืฉื ืืืชื. ืืกืืื ืืื ืฉืจืื ืคืชืจืื ืืช Opensource ืื ืืืื ืขืจืืืช ืืื ืืงืก. ืืชื ืืกืืจ ืืืกืื ืืืฉืืืื. ืืืขืชื, ืืขืชืื ืฉืืื ืืคืชืจืื ืืช ืงืื ืคืชืื ืืืื ืืงืก ืขื ืงืืืื ืืืงื.
ืคืจืืคืื ืืืืืจ ืฉื ืืืืกื ืืจ ืกืื ืฆ'ืื ืื
DevOps Conf ืืื ื ืื ืก ืืฉืืืื ืชืืืืื ืคืืชืื, ืืืืงื ืืชืคืขืื ืืื ืฉื ืืงืฆืืข ืขื ืืื ืื ืฉื ืืงืฆืืข. ืืืื ืื ืืคืจืืืงื ืฉืืืืกื ืืจ ืืืืจ ืขืืื? ืืืืฉื ืืขืืื, ืืืืื ืืืืคืขื ืืื ืฉื ื ืืืืืจืืช ืืืฆืืืืช. ืขึทืDevOps Conf ื- RIT++ ื-27 ืื-28 ืืืื ืืืื ืขืื ืืืชืจ ืืงืจืื ืืืืื ืฉื ืืชืจืืืื. ืืชื ืขืืืื ืืืื ืืงืคืืฅ ืืืจืืจื ืืืืจืื ื ืืืืฉ ืื"ื ืื ืืงืืช ืืช ืืืืืืืืืื ืึผึทืจึฐืึดืืก. ืคืืืฉ ืืืชื ื ืืกืงืืืงืืื!
ืืงืืจ: www.habr.com