開発中の Web サイト用に CI サーバーをセットアップしようとしていますが、新しい ASP.NET 5 でそれを行う方法に関する情報が見つかりません。
5 に答える
私はあなたの兄弟を手に入れました。これを理解するのに数日かかりました。この構成は、ASP.NET Core 1.0 RC2/preview2 プロジェクトの TeamCity v10 にあります。おまけとして、Octopus Deploy にプッシュするステップを含めています。dotnet teamcity プラグインと、プッシュ機能を備えた最新の Octopus Deploy プラグインをインストールする必要があります。ビルド手順の概要は次のとおりです。
dotnet restore
まず、パッケージの復元に使用しないでください。.Net Core としてコンパイルされていない内部ナゲット パッケージがある場合は機能しません。これを理解するのに永遠にかかりました。dotnet restore
人々がすべてを .Net Core に変換するか、Microsoft が dotnet.exe をより柔軟に修正するまで、使用を試みることは無視します。
私が読んだもののいくつかは、NuGet の最新のベータ版である 3.5 を使用すると述べていました。これを試してみると、次のエラーが発生します。
[14:30:09][復元] D:\buildAgent\tools\NuGet.CommandLine.3.5.0-rc1\tools\NuGet.exe から NuGet.exe 3.5.0.1737 を起動しています
[14:30:10][復元] アセンブリ 'NuGet、バージョン = 3.5.0.1737、カルチャ = ニュートラル、PublicKeyToken = 31bf3856ad364e35' から型 'NuGet.CommandAttribute' を読み込めませんでした。
それが何を意味するのかわからないし、気にしない。今のところ 3.4.4 を使用してください。必要に応じて残りを入力します。
ステップはdotnet publish
かなり簡単です。最終ステップで使用するため、必ず出力ディレクトリを指定してください。また、このバグ%teamcity.build.workingDir%
のため、変数を使用して必ず絶対パスを指定してください。そうしないと、ファイルが見つからず、サイト全体の公開が完了しません。web.config や wwwroot などの機能が失われます。
web.config
最後に Octopus にプッシュします。これは私にとって非常にトリッキーでした。と言う部分に注意
%teamcity.build.workingDir%/published-app/**/* => OrderReviewBoard.1.0.0.zip
これのいずれかの部分が無効である場合、それ自体を説明せずにステップが失敗します!!! %build.number%
無効とは、適切に解決されない zip 名にteamcity 環境変数 (すべての例で示されているように) を入れている可能性があることを意味します。または、存在しないパスを指定しています。または、多くの場合、「[Octopus Deploy] プッシュするパッケージを指定してください」というエラーが表示されます。つまり、そのステートメントが失敗したため、生成されませんでした。そこに自動インクリメントビルド番号が必要だと思います。その方法を理解するのはあなたに任せます。
ここで実行されていることに混乱しないでください。タコは自分のサイトで説明しようとしていますが、ここには隠されています。とがocto pack
ありocto push
ます。octo pack
その「パッケージパス」ボックスに入力したステートメントに基づいて、の新しいバージョンが見えなくなります。nuspec パッケージを作成しようとしたり、dotnet pack
. これらは私たちの目的にとって行き止まりです。.zip ファイルを作成して、生活を続けましょう。最後に、追加したコマンド ライン引数に注目してください。これらはあなたを少し助けます。それらは必須ではありません。幸運を。
現時点では、.NET Core プロジェクト用の TeamCity プラグインの使用を試すことができます: https://github.com/JetBrains/teamcity-dotnet-plugin
ASP.NET Core の世界には多くの変更があり、それについて何度か尋ねられたので、TeamCity for .NET Core を使用して CI/CD 環境をセットアップする方法に関するステップバイステップのガイドを書き留めました。初心者には特に参考になると思います。