Slide 1

Slide 1 text

どっちを選ぶ? Azure DevOps と GitHub かめがわ かずし(kkamegawa)

Slide 2

Slide 2 text

Who am I? personal: name: KAMEGAWA Kazushi(Last-First) alias: kkamegawa community: MVP: Microsoft MVP for Developer Technologies (2009-) Users Group: Team Foundation Server Users Group URL: https://dev.azure.com/tfsug/tfsuginfo Blog: URL: https://kkamegawa.hatenablog.jp devblog radio: https://devblog.connpass.com/

Slide 3

Slide 3 text

This contents based on 2022/10/31

Slide 4

Slide 4 text

概要比較 – 無料でどこまで使える? GitHub Azure DevOps 料金 無料(※1) / 4$(月) / 21$(月) Pricing · Plans for every developer (github.com) 5人までBasicは無料 / 6人目以降は6$(月) Azure DevOps Services の価格 | Microsoft Azure CI / CD 月毎に2000分無料 (Windows/Linux/macOS) 月毎に1800分無料(事前申請式) (Windows/Linux/macOS) パッケージ 500MB 2GB(デバッグシンボルも登録可能) ソースコード 無制限のレポジトリ(Git) • レポジトリが1GB以上になると警告が出る • Push上限は100MB/ファイル • 無料版のPrivateレポジトリへの招待は3名まで 無制限のレポジトリ(Git/TFVC) • Gitには250GBの上限あり(全体では無制限) • Push上限は5GB/ファイル Git limits - Azure Repos | Microsoft Learn その他 パブリックレポジトリでは上位機能が使用可能 • シークレットスキャン • コードスキャン • DependabotによるPR作成…等 ほとんどのSaaSでは高いプランを契約しないと使 えないID/セキュリティ機能が提供(※2) • 個人用MSアカウント/GitHubアカウント/Azure ADと のSSOが可能 • Azure ADとのテナントと関連付けやセキュリティ機能 と統合可能 • Dependabot / シークレットスキャンがプレビュー開始 (価格は未公表) ※2 Azure ADで認証している場合に限る ※ 1 プライベートレポジトリは3人まで

Slide 5

Slide 5 text

エンタープライズ向け – 主にオンプレミス GitHub Azure DevOps 料金 Enterprise Cloud(※1) ($21/user/月) 5人まで無料。6人目から$6/user/month テスト機能を使う場合$52/user/month(※2) AzureサブスクリプションかTFSCAL 無償版のExpress Edition有 オンプレミス GitHub Enterprise Server EOLはほぼ1年 GitHub Enterprise Server releases - GitHub Enterprise Server 3.2 Docs Azure DevOps Server EOLは10年 / SQL Server Standard付 Azure DevOps Server 2020 - Microsoft Lifecycle | Microsoft Learn オンプレミス アカウント • ビルトイン • Enterprise Cloud • LDAP/CAS/SAML オンプレミスActive Directoryアカウント / Windowsローカルアカウントで認証 CI / CD オンプレミスにGitHub Action Runnerをインストール About self-hosted runners - GitHub Docs オンプレミスにAzure Pipelines Agentをイン ストール Azure Pipelines Agents - Azure Pipelines | Microsoft Learn ストレージ インストールするサーバーに依存 ← (※ Expressは10GBまで) ※1 Visual Studio Subscription with GitHub Enterpriseがある場合無償 ※2 Visual Studio Enterprise契約がある場合無償

Slide 6

Slide 6 text

GitHubとAzure DevOpsの構造の差 Organization 個人ID Team Project 個人 / Organizationに リポジトリが関連づく レポジトリが多くなると Organizationと Projectで管理必須 最初からProjectがあり、そ の配下にチケット、リポジトリ、 パイプラインを作成する

Slide 7

Slide 7 text

GitHub 初期画面 自分の レポジトリ 直近の作業 参加チーム GitHubの 更新 おすすめアクティビティ

Slide 8

Slide 8 text

GitHub Git Repository kkamegawa/bicepsamples: This repository samples for bicep (github.com)

Slide 9

Slide 9 text

Azure DevOps 初期画面 自分の organization アサイン作業、 PR, お気に入りを 切り替え 上のタブで切り替えた 内容表示

Slide 10

Slide 10 text

Azure DevOpsのチーム初期画面

Slide 11

Slide 11 text

CI / CD GitHub Azure DevOps(Pipelines) 無料枠 月毎に2000分無料 (Windows/Linux/macOS) パブリックレポジトリは10並列無制限 月毎に1800分無料(事前申請式) (Windows/Linux/macOS) パブリックレポジトリは10並列無制限 (簡単な審査あり) サポートOS 現行OSとそのひとつ前。 二つ前のOSは非推奨になり、廃止される (特にVisual Studio / XcodeはOSと セットなので注意) ← パイプライン記述 YAML YAML / GUI(Classic) Oauthアプリ なし(ActionsはGitHubのみサポート) あり(GitHubでも使える) 含まれるソフトウェア 実行されるOSによって変わる(※) ← Hosted Agent 2 vCore 8GB RAM 10GB ストレージ ← Large Agent あり(プレビュー) Using larger runners - GitHub Docs なし ※ actions/runner-images: GitHub Actions runner images

Slide 12

Slide 12 text

YAMLの比較 Workflow syntax for GitHub Actions - GitHub Docs YAML schema reference | Microsoft Learn

Slide 13

Slide 13 text

YAMLの基本構造としてはどちらも同じ 1. ジョブ起動定義 2. ジョブ内で使用する値 の定義など 3. ステージ(左にはない) 4. ジョブ(複数の手順の 塊) 逐次書いていくと長くなるので、適宜リファクタリング必要 ※ 所定の手続きをまとめて外だしするテンプレートを使います

Slide 14

Slide 14 text

GitHubにのみ存在する特徴的な機能 §Discussionとissueの分離 § 仕様の議論はDiscussion, バグはissueといった使い分けが可能(相互の変換もできる) §個人アカウントとEnterpriseでレポジトリの移行が可能 § 個人で作ってOrganizationへ移管(逆)ということも可能 §GraphQLサポート §GitHub Pages(有料)でレポジトリから静的Webを生成 §GitHub Sponsorshipでマネタイズも可能(かも) §クラウド開発環境のCodespaces(有料)

Slide 15

Slide 15 text

Azure DevOpsにのみ存在する特徴的な機能 § プロジェクト計画からテストタスクまで一括管理するAzure Test Plans(有料) § 組織のAzure ADと連携したグループ管理 § Azureサブスクリプションを使った費用管理 § ビルド定義を外部レポジトリで管理可能 § プロジェクト状況可視化用ウィジェット § プロジェクト状況が確認しやすいクエリ(WIQL) / Board / Dashboard / Delivery Plans § Excelでタスク状況閲覧、一括更新が可能 § タスク進捗状況閲覧、パイプラインの承認するだけのStakeholderならライセンスがカウントさ れない

Slide 16

Slide 16 text

GitHubの今後が知りたい! §正統進化的な機能改善はroadmapレポジトリで公開されてます §GitHub Universe(2022/11/9-10)では何が発表されるか? The GitHub Universe 2022 agenda is live | The GitHub Blog GitHub public roadmap

Slide 17

Slide 17 text

Azure DevOpsの今後が知りたい! §今後の計画はAzure Boardsで公開されています §ほぼ三週間に一度のsprint 単位で機能追加 §大きな発表はBuild / Igniteでやっています Azure DevOps Roadmap | Microsoft Learn

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

Azure DevOps GitHub どちらでもいいのですが、あえて § Visual Studioサブスクリプションの 特典で統合管理したい § 非開発者向けの課金節約 § Azureのセキュリティ機能が必要 § 複数のプロジェクトを横断で管理した い(Boardsだけ導入でも可) § ネットワークが近い場所で使いたい ヨーロッパ / インド / 南米 / アジア ※ 残念ながら日本はなし §解説記事などが非常に豊富なので、 困ったときの聞き先が多い §すでに個人使用で慣れている人が 多いチームで §Codespacesで開発環境をクラ ウドに持っていきたい §シンプルに完結しているので個人 オーナーの開発で

Slide 20

Slide 20 text

No content