2017-07-13 16 views
2

昨日、BitBucketがCICDパイプラインをサポートしていることに気付きました。BitBucketパイプライン - ノード/ gulp/git ftpを使用してビルドとデプロイ

私はそれを設定するのにいくつかの難しさがあります。一般的には

私の構築プロセス:

  • は-g亭
  • 亭が
  • -gがぶ飲みをNPMをインストール
  • 一気

インストール

  • NPMをインストールNPMをインストールgulpコマンドは、HTMLアプリケーションを構築して、出力をbuildフォルダー。ビルドが完了したら、コードを自分のウェブサイトのディレクトリに移動したいと思います。

    これは、次のbitbucket.ymlに変換:私は取得しています問題は、git ftp initsrcフォルダをアップロードしているようだ、とということです

    # This is a sample build configuration for JavaScript. 
    # Check our guides at https://confluence.atlassian.com/x/14UWN for more examples. 
    # Only use spaces to indent your .yml configuration. 
    # ----- 
    # You can specify a custom docker image from Docker Hub as your build environment. 
    image: node:6.9.4 
    
    pipelines: 
        default: 
        - step: 
         caches: 
          - node 
         script: # Modify the commands below to build your repository. 
          - npm install 
          - npm install -g bower 
          - bower install --allow-root 
          - npm install -g gulp 
          - gulp 
          - cd build 
          - apt-get update 
          - apt-get -qq install git-ftp 
          - git ftp init --user $FTP_USERNAME --passwd $FTP_PASSWORD ftp://mywebsite.com/public_html/mydirectory 
    

    ないgulp中に作成されbuild 1の内容ステップ。

    アイデア?


    更新:--syncrootは、部分的な修正であるように見えるん。現在、buildのディレクトリをアップロードしようとしています。ただし、この時点での問題点は、git ftpがトラッキングされたファイルを同期しているように見えることだけです。

    buildフォルダー内のファイルは、パイプラインビルド中に作成されるため、これらのファイルには適用されません。

    私は.git-ftp-includeという名前のファイルを追加しようとしましたが、説明されているように、未追跡のファイルを転送する必要があります。残念ながら、私は自分のコードを展開するのに成功していません。

    .git-ftp-includeファイルの内容: ビルド/ index.htmlを:/src/index.html基本的に言う

    srcディレクトリ内index.htmlが変更されるたびにbuild SyncRootのからindex.htmlをアップロードします。

  • 答えて

    0

    によって転送される未追跡ファイルについては、.git-ftp-includeの構文は!filenameです。

    +0

    実際には '!'ファイルが常にアップロードされるべきであることを意味します。私が使用した表記法は、変更されたファイルのみをアップロードしたいときに使用されます。 さらに、私は既に '!'うまくいかなかった。 – larssy1

    関連する問題