IT이야기

VSTS를 사용하는 ASP.NET Core Web API의 CI/CD

cyworld 2021. 9. 13. 21:49
반응형

VSTS를 사용하는 ASP.NET Core Web API의 CI/CD


Visual Studio 2017(커뮤니티 에디션)을 사용하여 ASP.NET Core Web API 앱을 만들었습니다. Visual Studio를 사용하여 Azure App Service에 성공적으로 게시할 수 있습니다.

이제 VSTS를 사용하여 CI/CD를 설정하고 싶습니다. VSTS에서 프로젝트를 생성하고 빌드 정의를 생성한 Visual Studio의 'Configure Continuous Delivery' 옵션을 사용했습니다. Nuget 복원 오류를 피하기 위해 VSTS에서 'ASP.NET Core' 템플릿을 기반으로 새 빌드 정의를 만들어야 했습니다. 이제 솔루션이 빌드되고 테스트가 실행되지만 '게시' 작업은 경고와 함께 완료됩니다.

##[warning]No web project was found in the repository. Web projects are identified by the presence of either a web.config file or wwwroot folder in the directory.

'아티팩트 게시' 작업에 유사한 경고가 있습니다.

##[warning]Directory 'd:\a\1\a' is empty. Nothing will be added to build artifact 'drop'.

그리고 분명히 빌드는 아티팩트를 생성하지 않습니다.

기본 ASP.NET Core 빌드 템플릿에 빌드 작업을 추가해야 합니까? VSTS를 사용하여 내 Web API를 Azure에 게시하려면 어떻게 해야 하나요?


경고 메시지와 같이 저장소에 웹 프로젝트가 없는 것 같습니다. 따라서 .NET Core 게시 작업에서 웹 프로젝트 게시 옵션을 선택 취소 하고 프로젝트 내 옵션을 지정해야 합니다 .csproj.

여기에 이미지 설명 입력

또한 아래와 같이 웹 프로젝트 게시 옵션에 대한 힌트 메시지를 찾을 수 있습니다 .

true인 경우 작업은 리포지토리에서 웹 프로젝트를 찾고 게시 명령을 실행하려고 시도합니다. 웹 프로젝트는 디렉토리에 web.config 파일 또는 wwwroot 폴더가 있는 것으로 식별됩니다.


이것은 당신을 도울 수 있습니다..

나는 또한 내 경우에 따라이 오류에 직면했습니다. 내 파일을 저장하기 위해 wwwroot 폴더를 사용합니다.

프로젝트.csproj

  <ItemGroup>
    <Folder Include="wwwroot\FoodItem\" />
    <Folder Include="wwwroot\Shops\" />
  </ItemGroup>

vst에 푸시한 후 사이드 저장소에 wwwroot 폴더가 없었습니다. 그 때문에이 오류가 발생하고 다시 하위 폴더 오류가 수정 된 wwwroot를 푸시했습니다.

참조URL : https://stackoverflow.com/questions/46694349/ci-cd-of-a-asp-net-core-web-api-using-vsts

반응형