2017-02-25 2 views
0

git 저장소를 확보하고 npm install 및 npm 빌드를 실행 한 다음 클라우드 파운드리에 푸시해야하는 파이프 라인의 일부로 어떻게 추가 할 수 있습니까?Concourse 파이프 라인에서 npm 실행

지금까지 저장소를 잡고 클라우드 파운드리를 푸시 할 수있게되었습니다. 그러나 npm 작업을 빌드 할 수 있도록 만드는 방법에 대해서는 확실하지 않습니다. BOSH 디렉터를 사용하여 모든 콘 코스를 처리합니다.

모든 방향이나 아이디어는 매우 감사하겠습니다. 여기이 자습서를 다음이 내 파이프 라인을 기반으로하고있다 : 을 (어디서 난 건물 NPM 작업을 추가하는 방법에 대한 갈 것이라고 어떻게?) 당신은 스크립트를 실행하는 task를 작성해야

--- 
resources: 
- name: resource-web-app 
    type: git 
    source: 
    uri: https://github.com/cloudfoundry-community/simple-go-web-app.git 

- name: resource-deploy-web-app 
    type: cf 
    source: 
    api: {{cf-api}} 
    username: {{cf-username}} 
    password: {{cf-password}} 
    organization: {{cf-organization}} 
    space: {{cf-space}} 
    skip_cert_check: true 

jobs: 
- name: job-deploy-app 
    serial: true 
    plan: 
    - {get: resource-web-app, trigger: true} 
    - put: resource-deploy-web-app 
    params: 
     manifest: resource-web-app/manifest.yml 
     path: resource-web-app 

https://github.com/starkandwayne/concourse-tutorial/tree/master/15_deploy_cloudfoundry_app

답변

1

클라우드 파운드리를 시작하기 전에 npm installnpm build을 실행합니다.

아래 스크립트에서 concourse는 resource-deploy-web-app 디렉토리에서 cf로 푸시 할 비트를 찾게되므로 스크립트에 푸시 할 모든 항목을 넣어야합니다. 이, 마지막 질문에 대한 감사를!

jobs: 
- name: job-deploy-app 
    serial: true 
    plan: 
    - {get: resource-web-app, trigger: true} 
    - task: build-npm 
    config: 
     platform: linux 
     image_resource: 
     type: docker-image 
     source: 
      repository: node 

     inputs: 
     - name: resource-web-app 

     run: 
     path: resource-web-app/scripts/script-that-does-npm-stuff.sh 

     outputs: 
     - name: resource-deploy-web-app 

- put: resource-deploy-web-app 
    params: 
     manifest: resource-web-app/manifest.yml 
     path: resource-web-app 
+0

멋진 사람이 많은 :

그래서 새로운 직업 구성은 같을 것입니다. 아마도 무관계. 이 파이프 라인을 사용하면 언제든지 내 마스터에 체크인 할 수 있습니다. 클라우드 파운드리를 올바르게 푸시 할 것입니다. - 방아쇠 때문에? – jedgard

+0

그래, 언제든지 마스터 잡을 밀어'job-deploy-app'가 실행됩니다 –

+0

안녕하세요 조쉬, 일부 읽기 전용에 대해 "매핑 값은이 컨텍스트에서 허용되지 않습니다." – jedgard

관련 문제