本文整理汇总了TypeScript中vso-task-lib.getInput函数的典型用法代码示例。如果您正苦于以下问题:TypeScript getInput函数的具体用法?TypeScript getInput怎么用?TypeScript getInput使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了getInput函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1:
import * as tl from 'vso-task-lib';
import * as sh from 'shelljs';
import * as fs from 'fs';
import * as os from 'os';
tl.debug("Starting Replace Tokens task");
// get the task vars
var sourcePath = tl.getPathInput("sourcePath", true, true);
// clear leading and trailing quotes for paths with spaces
sourcePath = sourcePath.replace(/"/g, "");
var filePattern = tl.getInput("filePattern", true);
var tokenRegex = tl.getInput("tokenRegex", true);
var secretTokenInput = tl.getInput("secretTokens", false);
// store the tokens and values if there is any secret token input
var secretTokens: {[id: string]: string} = {};
if (typeof secretTokenInput !== "undefined") {
var inputArray : string[] = secretTokenInput.split(";");
for (var token of inputArray) {
if (token.indexOf(":") > -1) {
var valArray : string[] = token.split(":");
if (valArray.length == 2) {
var key = valArray[0].trim().toLowerCase();
secretTokens[key] = valArray[1].trim();
console.log(`Secret token input found [${key}]`);
}
}
}
tl.debug(`secretTokens: found [${Object.keys(secretTokens).length}] tokens`);
示例2:
import * as tl from 'vso-task-lib';
import * as sh from 'shelljs';
import * as fs from 'fs';
tl.debug("Starting Replace Tokens step");
// get the task vars
var sourcePath = tl.getPathInput("sourcePath", true, true);
var filePattern = tl.getInput("filePattern", true);
var tokenRegex = tl.getInput("tokenRegex", true);
tl.debug(`sourcePath :${sourcePath}`);
tl.debug(`filePattern : ${filePattern}`);
tl.debug(`tokenRegex : ${tokenRegex}`);
if (filePattern === undefined || filePattern.length === 0){
filePattern = "*.*";
}
tl.debug(`Using ${filePattern} as filePattern`);
var files = tl.glob(`${sourcePath}\\${filePattern}`);
if (files.length === 0) {
tl.error(`Could not find files with pattern [${filePattern}] in path [${sourcePath}]`);
tl.exit(1);
}
for (var i = 0; i < files.length; i++) {
var file = files[i];
console.info(`Starting regex replacement in ${file}`);
var contents = fs.readFileSync(file, 'utf8').toString();
示例3: RegExp
import * as tl from 'vso-task-lib';
import * as sh from 'shelljs';
import * as fs from 'fs';
tl.debug("Starting Replace Tokens step");
// get the task vars
var filePath = tl.getPathInput("filePath", true, true);
var tokenRegex = tl.getInput("tokenRegex", true);
var files = tl.find(filePath);
if (files.length === 1) {
var file = files[0];
// read the file
fs.readFile(file, 'utf8', (err, data) => {
if (err) {
tl.error(`Could not read file ${filePath}. Error is ${err.message}`);
tl.exit(1);
}
var reg = new RegExp(tokenRegex, "g");
console.info(`Starting regex replacement in ${file}`);
// loop through each match
var match: RegExpExecArray;
while((match = reg.exec(data)) !== null) {
// find the variable value in the environment
var varName = match[1];
var varValue = tl.getVariable(varName);
if (typeof varValue === 'undefined') {
tl.warning(`... token ${varName} does not have an environment value`);
示例4: while
var current = path.normalize(fullPath);
var parentPath = path.dirname(current);
var count = 0;
while (parentPath !== current) {
++count;
current = parentPath;
parentPath = path.dirname(current);
}
return count;
}
// contents is a multiline input containing glob patterns
var contents: string[] = tl.getDelimitedInput('Contents', '\n');
var artifactName: string = tl.getInput('ArtifactName');
var artifactType: string = tl.getInput('ArtifactType');
// targetPath is used for file shares
var targetPath: string = tl.getInput('TargetPath');
var findRoot: string = tl.getPathInput('CopyRoot');
if (!artifactName) {
// nothing to do
tl.warning('Artifact name is not specified.');
}
else if (!artifactType) {
// nothing to do
tl.warning('Artifact type is not specified.');
}
else {
artifactType = artifactType.toLowerCase();