kaeken(嘉永島健司)のTech探究ブログ

主に情報科学/情報技術全般に関する知見をポストします。(最近は、特にData Science、機械学習、深層学習、統計学、Python、数学、ビッグデータ)

Azure DevOps 概要まとめ

overview

Azure DevOps Services | Microsoft Azure

Title: Azure DevOps Overview

Azure DevOps supports a collaborative culture and set of processes that unite developers, project managers, and contributors to foster software development. It enables organizations to accelerate product development beyond the capabilities of traditional software development methodologies.

Key Points:

  • Collaborative Culture: Facilitates teamwork among developers, project managers, and contributors.
  • Faster Pace: Allows for quicker creation and improvement of products compared to traditional methods.
  • Flexibility: Work in the cloud with Azure DevOps Services or on-premises with Azure DevOps Server.
  • Integrated Features: Access through web browsers or IDE clients, offering versatility in how services are used.
  • Customizable Services: Option to use all services included with Azure DevOps or select only necessary ones to enhance existing workflows.

タイトル: Azure DevOps 概要

Azure DevOpsは、開発者、プロジェクトマネージャー、および貢献者を一体化させ、ソフトウェア開発を促進する協力的な文化とプロセスのセットを支援します。これにより、組織は従来のソフトウェア開発方法よりも速いペースで製品を作成および改善することができます。

主なポイント:

  • 協力的な文化: 開発者、プロジェクトマネージャー、および貢献者間のチームワークを促進します。
  • 高速ペース: 従来の方法と比較して、製品の作成および改善をより速く実現します。
  • 柔軟性: Azure DevOps Servicesを使用してクラウドで作業するか、またはAzure DevOps Serverを使用してオンプレミスで作業します。
  • 統合された機能: ウェブブラウザーIDEクライアントを通じてアクセス可能で、サービスの使用方法において多様性を提供します。
  • カスタマイズ可能なサービス: Azure DevOpsに含まれるすべてのサービスを使用するか、既存のワークフローを強化するために必要なものだけを選択するオプションがあります。

service

Azure Boards | Microsoft Azure

  • docs

Azure Boards documentation | Microsoft Learn

Title: What is Azure Boards?

Azure Boards is a web-based service designed for teams to plan, track, and discuss work throughout the development process. It supports agile methodologies and offers a customizable platform for managing work items, enabling effective collaboration and streamlined workflows. Key features include:

  • Azure Boards Hubs: Central locations for accessing various functions such as work items, boards, backlogs, sprints, queries, delivery plans, and analytics views.

  • Benefits: Includes starting easily and scaling as needed, using visual and interactive tools, customization, built-in social tools for communication, generous cloud storage for information capture, quick search and notification features, monitoring with built-in dashboards and analytics, Office integration, functionality extension through Marketplace extensions, mobile browser updates, and free start for up to five users.

  • Integration with GitHub: Allows linking GitHub commits, pull requests, and issues to work items for a seamless development and planning experience.

  • Dashboard and Power BI Reports Configuration: Customized views for status updates, progress tracking, and trend analysis, with the ability to create sophisticated reports based on Analytics service queries.

  • End-to-End Traceability: Full integration with Azure DevOps for tracking work from requirements to deployment, supporting tasks like branch creation from requirements, pull request validation, inline testing, and deployment status updates.

  • Support for Independent, Autonomous Teams: Facilitates the definition and management of teams by names, members, and area paths, essential for configuring various Azure Boards features.

タイトル: Azure Boardsとは何か?

Azure Boardsは、開発プロセス全体を通じて作業の計画、追跡、および議論を行うためのWebベースのサービスです。アジャイル方法論をサポートし、作業項目を管理するためのカスタマイズ可能なプラットフォームを提供し、効果的なコラボレーションと合理化されたワークフローを可能にします。主な特徴には以下が含まれます:

  • Azure Boardsハブ: 作業項目、ボード、バックログ、スプリント、クエリ、デリバリープラン、分析ビューなど、さまざまな機能にアクセスするための中心的な場所。

  • 利点: 必要に応じて簡単に開始してスケールアップする、視覚的でインタラクティブなツールを使用する、カスタマイズ、コミュニケーションのための組み込みのソーシャルツール、情報キャプチャのための豊富なクラウドストレージ、迅速な検索と通知機能、組み込みダッシュボードと分析による監視、Officeとの統合、Marketplace拡張機能による機能拡張、モバイルブラウザーの更新、最大5人のユーザーまで無料で開始することができます。

  • GitHubとの統合: GitHubのコミット、プルリクエスト、および問題を作業項目にリンクして、開発と計画のシームレスな体験を提供します。

  • ダッシュボードとPower BIレポートの設定: ステータスの更新、進捗の追跡、およびトレンド分析のためのカスタマイズされたビューを提供し、分析サービスクエリに基づいた洗練されたレポートを作成する能力を提供します。

  • エンドツーエンドのトレーサビリティ: 要件からデプロイメントまでの作業を追跡するためのAzure DevOpsとの完全な統合を提供し、要件からのブランチ作成、プルリクエストの検証

、インラインテスト、およびデプロイメントステータスの更新などのタスクをサポートします。

  • 独立した自律的なチームのサポート: 名前、メンバー、およびエリアパスによってチームを定義および管理することを容易にし、さまざまなAzure Boards機能を設定するために不可欠です。

Azure Repos – Git Repositories | Microsoft Azure

  • docs

Azure Repos documentation - Azure DevOps | Microsoft Learn

Title: What is Azure Repos?

Azure Repos offers version control tools to manage code for any size software project, emphasizing the importance of adopting version control early in development. Version control systems track code changes over time, allowing for snapshots of files to be saved permanently for future reference. This facilitates code changes coordination across teams and helps individual developers organize bug fixes and feature developments. Azure Repos provides:

  • Git: A distributed version control system allowing for complete local repositories, facilitating offline or remote work. Changes are committed locally before syncing with the server.

  • Team Foundation Version Control (TFVC): A centralized version control system, where historical data is stored on the server, and branches are path-based.

Azure Repos supports: - Connecting to various development environments. - Code review through pull requests, ensuring changes build and pass tests before merging. - Branch protection policies to maintain critical branches in good shape. - Extension of pull request workflows with statuses for additional requirements and validations. - Code isolation using forks for experimental or confidential changes.

タイトル: Azure Reposとは何ですか?

Azure Reposは、任意の規模のソフトウェアプロジェクトのコードを管理するためのバージョン管理ツールを提供し、開発の早い段階でバージョン管理を採用することの重要性を強調しています。バージョン管理システムは時間とともにコード変更を追跡し、将来の参照のためにファイルのスナップショットを永久に保存することができます。これにより、チーム間でのコード変更の調整を容易にし、個々の開発者がバグ修正や機能開発を整理するのに役立ちます。Azure Reposは以下を提供します:

  • Git: 完全なローカルリポジトリを許可する分散バージョン管理システムで、オフラインまたはリモートでの作業を容易にします。変更はローカルにコミットされ、その後サーバーと同期されます。

  • Team Foundation Version Control (TFVC): 履歴データがサーバーに保存され、ブランチがパスベースで作成される集中型バージョン管理システムです。

Azure Reposは以下をサポートします: - 様々な開発環境への接続。 - プルリクエストを通じたコードレビューで、マージ前に変更がビルドされテストを通過することを確認します。 - 重要なブランチを良好な状態に保つためのブランチ保護ポリシー。 - 追加要件と検証のためのプルリクエストワークフローをステータスで拡張します。 - 実験的または機密性の高い変更のためのフォークを使用したコードの隔離。

Azure Pipelines | Microsoft Azure

  • docs

Azure Pipelines documentation - Azure DevOps | Microsoft Learn

Title: What is Azure Pipelines?

Azure Pipelines is a service that automates the building and testing of code projects, supporting continuous integration (CI), continuous delivery (CD), and continuous testing (CT). It works with all major languages and project types, allowing code to be built, tested, and delivered to any destination. Key features include:

  • Continuous Integration: Automates merging and testing of code to catch bugs early, producing artifacts for release processes.

  • Continuous Delivery: Builds, tests, and deploys code to various environments, enhancing quality and enabling frequent deployments.

  • Continuous Testing: Automates testing in various environments, maintaining quality and finding problems early.

  • Version Control Systems: Supports Git and Azure Repos, automatically building and validating changes pushed to the repository.

  • Languages and Applications: Compatible with a wide range of programming languages and frameworks, allowing parallel runs on different OS.

  • Deployment Targets: Enables code deployment to multiple targets, including VMs, environments, containers, and cloud platforms.

  • Package Formats: Supports publishing NuGet, npm, or Maven packages to Azure Pipelines or other package management repositories.

  • Usage Requirements: Requires an Azure DevOps organization and source code in a version control system.

  • Pricing: Offers free options for public projects and limited free minutes for private projects monthly, with additional services for Azure DevOps Server.

Azure Pipelines facilitates a quick, consistent, and quality automation process for building projects, supporting any language or platform and integrating with various environments and GitHub.

タイトル: Azure Pipelinesとは何か?

Azure Pipelinesは、コードプロジェクトのビルドとテストを自動化するサービスで、継続的インテグレーション(CI)、継続的デリバリー(CD)、および継続的テスティング(CT)をサポートします。すべての主要な言語とプロジェクトタイプで動作し、コードを任意の宛先にビルド、テスト、および配信できます。主な特徴には以下が含まれます:

  • 継続的インテグレーション: コードの自動マージとテストを自動化し、早期にバグを捕捉し、リリースプロセス用のアーティファクトを生成します。

  • 継続的デリバリー: コードをビルド、テスト、およびさまざまな環境にデプロイし、品質を向上させ、頻繁なデプロイメントを可能にします。

  • 継続的テスティング: さまざまな環境でのテストを自動化し、品質を維持し、早期に問題を見つけます。

  • バージョン管理システム: GitとAzure Reposをサポートし、リポジトリにプッシュされた変更を自動的にビルドして検証します。

  • 言語とアプリケーション: 幅広いプログラミング言語フレームワークと互換性があり、異なるOSでの並行実行を可能にします。

  • デプロイメントターゲット: VM、環境、コンテナ、およびクラウドプラットフォームを含む複数のターゲットへのコードデプロイを可能にします。

  • パッケージ形式: Azure Pipelinesまたは他のパッケージ管理リポジトリにNuGet、npm、またはMavenパッケージを公開することをサポートします。

  • 使用要件: Azure DevOps組織とバージョン管理システム内のソースコードが必要です。

  • 価格: パブリックプロジェクトの無料オプションと、プライベートプロジェクトの月間限定無料分を提供し、Azure DevOps

Serverの追加サービスがあります。

Azure Pipelinesは、プロジェクトのビルドに対して迅速かつ一貫性のある品質の自動化プロセスを容易にし、任意の言語やプラットフォームをサポートし、さまざまな環境やGitHubとの統合を実現します。

Azure Test Plans | Microsoft Azure

  • docs

Azure Test Plans documentation - Azure DevOps | Microsoft Learn

Title: What is Azure Test Plans?

Azure Test Plans is a browser-based test management solution that supports planned manual testing, user acceptance testing, exploratory testing, and feedback gathering from stakeholders, providing tools for quality assurance and collaboration throughout the development process. Key features include:

  • Manual and Exploratory Testing: Organizes tests into plans and suites for manual execution and allows for exploratory testing without predefined plans or suites.
  • Automated Testing: Integrates with Azure Pipelines for continuous integration/continuous deployment (CI/CD), allowing tests and test cases to be associated with builds or release pipelines.
  • Traceability: Supports linking test cases and suites to user stories, features, or requirements, ensuring end-to-end traceability and quality tracking.
  • Reporting and Analysis: Offers configurable tracking charts, dashboard widgets, and built-in reports to monitor test progress and analyze results.
  • Load and Performance Testing: While Azure DevOps' cloud-based load testing service is deprecated, Azure Load Testing is available for generating high-scale load using Apache JMeter scripts.

Azure Test Plans is an extensible platform that can be integrated with and extended using REST APIs, supporting a wide range of manual and automated testing scenarios.

タイトル: Azure Test Plansとは何ですか?

Azure Test Plansは、計画的な手動テスト、ユーザーアクセプタンステスト、探索的テスト、およびステークホルダーからのフィードバック収集をサポートするブラウザベースのテスト管理ソリューションで、開発プロセス全体での品質保証とコラボレーションのためのツールを提供します。主な機能は以下の通りです:

  • 手動および探索的テスト: 手動実行のためにテストをプランとスイートに整理し、定義されたプランやスイートなしで探索的テストを可能にします。
  • 自動テスト: Azure Pipelinesとの統合をサポートし、継続的インテグレーション/継続的デリバリー(CI/CD)において、テストおよびテストケースをビルドまたはリリースパイプラインに関連付けることができます。
  • トレーサビリティ: テストケースおよびスイートをユーザーストーリー、機能、または要件にリンクすることをサポートし、エンドツーエンドのトレーサビリティと品質追跡を保証します。
  • 報告と分析: テストの進行状況を監視し、結果を分析するための設定可能な追跡チャート、ダッシュボードウィジェット、および組み込みレポートを提供します。
  • 負荷およびパフォーマンステスト: Azure DevOpsのクラウドベースの負荷テストサービスは廃止されましたが、Apache JMeterスクリプトを使用して高規模な負荷を生成するためのAzure Load Testingが利用可能です。

Azure Test Plansは、REST APIを使用して統合および拡張可能なプラットフォームであり、幅広い手動および自動テストシナリオをサポートします。

Azure Artifacts | Microsoft Azure

  • docs

Azure Artifacts documentation | Microsoft Learn

Title: Artifacts in Azure Pipelines - Overview

Azure Artifacts allows developers to publish and consume various types of packages from both feeds and public registries like PyPI, Maven Central, and NuGet.org. When combined with Azure Pipelines, it facilitates the publishing of build and pipeline artifacts, deployment of packages, or integration of files across different pipeline stages for building, testing, or deploying applications. Supported artifacts include:

  • Build Artifacts: Files generated by a build, such as .dll, .exe, and .PDB files.
  • Pipeline Artifacts: Recommended for Azure DevOps Services for faster performance, but not supported in release pipelines.
  • NuGet: Publish NuGet packages to Azure Artifacts feeds or to public registries like nuget.org.
  • npm: Publish npm packages to Azure Artifacts feeds or to public registries like npmjs.com.
  • Maven: Publish Maven packages to Azure Artifacts feeds or to public registries like Maven Central.
  • Python: Publish Python packages to Azure Artifacts feeds or to public registries like PyPI.org.
  • Cargo: Publish Cargo packages to Azure Artifacts feeds or to public registries like Crates.io.
  • Universal Packages: Publish Universal Packages to Azure Artifacts feeds.
  • Symbols: Publish symbols to the Azure Artifacts symbol server or to a file share.

Publishing artifacts can be done through various package managers and build tools including NuGet, npm, Python, Maven, Gradle, and Universal Packages, utilizing Azure Pipelines in both YAML and Classic formats.

タイトル: Azure Pipelines内のアーティファクト - 概要

Azure Artifactsを使用すると、開発者はPyPIMaven Central、NuGet.orgなどのフィードや公開レジストリから様々なタイプのパッケージを公開および使用できます。Azure Pipelinesと組み合わせることで、ビルドおよびパイプラインアーティファクトの公開、パッケージのデプロイ、またはアプリケーションのビルド、テスト、またはデプロイのための異なるパイプラインステージ間でのファイルの統合を容易にします。サポートされているアーティファクトには以下が含まれます:

  • ビルドアーティファクト: ビルドによって生成されるファイル。例:.dll、.exe、.PDBファイル。
  • パイプラインアーティファクト: Azure DevOps Servicesでの高速なパフォーマンスに推奨されますが、リリースパイプラインではサポートされていません。
  • NuGet: Azure Artifactsフィードまたはnuget.orgのような公開レジストリにNuGetパッケージを公開します。
  • npm: Azure Artifactsフィードまたはnpmjs.comのような公開レジストリにnpmパッケージを公開します。
  • Maven: Azure ArtifactsフィードまたはMaven Centralのような公開レジストリMavenパッケージを公開します。
  • Python: Azure ArtifactsフィードまたはPyPI.orgのような公開レジストリPythonパッケージを公開します。
  • Cargo: Azure ArtifactsフィードまたはCrates.ioのような公開レジストリにCargoパッケージを公開します。
  • ユニバーサルパッケージ: Azure Artifactsフィードにユニバーサルパッケージを公開します。
  • シンボル: Azure Artifactsシンボルサーバーまたはファイル共有にシンボルを公開します。

NuGet、npm、PythonMaven、Gradle、ユニバーサルパッケージなど、様々なパッケージマネージャーやビルドツールを通じてアーティファクトを公開できます。これは、YAMLおよびクラシック形式のAzure Pipelinesを利用して行われます。

certification

Microsoft Certified: DevOps Engineer Expert - Certifications | Microsoft Learn

Exam AZ-400: Designing and Implementing Microsoft DevOps Solutions - Certifications | Microsoft Learn

materials

Azure DevOps Hands-On Labs | Azure DevOps Hands-on-Labs