mirror of https://github.com/grpc/grpc.git
Merge pull request #6109 from murgatroid99/node_grpc_tools_package
Created node tools package to distribute protoc and eventually the pluginpull/6121/head
commit
c236a213ee
4 changed files with 173 additions and 0 deletions
@ -0,0 +1,54 @@ |
||||
#!/usr/bin/env node
|
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
/** |
||||
* This file is required because package.json cannot reference a file that |
||||
* is not distributed with the package, and we use node-pre-gyp to distribute |
||||
* the protoc binary |
||||
*/ |
||||
|
||||
'use strict'; |
||||
|
||||
var path = require('path'); |
||||
var execFile = require('child_process').execFile; |
||||
|
||||
var protoc = path.resolve(__dirname, 'protoc'); |
||||
|
||||
execFile(protoc, process.argv.slice(2), function(error, stdout, stderr) { |
||||
if (error) { |
||||
throw error; |
||||
} |
||||
console.log(stdout); |
||||
console.log(stderr); |
||||
}); |
@ -0,0 +1,41 @@ |
||||
/* |
||||
* |
||||
* Copyright 2015, Google Inc. |
||||
* All rights reserved. |
||||
* |
||||
* Redistribution and use in source and binary forms, with or without |
||||
* modification, are permitted provided that the following conditions are |
||||
* met: |
||||
* |
||||
* * Redistributions of source code must retain the above copyright |
||||
* notice, this list of conditions and the following disclaimer. |
||||
* * Redistributions in binary form must reproduce the above |
||||
* copyright notice, this list of conditions and the following disclaimer |
||||
* in the documentation and/or other materials provided with the |
||||
* distribution. |
||||
* * Neither the name of Google Inc. nor the names of its |
||||
* contributors may be used to endorse or promote products derived from |
||||
* this software without specific prior written permission. |
||||
* |
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||
* |
||||
*/ |
||||
|
||||
'use strict'; |
||||
|
||||
/** |
||||
* package.json requires this file to be present. In the future, this can |
||||
* export useful information about the included tools. |
||||
*/ |
||||
|
||||
module.exports = {}; |
@ -0,0 +1,38 @@ |
||||
{ |
||||
"name": "grpc-tools", |
||||
"version": "0.14.0-dev", |
||||
"author": "Google Inc.", |
||||
"description": "Tools for developing with gRPC on Node.js", |
||||
"homepage": "http://www.grpc.io/", |
||||
"repository": { |
||||
"type": "git", |
||||
"url": "https://github.com/grpc/grpc.git" |
||||
}, |
||||
"bugs": "https://github.com/grpc/grpc/issues", |
||||
"contributors": [ |
||||
{ |
||||
"name": "Michael Lumish", |
||||
"email": "mlumish@google.com" |
||||
} |
||||
], |
||||
"bin": { |
||||
"grpc-tools-protoc": "./bin/protoc.js" |
||||
}, |
||||
"scripts": { |
||||
"install": "./node_modules/.bin/node-pre-gyp install" |
||||
}, |
||||
"bundledDependencies": ["node-pre-gyp"], |
||||
"binary": { |
||||
"module_name": "grpc_tools", |
||||
"host": "https://storage.googleapis.com/", |
||||
"remote_path": "grpc-precompiled-binaries/node/{name}/v{version}", |
||||
"package_name": "{platform}-{arch}.tar.gz", |
||||
"module_path": "bin" |
||||
}, |
||||
"files": [ |
||||
"index.js", |
||||
"bin/protoc.js", |
||||
"LICENSE" |
||||
], |
||||
"main": "index.js" |
||||
} |
@ -0,0 +1,40 @@ |
||||
%YAML 1.2 |
||||
--- | |
||||
{ |
||||
"name": "grpc-tools", |
||||
"version": "${settings.node_version}", |
||||
"author": "Google Inc.", |
||||
"description": "Tools for developing with gRPC on Node.js", |
||||
"homepage": "http://www.grpc.io/", |
||||
"repository": { |
||||
"type": "git", |
||||
"url": "https://github.com/grpc/grpc.git" |
||||
}, |
||||
"bugs": "https://github.com/grpc/grpc/issues", |
||||
"contributors": [ |
||||
{ |
||||
"name": "Michael Lumish", |
||||
"email": "mlumish@google.com" |
||||
} |
||||
], |
||||
"bin": { |
||||
"grpc-tools-protoc": "./bin/protoc.js" |
||||
}, |
||||
"scripts": { |
||||
"install": "./node_modules/.bin/node-pre-gyp install" |
||||
}, |
||||
"bundledDependencies": ["node-pre-gyp"], |
||||
"binary": { |
||||
"module_name": "grpc_tools", |
||||
"host": "https://storage.googleapis.com/", |
||||
"remote_path": "grpc-precompiled-binaries/node/{name}/v{version}", |
||||
"package_name": "{platform}-{arch}.tar.gz", |
||||
"module_path": "bin" |
||||
}, |
||||
"files": [ |
||||
"index.js", |
||||
"bin/protoc.js", |
||||
"LICENSE" |
||||
], |
||||
"main": "index.js" |
||||
} |
Loading…
Reference in new issue