2017-11-14 20 views
0

Visual Studio Team Services (VSTS)에서 빌드 한 dotnet core 2.0을 사용하고 있습니다. 내가 추가 한 비주얼 스튜디오 빌드 단계에서 내장 다음 인수와 msbuild를 사용하고 있습니다 :msbuild pack 명령에 디렉터리 구조가 포함되어 있습니다.

/p:DeployOnBuild=true 
/p:WebPublishMethod=Package 
/p:PackageAsSingleFile=true 
/p:SkipInvalidConfigurations=true 
/p:DeployIisAppPath="Default Web Site" 
/p:DesktopBuildPackageLocation="$(build.artifactstagingdirectory)\MyProject.BuildVersion.zip" 

이 zip 파일을 만들 것이지만, 내부 구조가 추한 및 하위 폴더로 디렉토리를 준비 전체 유물을 포함합니다. 예 : 실제 웹 사이트 파일 구조에 도달 할 때까지 내 zip 파일 내의 경로는 Content\d_C\a\1\s\src\MyProjectName\obj\Release\netcoreapp2.0\PubTmp\Out

입니다. 프로젝트 파일을 압축하여 zip 파일의 루트에있는 방법이 있습니까? 나는 몇 가지 추가 단계를 사용하여 해결 방법을 가지고 있지만, 모든 것을 압축하는 단일 빌드 단계를 사용할 수 있으면 좋을 것입니다.

편집 우리는 푸른에 배포하는 문어 배포를 사용합니다. 그것은 DOTNET 코어 2.0 프로젝트이기 때문에

+0

왜 구조가 중요합니까? WebDeploy가 배포를 처리합니다. –

+0

@DanielMann - Octopus Deploy를 사용하고 'Azure Web App 배포'단계를 사용하고 있습니다. 파일은 그대로 Azure로 만들었지 만 (예상대로 압축이 풀림) 더 좋은 방법이 있다면 알려주세요. – ps2goat

답변

1

, 당신은 .NET의 핵심 작업을 통해 프로젝트를 게시 할 수 있습니다 : 비주얼 스튜디오 빌드 작업에 대한

enter image description here

, 당신은 소스를 제거, /P:PackageTempRootDir="" 인수를 지정하려고 할 수 통로.

반면 Azure App Service를 배포하면 푸른 색으로 배포 한 후에도 폴더 구조가 유지되지 않으므로 https://[app name].scm.azurewebsites.net/DebugConsole에 액세스하여 폴더와 파일을 확인할 수 있습니다.

+0

우리는 테스트하려는 지형지 물을 배포 할 수 있어야하는 품질 보증팀을 운영하고 있습니다. Azure App Service 배포에서 사용할 수 있습니까? 그것은 커밋이 지점에 만들어 졌을 때만 배포되도록 설정된 것처럼 보였습니다. 하지만 다른 답변에 감사드립니다. 나는 .NET Core 게시 작업을 사용하여 최종 결과를 얻었습니다. 버전 2 미리보기를 사용하고 있습니다. – ps2goat

+0

새 포럼 스레드에서 별도의 질문을하는 것이 좋습니다. 따라서 포럼 독자는 질문과 답변을 쉽게 인식 할 수 있습니다. –

+0

이 질문과 관련이 있다고 생각합니다. Azure App Service 배포에 대한 답변과 새로운 커밋을 사용하지 않고 배포 대기열을 만들 수있는 도구 (Octopus Deploy)를 사용했기 때문입니다. 간단한 예 또는 아니오 (이 시점에서 분명히 새로운 기능이 지속적으로 추가되고 있음)에 감사드립니다! – ps2goat