2017-10-06 7 views
2

기본적으로이 용도로 기본 템플릿을 사용하는 기능 응용 프로그램을 실행하는 리소스가있는 리소스 관리자 템플릿을 만들었습니다. 수동으로 파일 저장소에 파일을 복사 할 수 있습니다 (sites\wwwroot). functionapp을 감았을 때 작동합니다.Azure에서 git을 사용하지 않고 functionapp 코드를 배포하려면 어떻게해야합니까?

하지만 내가 궁금한 것은 gut를 사용하지 않고 실제 functionapp을 업데이트하기 위해 여러 파일을 배포하는 올바른 방법이라는 것입니다. git 사용 방법에 대한 몇 가지 예를 볼 수 있지만 내 문제는 단일 저장소에 모든 기능을 갖기를 원한다는 것입니다. 더 작은 저장소 (나는 monorepo를 원합니다)가 아닙니다.

Azure에서 코드를 .gz 파일로 S3에 업로드하면 람다를 만들 때 zip 경로가 표시됩니다. 그리고 나서 나중에 새로운 zip 및 presto를 밀어 올리도록 호출 할 수있는 간단한 API가 있습니다.

azure에서 동등한 API를 사용하여 zip으로 지정하고 올바른 디렉토리에 파일의 압축을 풀어 주시겠습니까?

는 편집 : 나는 마침내 그것을 알아 내기 위해 관리

는 상단 대답은 본질적으로 잘했지만, 난 그래서 난 여기를 놓을 게요 파악했다 몇 가지 추가 단계가 있었다.

컬의 특정 문서는 here입니다. 팀과 관련된 내 문제 스레드는 here입니다. 이에

$ curl -XPUT --data-binary @index.js.zip "https://abc:[email protected]/api/zip/site/wwwroot/hello" 

참고 :

내가 사용되는 실제 컬 호출은 이것이다

  • 당신은 떠들썩한 파티에서 우편 번호를 만들려면 나쁜 페이로드
  • --data-binary, -d 결과를 사용해야합니다 내가 사용 : $ zip index.js.zip index.js
  • abc:xyz은 배포 사용자 이름과 암호입니다
  • 보낼 올바른 경로는 site/wwwroot/hello입니다. 여기서 hello은 기능의 이름입니다.
당신은 푸른 포털 UI ( documented here)에 사용자 이름과 암호를 설정할 수 있지만, 당신은 또한 이렇게 같은 azure-cli으로 설정할 수 있습니다

: 당신이 한 후에는 트릭을

$ az login 
$ az webapp deployment user set --user-name abc --password xyz 

그리고 그했다 기본 자격 증명에서 사용할 수있는 배포 자격 증명을 설정하여 kudu API를 호출합니다.

답변

2

나머지 API를 사용하여 기능 응용 프로그램을 배포하는 것은 Azure에서도 허용됩니다. 우리는 다음 Rest API를 사용하여이를 수행 할 수 있습니다. Kudu REST API에서 자세한 정보를 얻을 수 있습니다. 파일을 게시하는 방법에 대해 ftp 사용 및 암호를 게시 파일에서 가져올 수 있습니다. 다른 SO thread을 참조하십시오.

PUT https://{user}:{password}@{FunctionAppname}.scm.azurewebsites.net/api/zip/{path} # example path:site/wwwroot 
+0

감사합니다. 어젯밤 해킹 후 어젯밤에 알아 냈지만 본질적으로 옳았 기 때문에 답변으로 표시하고 있습니다. 내 솔루션에 대한 자세한 내용으로 내 질문을 업데이트했습니다. –

+0

또한 [here] (https : // github.)에서 설명한 것처럼 새로운 [zip deployment] (https://github.com/projectkudu/kudu/wiki/Deploying-from-a-zip-file) API를 사용해보십시오.co.kr/projectkudu/kudu/issues/2589) –

+0

@DavidEbbo 귀하의 정보를 보내 주셔서 감사합니다. –