2017-02-08 9 views
1

3つまたは4つの別のタスクを含む1つのGulpタスクを実行する必要があります。問題は(ステップ)である:私は、リモートサーバーからファイルをダウンロードする必要がある1特定の順番でGulpタスクを実行する

  1. タスク#で
  2. ダウンロードが完了した後、私はタスク#2が行われたときに、私は必要な2
  3. タスク位に実行する必要がありますタスク#3

を実行するためには、これは私のコードです:

var gulp  = require('gulp'), 
 
    decompress = require('gulp-decompress'), 
 
    download = require("gulp-download"), 
 
    ftp  = require('gulp-ftp'), 
 
    gutil  = require('gulp-util'); 
 

 
gulp.task('default', function(){ 
 
    console.log("Hello gulp"); 
 
}); 
 

 
var src_download = [ 
 
    "https://wordpress.org/latest.zip" 
 
]; 
 

 
gulp.task('download', function(){ 
 
    download(src_download) 
 
    .pipe(gulp.dest("./")); 
 
}); 
 

 
gulp.task('unzip-wp', function(){ 
 
    return gulp.src('latest.zip') 
 
    .pipe(decompress({strip: 1})) 
 
    .pipe(gulp.dest('./')); 
 
}); 
 

 
gulp.task('install', ['download', 'unzip-wp']);

あなたが見ることができるように、私は「インストール」を実行するタスクをしようとしています - 「ダウンロード」を完了する前にそれが解凍-WP 'を実行します...

私が間違って何をしているのですか?

「ダウンロード」タスクが完了した後にのみ、「unzip-wp」タスクを実行する必要があります。

おかげ

+0

いくつか例を挙げてください。 – vol4ikman

答えて

3

あなたは終了する「ダウンロード」タスクのための「解凍-WP」タスクの待ちを持つ必要があります。これはあなたが探しているものだろう。すなわち「ダウンロード」タスクは本当にも、そのタスクにreturn文を追加し終えていることを確認するには、次の

var gulp = require('gulp'), 
    decompress = require('gulp-decompress'), 
    download = require("gulp-download"), 
    ftp = require('gulp-ftp'), 
    gutil = require('gulp-util'); 

gulp.task('default', function() { 
    console.log("Hello gulp"); 
}); 

var src_download = [ 
    "https://wordpress.org/latest.zip" 
]; 

gulp.task('download', function() { 
    return download(src_download) 
     .pipe(gulp.dest("./")); 
}); 

gulp.task('unzip-wp', ['download'], function() { 
    return gulp.src('latest.zip') 
     .pipe(decompress({strip: 1})) 
     .pipe(gulp.dest('./')); 
}); 

gulp.task('install', ['unzip-wp']); 
0

解凍作業の必要は、それはまた、意志がない非常にシンプルなそれはあなたの他のファイルを混乱させないためにワードプレスのフォルダに解凍します。

gulp.task('download', function(){ 
    download(src_download) 
    .pipe(decompress({strip: 1})) 
    .pipe(gulp.dest('./wordpress')); 
}); 


gulp.task('default', ['download']); 
関連する問題