サーバーに CruiseControl.NET をセットアップしました。私はすべてが完璧に機能していました。つまり、SVN からコードをプルしてビルドし、ビルドが成功したら、プロジェクト トリガーを使用してプロジェクト セットアップを開始し、コードを DEV 環境にデプロイします。主にユーザーのグループだけで、いくつかの内部セキュリティ設定を追加しました。LDAP セキュリティを使用しています。セキュリティ機能を追加すると、DEV サーバーへの自動展開が機能しなくなりました。プロジェクトを強制的にビルドしてデプロイすることはできますが、プロジェクト #1 が正常にビルドされると、デプロイ プロジェクトのトリガーが開始されたときに次のエラーが発生します (セキュリティ上の理由から、プロジェクト名を PROJECT に置き換えました)。
2010-07-20 13:28:19,354 [プロジェクト:デバッグ] サーバーから ProjectStatus を取得: tcp://localhost:21234/CruiseManager.rem
2010-07-20 13:28:19,355 [プロジェクト: エラー] 例外: プロジェクト'PROJECT' は CCNet サーバーに存在しません。ThoughtWorks.CruiseControl.Remote.NoSuchProjectException: プロジェクト「PROJECT」が CCNet サーバーに存在しません。
ThoughtWorks.CruiseControl.Core.Triggers.ProjectTrigger.GetCurrentProjectStatus()
で ThoughtWorks.CruiseControl.Core.Triggers.ProjectTrigger.Fire()
で ThoughtWorks.CruiseControl.Core.Triggers.MultipleTrigger.Fire()
で ThoughtWorks.CruiseControl.Core.ProjectIntegrator .PollTriggers()
は ThoughtWorks.CruiseControl.Core.ProjectIntegrator.Integrate()
で、ThoughtWorks.CruiseControl.Core.ProjectIntegrator.Run() では
CruiseControl 用に Active Directory アカウントをセットアップしており、サービスはそのユーザー アカウント (管理者権限を持つ) で実行されています。CruiseControl 構成の内部設定セクションにある my "admin" グループにユーザーを追加して、CruiseControl ユーザーにすべてのプロジェクトへのフル アクセスを許可しました。
自動展開の実行を確認できるように、CruiseControl がプロジェクトにアクセスできるようにする方法についてのアイデアはありますか?