Githawk: Buddybuildの代替手段?

作成日 2018年01月02日  ·  71コメント  ·  ソース: GitHawkApp/GitHawk

慣れてきたように…。

既存の無料スタータープランとAndroidアプリの開発は、2018年3月1日に中止されます。

このプロジェクトへのサポートはほぼ確実に失われます。 新しいCIを見つける時が来ました。 助言がありますか?

私は以下を提供するこの記事を読んでいます:

私はHackerNewsでBuildkiteAppCenterについて読みました。

このようなことが二度と起こらないように、オープンソースのセルフホストソリューションも検討しています。

❔ question

最も参考になるコメント

私は明らかに偏見があります;)しかし、このようなことはAppCenterでは起こりません。
ご興味のある方はご連絡ください。

全てのコメント71件

別のセルフホストオプションについては、TeamCity(https://www.jetbrains.com/teamcity)?

通常、オープンソースプロジェクトのCircleCIジョブキューは、TravisCIよりもはるかに混雑していません。

いくつかのRxSwiftCommunityリポジトリの管理からの私の0.02ドル。

トラビスは絶対的なゴミです(または時間の経過とともになりました)。
キューイングは耐えられず、開発作業が遅くなり(90年代のビルドを50分待つことは受け入れられません)、構成は比較的面倒です。

私たちはゆっくりですが確実にほとんどのリポジトリをCirlceCIに移動しており、非常に満足しています。 キューイングは非常にスッキリと公平で、構成は比較的簡単です。

その意味でビットライズについても素晴らしいことを聞いた。

BBについての非常に残念なことですが、Appleがそれを殺すとは思わないので、それを監視するのは興味深いことですが、そうです

古いバージョンのJenkinsを使用した経験があります。ツールとしては間違いなく機能しますが、かなりのメンテナンス/構成が必要であり、オープンで協調的なものを維持する技術では、正直なところ最善ではないでしょう。

また、別の「大きな」プロバイダーを探す場合、モノポリーをプレイしている別の会社に流されてしまうという同じリスクがあります。

私はビットライズ、私の2セントを試してみたいと思います

私は明らかに偏見があります;)しかし、このようなことはAppCenterでは起こりません。
ご興味のある方はご連絡ください。

cc @Palleas

GitHawkで送信

Https://Buildozer.ioはiOSとAndroidの両方をサポートしています。 (開示:私はその創設者の一人です)

CI用のMacを必要とするすべてのArtsyiOSプロジェクトでCircleCIを使用してきました-OSSキューはtravisのような問題ではありませんでした」

私は一日中BitriseとAppCenterを試しました。 これまでのところ、BuddyBuildほど使いやすく魔法のようには見えません...
私はBBチームに満足しています(そして私もバンクーバーにいるので誇りに思っています)が、ユーザーとして非常に腹を立てています...
BuddyBuildは、構成をほとんど必要とせずに機能するサービスの1つでした。

私はBuddybuildの仕組みが本当に気に入りました。 以前にCircleCIに疲れましたが、ここで注意すべき点がいくつかあります。これは、署名にFastlaneを使用し、テストフライトにデプロイするため、自動署名は使用できません。 「手動」を使用する必要があります

@TroubleMakerBenとチャットする時間を設定し

https://buildkite.com/を確認してください

ここでbitriseの大ファン。 私たちはソリューションhttps://www.appaloosa-store.com/でそれをよく使用し

@sregg App Centerで何がうまく機能していなかったのですか? ビルド固有のものについては、喜んでお手伝いさせていただきます。

たとえば、 @ derpixeldanの場合、Slack統合は、BBのチェックボックスだけと比較して、すべてWebhookを使用して手動で

私はMicrosoftのAppCenterBuildのエンジニアリングマネージャーです。 私たちは毎週改善を行う素晴らしいチームを持っており、マルチプラットフォームのサポートに取り組んでいます。

@sreggの素晴らしいフィードバックと、これらすべての分野での改善は私たちのバックログにあると思います。

また、Twitterのhttps://twitter.com/0xlukekimで、問題/懸念事項/フィードバックについてお気軽にDMを送って

私は主に「メタ」の意味でAppCenterに非常に感銘を受けたと言わざるを得ません。

  • マイクロソフトが取り組んでいる開発努力。
  • 一部の従業員の所有権と配慮は、ここにコメントすることで示されます。
  • 昨年AltConfで実際に動作しているのを見ましたが、かなり良さそうです。

十分な経験がありませんが、価値のある競争相手のようです:)

みなさん、こんにちは。https://www.bitrise.io (CTO兼共同創設者)のViktorです。

皆さん、推薦してくれてありがとう、それは私たちのチームにとって大きな意味があります!

こんにちは👋と言いたかったのですが、もちろん聞いていることを確認してください。サポートチャネルからいつでもお気軽にpingを送信してください。ここでの質問にも、喜んでお答えします。

ハハ、今すぐ入札戦争を始めることができると思います😄

私のGitHawkはすべてのCIを庭に持ってきます🤓

私はBuddyBuildからBitriseに移動しました(iOSとAndroid用に1つの場所が本当に必要です)。 ドキュメントとステップのgitリポジトリをある程度読む必要がありましたが、非常にスムーズに進み、他のことと並行して約1日かかりました。

@sregg言うまでもなく、「BuildNumberの調整」ステップを+ = 640に使用します。これは、 versionCodeで使用し、BBから自動展開していたためです。

Bitrise over BuddyBuildで私が見つけた主な違いは(BBでGUIベースであるほとんどすべてを除いて)、Gradleビルドを複数のステップに分割することでした。 BuddyBuildは(おそらくより効率的に)あなたが求めるものすべてを構築し、次に展開メールやPlayストアへの公開などに関連するものを引き出します。Bitriseを使用すると、私が見ることができるいくつかの選択肢があります。複数のビルド/グレードステップ、たとえばUI / Androidテスト、テストビルド[2x3 = 6バリアント]、1つはApp / Playストアのデプロイアーティファクト用で、間にいくつかのクリーンアップステップがあります(たとえば、フィルタが不十分な場所でメールが送信されないようにします)...または2. bashスクリプトに慣れ、パイプマップENV変数を分割するスクリプトステップを用意して、後のステップでより簡単に使用できるようにします。

また、BBがデフォルトで送信するようなものを含むようにスラックメッセージを設定するなど、より多くの例があると便利です。たとえば、カスタマイズできるのは良いことですが、通常はコードの記述に戻りたいだけです。

もう1つは、使用していなかった機能、テスター管理(PlayストアAlphaとTestFlightを使用)、クラッシュ/クラッシュロガーのシェイク(Firebaseを好む)です。

本当にすばらしい機能の1つは、ワークフローを.ymlファイルとして表示および編集するだけでなく、CLIを使用してローカルでダウンロードして実行できることです。

正直なところ、これまでよりもはるかに多くの作業が必要です。それが毎月の支払いのポイントですか? しかし、それはほとんど1回限りのことであり、ボーナスは追加のカスタマイズ性です。 全体として、それは非常にうまく仕事をしていて、そして良い価格ですが。 私はこのスイッチに満足しています。 CircleCIも良いと確信しています(バックエンドに使用しています)。

また、注目に値するのは、bitriseのインフラストラクチャ全体がOSSです-https ://github.com/bitrise-io/bitrise.io

フィードバックをありがとう@richardleggett 、私はこれについてチームと話し合います!

特にSlackのもの-最初にステップにドロップした直後に「夢の」メッセージを作成する必要があるのではなく、「ファンシー」(より便利な)デフォルトメッセージがそこにあるのは今では長い間遅れていると思います。 柔軟性は重要ですが、デフォルト値/セットアップエクスペリエンス(および速度)も重要です。 とにかくその後メッセージを微調整できるので、デフォルトをより冗長にすることに問題はありません。

Gradle:強調表示してくれてありがとう、ツールチームとも話し合います!

私はこれで缶を蹴っています(ゆっくりと私の不安を増やしています)。 そこにさらに情報がある場合に備えて、代替案を探るこのブログ投稿にリンクしたかった。

町にいる間、 @ orta一緒に時間を過ごして、このプロジェクトを自動化するための私の「北極星」のビジョンについて話し合いたいと思います(CIだけではありません)。 実際にこれに取り組むためのエネルギーを集めたら、報告します。

この@rnystromの更新に感謝します。 君の気持ち、分かるよ。 😕

@rnystromブログ投稿に感謝し、 https

とにかく、bitriseを試してくれてありがとうと言いたかっただけで、もう一度bitriseを試してみた場合に備えて、いつでも喜んでお手伝いします。 Slack(http://chat.bitrise.io)など、どこでも気軽にpingしてください。

@viktorbenei価値があるのは、ライアンのブログ投稿ではありません!

痛い、私の悪い、それはまだここで早朝です😅申し訳ありませんが紳士ます

実は昨夜、ビットライズの仕事を始めました。 報告します!

GitHawkで送信

Bitriseビルドは緑色です! BBと同じくらい簡単にセットアップできます。 勝者はいると思います。

GitHawkで送信

@rnystromを聞いて

実際、初期設定はBBと同様に非常にスムーズである必要があります。 主な違いは、その後の構成UIです。 BBのアプローチは、シンプルなUIを提供することでした。これは、特定のことが不可能/変更できない可能性があることを意味しますが、主に柔軟性に重点を置いて、必要に応じてプロセスのあらゆる側面を指定できるようにします(ただし、これには特定の機能が付属しています)複雑さと急な学習曲線)。 この学習曲線は、特に趣味のプロジェクトでは多すぎる可能性があることを認識しており、改善に取り組んでいます。 デプロイなどの設定を簡単にするために、今年はかなりの数の計画があります;)

https://appcenter.msは有望なようです

透明性の名の下に、私たちが現在いる場所は次のとおりです。私はBitriseとApp CenterCIの両方でGitHawkを構築しています。 どちらのサービスも非常に使いやすいので、両方を使用して、いくつかのベータビルドと単一のApp Storeビルドを提供し、プロセスを文書化してみたいと思います。

これが私の最初の考えです

ビットライズ

長所

  • 素晴らしいサポート(h / t @viktorbenei)
  • かなり速いビルド
  • fastlane経由で展開
  • ビルドステップの極端なカスタマイズと粒度
  • プラットフォームはオープンソース(ish)
  • ビルドをmasterからITCに自動的にプッシュします(私はこれが大好きです)

短所

  • オープンソースの無料プランはありません(_まだ_)
  • スタートアップ(取得または消滅する可能性があります)

アプリセンター

長所

  • ビルドは_非常に_高速です
  • カスタマイズが少ない=合理化が進む
  • iOS / Androidの展開に合わせて調整
  • @TroubleMakerBenロック😄
  • マイクロソフトの支援

    • おそらくすぐに消えることはありません

    • ++リソース

短所

  • オープンソースの無料プランはありません(_まだ_)
  • ビルドするには共有ターゲットが必要です
  • 自動展開tbd(その到来を確認)
  • 使用しないものが多すぎます(たとえば、App Center SDKは必要ありません)
  • ログ出力は_非常に冗長_であり、ビルドエラーを見つけるのは困難です
  • GitHubステータスの統合なし

@rnystromを共有してくれてありがとう! ただ1つの修正ですが、bitriseのWebサービスコンポーネントはオープンソースではないため、APIとWeb UIをセルフホストすることはできません(まだ;))。 構成の実行に使用されるすべてのツール(ワークフローエディター、ランナーCLIなど)はオープンソースであるため、ビルド構成をダウンロードして、次のように自分のMac(または任意のMac / Linux)で実行できます。追い越し車線。

比較のために、ただの質問です

Bitrise:短所:オープンソースの無料プランはありません(まだ)

AppCenterにはオープンソースプランがありますか? 見逃しているかもしれませんが、AFAIKにはどちらもありません。 appcenterのウェブサイトで関連するものが見つからなかったので、私は本当に興味があります。

GitHubステータスの統合なし

それは大きな☹️

@viktorbeneiが更新されます! まだどちらでもない

GitHawkで送信

みなさん、

フィードバックと比較のためのThx。 私はそれが好きで、私たちのPMはこのスレッドを見ています。

自動展開tbd(その到来を確認)

現在、ディストリビューションの改善に取り組んでいます。 乞うご期待。

AppCenterにはオープンソースプランがありますか? 見逃しているかもしれませんが、AFAIKにはどちらもありません。 appcenterのウェブサイトで関連するものが見つからなかったので、私は本当に興味があります。

OSSプランはまだありません。

みんなを応援して、良い週末を!

これは今関連しているかもしれませんhttps://github.com/fastlane/ci👍

@KrauseFx私はこれを見たことがあり、とてもうれしく思います。

コミュニティとしての私たちが機能を構築できるのに、なぜ機能を要求するのですか? さらに、Googleはこれを支持していますか? これ以上は求められませんでした。

コードが進行するにつれてこれに貢献し、成熟するにつれてワークフローに適用することを本当に楽しみにしています。

皆さんがコミュニティのためにやっているすべてに感謝します!

@KrauseFxプレーヤー3がゲームに参加しました

GitHawkで送信

アプリセンターがコミットごとに[ci skip]ような構文をサポートしているとは思わない

@dkhamsingは残念ながら(まだ)そうではありません。

私が気に入ったbuddybuildの本当のプラスの1つは、 FBSnapshotTestCaseユニットテストで予期しない画像が生成された場合に、テスト結果の前後/差分を表示する方法でした。

これらの他のシステムのいずれかに同様の機能があるかどうか誰かが知っていますか?

App Centerはプルリクエストからのビルドをサポートしていますか? 私は非常に混乱していますcc @ TroubleMakerBen

@dkhamsingそれはします!

編集:気にしないでください🙊

GitHawkで送信

@dkhamsing App CenterはPUSHでのビルドをサポートしていますが、PRでのビルド(マージでのビルド)はまだサポートしていません。

ああ、分かった。 Thx Ryan、Ben😊

GitHawkで送信

このスレッドを読んだ後、それは2つの競馬のようです:BitriseとAppCenter。 しかし、UIテストのテーマについては誰も触れていません。BBでは、数回クリックするだけで、仮想デバイスでエスプレッソテストを実行できる方法が気に入りました。 議論中の2つのプラットフォームのいずれかがこれをサポートしていますか?

@dkhamsing App Center Testは、実際には物理デバイスでUIテストを実行します。数千あります。 いいえ、あなたは写真を見ることができません;)

私たちは実際に新しいCIソリューションを特定しようとしています。

  • AppCenter :bbに似ていますが、PRサポートを提供していません。管理者に重点を置いていると思います。また、タスクが失敗した場合、ログはスタックを提供しません。

  • Bitrise:非常に構成可能で、コードカバレッジ、デプロイ、署名、unitTest、UITest、ビルド、配信、クリーン、カスタムなどの多くのオープンな「ステップ」を提供します。構成することができますが、.yamlファイルと少し混乱しています。プッシュ、PRなどを指定してステップをトリガーできます

  • Nevercode非常に構成可能で、ブランチごとのgradlewタスク、ビルドPR、無料プランなしから選択できます。

少なくともBitriseは、私たちが利用できる多くの機能を提供していると思います。

AppCenterでのテストについて上記に投稿されたリンクから

  1. コアコンセプトを確認する
    Test Cloudエクスペリエンスのコアコンセプトを理解することで、使いやすさ、ナビゲーション、サポートによるコミュニケーションが向上します。 最初のテストを実行する前に、これらの概念に精通することをお勧めします。

なんてこった...コアかどうかにかかわらず、コンセプトを確認したくはありません。BBの場合と同じように、2回のクリックで動作させたいだけです:(この作業を行うのに10時間もかかりません。私はDevOpsエンジニアではなくコーダーです...

はい、AppCenterのドキュメントを合理化できます

GitHawkで送信

@acristescu

このスレッドを読んだ後、それは2つの競馬のようです:BitriseとAppCenter。 しかし、UIテストのテーマについては誰も触れていません。BBでは、数回クリックするだけで、仮想デバイスでエスプレッソテストを実行できる方法が気に入りました。 議論中の2つのプラットフォームのいずれかがこれをサポートしていますか?

(まだ)シングルクリックではありませんが、いくつかの点でより強力です: https

セットアップを簡単にするために取り組んでいます(そのため、機能が不足しているためではなく、まだ「ベータ版」です;))。

@acristescu @dkhamsing私たちは知っています! フィードバックをお寄せください。

@viktorbenei試してみるつもりですが、アートスタイルが

問題ありません@acristescu 、私は間違いなくあなたのポイントを

単純なリポジトリ(https://github.com/acristescu/GreenfieldTemplate)で両方を試して、どこに到達するかを確認することにしました。 これまで、App Centerを試し、いくつかの問題にぶつかりました。

  • 解決しました(gradleビルドツールが見つかりませんでした!)、プロジェクトのgradleにgoogle()リポジトリを手動で追加する必要があります
  • それはビルド番号を1から再開しましたが、私はすでにPlayストア42でリリースしましたが、グーグルはビルドを拒否するだけです!)
  • 仮想デバイスで無料でテストする方法を見つけることができませんでした。30日間の無料トライアルがある実際のデバイスでのみテストしました。
  • ユニットテストを実行したかどうかはわかりません。
##[warning]No test result files matching /Users/vsts/agent/2.127.0/work/1/s/**/build/test-results/TEST-*.xml were found, so publishing JUnit test results is being skipped.

どういうことかわからない...

Bitrise:プラス面では、セットアップは同じように簡単でしたが、何かを変更する必要がある場合は、ymlファイルを表示してそれをいじる必要があると思います(更新:ワークフローエディターと呼ばれるものを見つけました。怖いですが強力に見えます) 。 障害:

  • どのバリアントをビルドするかを尋ねられず、間違ったバリアントを選択しました。 prodReleaseが欲しかったのですが、どういうわけか、他の2つのmockDebugprodDebugを正確に構築することにしました。 どこで変更すればいいのかわかりませんが、きっとあるはずです。
  • ビルドに時間がかかり、アプリセンターの場合は2分16分ではなく4分でした。 これはおそらく上記の問題が原因ですか?
  • ログのどこにもjunitテストについての言及はありません。 私はそれがそれらを実行したとは思わない。 おそらくワークフローエディタのどこかに、それらを追加する方法がわかりませんか? (ワークフローエディターを約10分間いじくり回して更新し、それを見つけました。実行するtestターゲットを自由に選択できるようにするためのボーナスポイント)
  • 使用したビルドIDがわからないのですが、どうすればわかりますか?

これらを投稿するためのThx

GitHawkで送信

image

詳細なフィードバックをありがとう@acristescu 、私たちはそれを大いに感謝します。 特にAppCenterのJUnitテストレポートファイルの警告では、これは実際のテスト実行に影響を与えないため、すぐに修正する必要があります。
続けてください!

2時間かかりましたが、アプリセンターにGooglePlayにアップロードするよう説得することができました。 ただし、これを自動的に行うように説得することはできないようです。署名されたAPKをアプリセンターからダウンロードしてから、デプロイ/ストアセクション(!)にアップロードして機能させる必要がありました。 ひどく複雑なようです、私は何が間違っているのですか?

PS:怪我に侮辱を加えるために、最初に無効にするのを忘れたので、BuddyBuildは同じ期間に数回展開され、人間の介入なしで自動的に機能します...

こんにちは@acristescu

Re: https

どのバリアントをビルドするかを尋ねられず、間違ったバリアントを選択しました。 私はprodReleaseが欲しかったのですが、どういうわけか、他の2つのmockDebugとprodDebugを正確にビルドすることにしました。 どこで変更すればいいのかわかりませんが、きっとあるはずです。

実際、現在のスキャナーでは、基本ワークフロー用にassembleDebug構成されたGradleRunnerステップが追加されます。 これは簡単ではないかもしれませんが、要するにprodReleaseをビルドしたい場合、gradleタスクはassembleProdReleaseです。 lintを実行する場合、gradleタスクはlintです。 これらすべてをGradleRunnerステップで実行できます。実際、gradleは複数のタスクを処理できるため、 lintを実行してからassembleProdRelease実行し、これをタスクとして指定することもできます。 lint assembleProdRelease両方を行う

新しいステップと新しいスキャナーのデフォルト構成に取り組んでおり、より具体的なステップ(たとえば、タスクをで設定する代わりに、gradle lintタスクを実行する「Lint」ステップ)を使用して、これを簡単にします。 「GradleRunner」ステップ)😉

ビルドに時間がかかり、アプリセンターの場合は2分16分ではなく4分でした。 これはおそらく上記の問題が原因ですか?

assembleDebugは、単一の「ProdRelease」ではなく、2つの別々のAPK /バリアントを生成する可能性が高いため、実際にそうです。

ログのどこにもjunitテストについての言及はありません。 私はそれがそれらを実行したとは思わない。

テストを実行するGradleRunnerステップのgradleタスク入力としてtestを指定するか、デフォルトでそのgradleタスクを実行するように構成されているGradle UnitTestステップを追加します。

使用したビルドIDがわからないのですが、どうすればわかりますか?

ビルド番号をbitrise.ioビルド番号に設定するかどうかを意味する場合:デフォルトでは設定しません。たとえば、AndroidのversionCodeとversionNameの変更ステップを追加することで設定できます。

フィードバックをお寄せいただきありがとうございます。セットアップエクスペリエンスのこれらのポイントを改善するために、すでに耳を傾けており、すでに予定されています。 ;)

素晴らしい議論。 CarthageをサポートするBuddyBuildの代替品を見つけるのは難しいと思っています。

私はNevercodeを調べました、彼らはココアポッドだけをサポートします。

AppCenterはCarthageをサポートしていると思います。

他のもの?

@jamesone

Bitriseが最適なオプションだと思います。これらは、パイプラインbitbucketのようなプラットフォームを提供します。また、Stepsを使用してニーズに基づいて構成することもできます。

実際、私たちはbbからbitriseに移行し、AndroidとiOSを使用しており、すべてが完璧です。

素晴らしい@cbedoybuddybuildがすべてのブランチに提供するインストール可能なビルドについてどうしましたか? Bitriseにはこれに対する統合またはサポートがありますか?

PRまたはタグをプッシュ、作成すると、ワークフロー(多くの_ステップ_)をトリガーでき

また、ブランチごとにビルドをスケジュールすることもできます。

以下を確認する必要があります。

https://devcenter.bitrise.io/bitrise-cli/workflows/
https://devcenter.bitrise.io/bitrise-cli/steps/

ビットライズがどのように機能するかを理解すると、必要なものに基づいてワークフローを作成できます。つまり、誰かがPRを作成する場合は、unitTestingを実行するだけのワークフローが必要です。または、マスターがタグ付けされたときに.ipaをビルドして生成するワークフローが必要です。

BitriseはDockerイメージのようなもので、unitTest、CodeCoverage、またはアーカイブとデプロイを実行するためにサードパーティの_steps_を選択できます。

素晴らしい男! 本当に面白そうですね。 調べてみます。

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

Iron-Ham picture Iron-Ham  ·  3コメント

rnystrom picture rnystrom  ·  3コメント

BasThomas picture BasThomas  ·  3コメント

weyert picture weyert  ·  3コメント

rnystrom picture rnystrom  ·  3コメント