私は現在、BitbucketでホストしているgitリポジトリからソースコードをプルするTeamCityビルドサーバーをセットアップしています。これは、(個人アカウントではなく)Bitbucketのチームの一部としてセットアップされたリポジトリに対して行っています。
私が遭遇しているのは、URLパスがユーザーごとにカスタムであるように見えるということです。たとえば、私のパスは次のようになります。
https://[email protected]/TeamName/RepoName.git
私が会社を辞めた場合、これは40以上のビルドに更新するのは悪夢です。
ビルドサーバーが使用するためにbitbucketでサービスアカウントを作成することを検討しましたが、これはユーザーの1人を占有します(10ユーザーライセンスしかありません)。
別のアカウントを作成することをお勧めしますか、それともより良いオプションがありますか?
デプロイメントキーを使用する必要があります。プライベートリポジトリとパブリックリポジトリの両方への読み取り専用アクセスを提供します。 https://confluence.atlassian.com/display/BITBUCKET/Use+deployment+keys のドキュメントを確認してください
ビルドのコードをプルするだけでなく、TeamCity側でより多くのことを実行したい場合は、別のアカウントを作成することをお勧めします(たとえば、ビルドのラベル付けなど)。 TeamCityに別のアカウントを使用する場合は、ユーザー/パスワード認証またはSSHキー認証の両方を使用できます。
リポジトリのURLパスでは、「MyUserName @」の部分を安全に削除できます。これにより、アクセス方法に関係なく、すべてのリポジトリのURLが統一されます。さらに、TeamCity構成でユーザー名とパスワードをパラメーター化して、誰かがカスタムビルドを実行したいときにそれらをオーバーライドできるようにすることができます。
TeamCityはGitフレーバーにとらわれないため、私に関する限り、TeamCityに「推奨されるアプローチ」はありません。しかし、Atlassianは、Bambooと統合するときにSSHキーを使用することを提案しています。管理とデバッグがはるかに簡単になるため、ライセンスに専用アカウントがある限り、専用アカウントを使用しています。