Trace Id is missing
Przejdź do głównej zawartości
Azure

Azure Pipelines

Ciągłe tworzenie, testowanie i wdrażanie na dowolnej platformie i w dowolnej chmurze.

Uzyskaj potoki hostowane w chmurze dla systemów Linux, macOS i Windows. Twórz aplikacje internetowe, klasyczne i mobilne. Wdrażaj w dowolnej chmurze lub w środowisku lokalnym.

Zautomatyzuj kompilacje i wdrożenia dzięki usłudze Pipelines, aby poświęcać mniej czasu na konfigurację, a więcej na kreatywną pracę.

Dowolny język, dowolna platforma

Twórz, testuj i wdrażaj aplikacje Node.js, Python, Java, PHP, Ruby, C/C++, .NET, Android i iOS. Uruchamiaj zadania równolegle w systemach Linux, macOS i Windows.

Kontenery i platforma Kubernetes

Łatwo kompiluj i wypychaj obrazy do rejestrów kontenerów, takich jak Docker Hub i Azure Container Registry. Wdrażaj kontenery na indywidualnych hostach lub na platformie Kubernetes.

Możliwość rozszerzenia

Odkrywaj i wdrażaj szeroki zakres zadań kompilacji, testowania i wdrażania tworzonych przez społeczność, oraz setki rozszerzeń, takich jak Slack czy SonarCloud.

Wdrażanie w dowolnej chmurze

Wdrażaj ciągłe dostarczanie oprogramowania w dowolnej chmurze, w tym na platformach Azure, AWS i GCP. Wizualizuj wdrożenie w dowolnej liczbie współzależnych etapów.

Bezpłatne dla projektów typu „open source”

Zapewnij szybkie potoki ciągłej integracji/ciągłego wdrażania dla każdego projektu typu „open source”. Uzyskaj 10 bezpłatnych zadań równoległych z nieograniczoną liczbą minut kompilacji dla wszystkich projektów typu „open source”.

Zaawansowane przepływy pracy i funkcje

Skorzystaj z łatwego tworzenia łańcuchów kompilacji i kompilacji wielofazowych. Obsługa kodów YAML, integracji testów, bram wersji, raportowania i nie tylko.

Jesteś użytkownikiem serwisu GitHub? Masz już wszystko.

Kompiluj, testuj i wdrażaj to, co tworzysz, w serwisie GitHub. Uzyskaj szybkie, niezawodne kompilacje na wszystkich platformach za pośrednictwem głębokiej integracji z żądaniami ściągnięcia, kontrolami i stanami w serwisie GitHub.

Szybsze kompilowanie i wdrażanie dzięki usłudze Pipelines

Agenci dla systemów Linux, macOS i Windows hostowani przez firmę Microsoft

Uprość zarządzanie sprzętem i maszynami wirtualnymi, korzystając z agentów firmy Microsoft hostowanych w chmurze. Uzyskaj pełną obsługę potoków ciągłej integracji/ciągłego wdrażania dla każdej głównej platformy i narzędzia.

Zaawansowane przepływy pracy z natywną obsługą kontenerów

Niezrównana szybkość kompilowania dzięki wykonywaniu zadań równoległych i testów. Skorzystaj z zadań kontenerów, aby tworzyć spójne i niezawodne kompilacje dzięki właściwie dobranym narzędziom. Z łatwością twórz nowe kontenery i wypychaj je do dowolnego rejestru.

Elastyczne wdrażanie na platformie Kubernetes, w usługach bezserwerowych lub na maszynach wirtualnych

Wdrażaj rozwiązania na platformie Kubernetes, maszynach wirtualnych, w usłudze Azure Functions, Azure Web Apps lub w dowolnej innej chmurze. Używaj etapów, bram i zatwierdzeń, aby tworzyć strategię wdrażania odpowiednią dla Ciebie i zagwarantować jakość na każdym etapie. Możesz nawet wdrażać rozwiązania z innych systemów ciągłej integracji, na przykład Jenkins.

Wbudowane funkcje kompleksowych zabezpieczeń i zgodności

Projekty typu „open source”

Ciągła integracja/ciągłe wdrażanie hostowane przez firmę Microsoft

Samodzielny hosting ciągłej integracji/ciągłego wdrażania

Zacznij korzystać z bezpłatnego konta platformy Azure

1

Rozpocznij bezpłatnie. Uzyskaj środki w wysokości 200 USD do wykorzystania w ciągu 30 dni. Mając środki, otrzymasz bezpłatne przydziały dla wielu naszych najpopularniejszych usług, a dodatkowo otrzymasz bezpłatne przydziały dla ponad 55 innych usług, które zawsze są bezpłatne.

2

Po wykorzystaniu środków przejdź na płatność zgodnie z rzeczywistym użyciem, aby kontynuować pracę z użyciem tych samych bezpłatnych usług. Płacisz tylko wtedy, gdy użycie przekroczy bezpłatne miesięczne przydziały.

3

Po upływie 12 miesięcy będziesz nadal mieć dożywotnio dostęp do ponad 55 bezpłatnych usług — i nadal będziesz płacić tylko za wykorzystanie przekraczające bezpłatne miesięczne wartości.

Jak korzystamy z usługi Azure Pipelines

Zobacz, jak zespół infrastruktury .NET w firmie Microsoft korzysta z usługi Azure Pipelines do uruchamiania milionów zautomatyzowanych testów dziennie dla projektu typu „open source” platformy .NET Framework. Dowiedz się, w jaki sposób zespół usprawnił współpracę ze społecznością open source dzięki współużytkowanym narzędziom i przejściu na jeden system ciągłej integracji, który wspiera wszystkie kompilacje dla systemów Windows, Linux i Mac.

Gotowość zależy od Ciebie — skonfiguruj bezpłatne konto platformy Azure

#chatEngagement { color: #fff; background-color: #006abb; border: 1px solid #0078d4; border-radius: 4px; display: inline-block; font-size: 14px; font-weight: 600; padding: 10px 16px; } #chatEngagement:hover, #chatEngagement:active { text-decoration: underline; } #chatDisengagement { color: #0062ad; display: inline-block; font-size: 14px; font-weight: 600; padding-right: 1em; position: relative; text-decoration: none; border: none; background-color: transparent; } #chatEngagement:focus { outline: 1px solid #fff; outline-offset: -4px; text-decoration: underline; } #chatDisengagement:after { background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 1L9 6L4 11' stroke='%230062ad'/%3E%3C/svg%3E"); content: ' '; height: 12px; width: 12px; display: inline-flex; vertical-align: middle; margin-left: .2em; transition: all .2s ease-in-out; position: absolute; bottom: -6px; background-color: transparent; } #chatDisengagement:focus { outline-offset: 10px; } #lp-iframe-container { border: 0; bottom: 0; box-shadow: 0 5px 15px 0 #00000033; height: 500px; left: auto !important; min-width: 300px; max-width: 350px; padding: 0; position: fixed; right: 0; top: auto !important; z-index: 1031; } #iFrame { height: 100%; width: 100%; border: 0; } #proactive-chat-dialog { position: fixed; z-index: 10400; bottom: -24px; right: 11px; } #proactive-chat-dialog .chatContainer { min-width: 272px; height: 277px; color: #000; line-height: 0; position: relative; border: 0 !important; background-repeat: no-repeat !important; background-color: #fff !important; margin: auto; padding: 12px; background-size: contain !important; box-shadow: 0 2.8px 2.2px rgba(0, 0, 0, 0.034), 0 6.7px 5.3px rgba(0, 0, 0, 0.048), 0 12.5px 10px rgba(0, 0, 0, 0.06), 0 22.3px 17.9px rgba(0, 0, 0, 0.072), 0 41.8px 33.4px rgba(0, 0, 0, 0.086), 0 100px 80px rgba(0, 0, 0, 0.12); } #proactive-chat-dialog .chatContainer .chat-cta { text-align: center; font-size: 24px; font-weight: 600; position: relative; top: 160px; } #proactive-chat-dialog .chatContainer .chat-buttons { position: relative; top: 185px; width: 100%; display: flex; gap: 1em; justify-content: center; flex-direction: column; } #proactive-chat-dialog .chatContainer .chat-buttons .arrow-link { width: auto; margin: auto; } #proactive-chat-dialog .chatContainer .chat-buttons .arrow-link:after { bottom: -6px; } @media only screen and (min-width: 33.75em) { #proactive-chat-dialog .chatContainer .chat-buttons { top: 200px; flex-direction: row; } } </style> <div id="proactive-chat-dialog" class="proactive-chat-hidden"> <div class="chatContainer" style="background: url('{{module.bg-img-src}}') no-repeat top left" > <div class="chat-cta">{{module.heading}}</div> <div class="chat-buttons"> <button type="button" id="chatEngagement" aria-label="{{chat-engagement.aria-label}}" class="button button--primary01 lp-chatnow" data-lp-event="click" data-bi-id="expand-chat" data-bi-an="chat" data-bi-chtid="azure chat 1" data-bi-chtnm="live person proactive chat" data-bi-bhvr="16" data-bi-tn="button button--primary01 lp-chatnow" > {{chat-engagement.btn-txt}} </button> <button type="button" id="chatDisengagement" aria-label="{{chat-disengagement.aria-label}}" class="arrow-link lp-nothanks" data-lp-event="close" data-bi-id="collapse-chat" data-bi-an="chat" data-bi-chtid="azure chat 1" data-bi-chtnm="live person proactive chat" data-bi-tn="arrow-link lp-nothanks" > {{chat-disengagement.btn-txt}} </button> </div> </div> </div> '/>