代码之家  ›  专栏  ›  技术社区  ›  Barath

Concourse CI:静态构建包问题

  •  0
  • Barath  · 技术社区  · 6 年前

    我正在使用静态构建包将一个简单的angular4应用程序部署到cloud foundry。在访问应用程序时,我总是遇到nginx 403问题。

    jobs:
    - name: app
      serial: true
      plan:
      - get: develop-repo
      - task: npm-build
        config:
            platform: linux
            image_resource:
                type: docker-image
                source:
                    repository: node
            run:
                path: sh
                args:
                - -exec
                - |
                    cd develop-repo
                    npm install
                    npm run dist                              
            inputs:
            - name: develop-repo
            outputs:
            - name:
      - put: develop
        params:
          manifest: develop-repo/manifest.yml
          current_app_name: app   
          path: develop-repo        
    
    
    
    resources:
    - name: develop-repo
      type: git
    - name: develop
      type: cf
    

    清单.yml:

    ---
    applications:
    - name: app
      instances: 1
      memory: 512M
      disk_quota: 512M  
      buildpack: staticfile_buildpack 
      stack: cflinuxfs2 
    

    我所做的就是 git clone -> npm build -> cf deploy

    注释 :所有资源变量都已正确设置。只是为了更好的可读性而忽略了

    1 回复  |  直到 6 年前
        1
  •  0
  •   Barath    6 年前

    在尝试了两个选项之后,我发现通过将工件发布到输出文件夹,我们可以从输出文件夹中推导出应用程序。

    ---
    jobs:
    - name: app
      serial: true
      plan:
      - get: develop
      - task: npm-build
        config:
            platform: linux
            image_resource:
                type: docker-image
                source:
                    repository: node
            inputs:
            - name: develop
            outputs:
            - name: artifacts
            run:
                path: sh
                args:
                - -exec
                - |
                    cd develop
                    npm install
                    npm run dist
                    ls
                    cp -R dist ../artifacts/                            
    
      - put: deploy-cf
        params:
            manifest: develop/ci/manifests/manifest-int.yml
            path: artifacts/dist
    
    
    resources:
    - name: develop
      type: git
      source:
        uri: <<GITHUB-URI>>
        branch:<<GITHUB-BRANCH>>
        username:<<GITHUB-USERNAME>>
        password: <<GITHUB-PASSWORD>>
    - name: deploy-cf
      type: cf
      source:
        api: <<CF-API>>
        username: <<CF-USERNAME>>
        password: <<CF-PASSWORD>>
        organization: <<CF-ORG>>
        space: <<CF-SPACE>>