當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript jsonvariablesubstitutionutility.js.default類代碼示例

本文整理匯總了TypeScript中webdeployment-common/jsonvariablesubstitutionutility.js.default的典型用法代碼示例。如果您正苦於以下問題:TypeScript js.default類的具體用法?TypeScript js.default怎麽用?TypeScript js.default使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了js.default類的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: fileTransformations

export function fileTransformations(isFolderBasedDeployment: boolean, JSONFiles: any, xmlTransformation: boolean, xmlVariableSubstitution: boolean, folderPath: string) {

    if(xmlTransformation) {
        var environmentName = tl.getVariable('Release.EnvironmentName');
        if(tl.osType().match(/^Win/)) {
            var transformConfigs = ["Release.config"];
            if(environmentName && environmentName != 'Release') {
                transformConfigs.push(environmentName + ".config");
            }
            xdtTransformationUtility.basicXdtTransformation(folderPath, transformConfigs);  
            console.log(tl.loc("XDTTransformationsappliedsuccessfully"));
        }
        else {
            throw new Error(tl.loc("CannotPerformXdtTransformationOnNonWindowsPlatform"));
        }
    }

    if(xmlVariableSubstitution) {
        xmlSubstitutionUtility.substituteAppSettingsVariables(folderPath, isFolderBasedDeployment);
        console.log(tl.loc('XMLvariablesubstitutionappliedsuccessfully'));
    }

    if(JSONFiles.length != 0) {
        jsonSubstitutionUtility.jsonVariableSubstitution(folderPath, JSONFiles);
        console.log(tl.loc('JSONvariablesubstitutionappliedsuccessfully'));
    }
}
開發者ID:DarqueWarrior,項目名稱:vsts-tasks,代碼行數:27,代碼來源:fileTransformationsUtility.ts

示例2: advancedFileTransformations

export function advancedFileTransformations(isFolderBasedDeployment: boolean, targetFiles: any, xmlTransformation: boolean, variableSubstitutionFileFormat: string, folderPath: string, transformationRules: any) {

    if(xmlTransformation) {
        if(!tl.osType().match(/^Win/)) {
            throw Error(tl.loc("CannotPerformXdtTransformationOnNonWindowsPlatform"));
        }
        else {
            let isTransformationApplied: boolean = true;
            if(transformationRules.length > 0) {                
                transformationRules.forEach(function(rule) {
                    var args = ParameterParser.parse(rule);
                    if(Object.keys(args).length < 2 || !args["transform"] || !args["xml"]) {
                       tl.error(tl.loc("MissingArgumentsforXMLTransformation"));
                    }
                    else if(Object.keys(args).length > 2) {
                        isTransformationApplied = xdtTransformationUtility.specialXdtTransformation(folderPath, args["transform"].value, args["xml"].value, args["result"].value) && isTransformationApplied;
                    }
                    else {
                        isTransformationApplied = xdtTransformationUtility.specialXdtTransformation(folderPath, args["transform"].value, args["xml"].value) && isTransformationApplied;
                    }
                });
            }
            else{   
                var environmentName = tl.getVariable('Release.EnvironmentName');             
                let transformConfigs = ["Release.config"];
                if(environmentName && environmentName.toLowerCase() != 'release') {
                    transformConfigs.push(environmentName + ".config");
                }
                isTransformationApplied = xdtTransformationUtility.basicXdtTransformation(folderPath, transformConfigs);
            }
            
            if(isTransformationApplied) {
                console.log(tl.loc("XDTTransformationsappliedsuccessfully"));
            }            
        }
    }

    if(variableSubstitutionFileFormat === "xml") {
        if(targetFiles.length == 0) { 
            xmlSubstitutionUtility.substituteAppSettingsVariables(folderPath, isFolderBasedDeployment);
        }
        else {            
            targetFiles.forEach(function(fileName) { 
                xmlSubstitutionUtility.substituteAppSettingsVariables(folderPath, isFolderBasedDeployment, fileName);
            });
        }
        console.log(tl.loc('XMLvariablesubstitutionappliedsuccessfully'));
    }

    if(variableSubstitutionFileFormat === "json") {
        // For Json variable substitution if no target files are specified file files matching **\*.json
        if(!targetFiles || targetFiles.length == 0) {
            targetFiles = ["**/*.json"];
        }
        jsonSubstitutionUtility.jsonVariableSubstitution(folderPath, targetFiles, true);
        console.log(tl.loc('JSONvariablesubstitutionappliedsuccessfully'));
    }
}
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:58,代碼來源:fileTransformationsUtility.ts

示例3: validateInvalidJSONWithComments

function validateInvalidJSONWithComments() {
    var fileContent: string = fs.readFileSync(path.join(__dirname, 'L1JSONVarSub', 'InvalidJSONWithComments.json'), 'utf-8');
    var jsonContent: string = jsonSubUtil.stripJsonComments(fileContent);
    try {
        var jsonObject = JSON.parse(jsonContent);
        throw new Error('JSON VAR SUB FAIL #6');
    }
    catch(error) {
        console.log("INVALID JSON COMMENTS TESTS PASSED");
    }
}
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:11,代碼來源:L1JSONVarSubWithComments.ts

示例4: Error

export async function fileTransformations(isFolderBasedDeployment: boolean, JSONFiles: any, xmlTransformation: boolean, xmlVariableSubstitution: boolean, webDeployPkg: string) {

    var tempPackagePath;
    var folderPath = utility.generateTemporaryFolderOrZipPath(tl.getVariable('System.DefaultWorkingDirectory'), true);
        
    if(isFolderBasedDeployment) {
        tl.cp(path.join(webDeployPkg, '/*'), folderPath, '-rf', false);
    }
    else {
        await zipUtility.unzip(webDeployPkg, folderPath);
    }

    if(xmlTransformation) {
        var environmentName = tl.getVariable('Release.EnvironmentName');
        if(tl.osType().match(/^Win/)) {
            var transformConfigs = ["Release.config"];
            if(environmentName) {
                transformConfigs.push(environmentName + ".config");
            }
            xdtTransformationUtility.basicXdtTransformation(folderPath, transformConfigs);  
            console.log(tl.loc("XDTTransformationsappliedsuccessfully"));
        }
        else {
            throw new Error(tl.loc("CannotPerformXdtTransformationOnNonWindowsPlatform"));
        }
    }

    if(xmlVariableSubstitution) {
        await xmlSubstitutionUtility.substituteAppSettingsVariables(folderPath);
        console.log(tl.loc('XMLvariablesubstitutionappliedsuccessfully'));
    }

    if(JSONFiles.length != 0) {
        jsonSubstitutionUtility.jsonVariableSubstitution(folderPath, JSONFiles);
        console.log(tl.loc('JSONvariablesubstitutionappliedsuccessfully'));
    }

    if(isFolderBasedDeployment) {
        tempPackagePath = folderPath;
        webDeployPkg = folderPath;
    }
    else {
        var tempWebPackageZip = utility.generateTemporaryFolderOrZipPath(tl.getVariable('System.DefaultWorkingDirectory'), false);
        webDeployPkg = await zipUtility.archiveFolder(folderPath, "", tempWebPackageZip);
        tempPackagePath = webDeployPkg;
        tl.rmRF(folderPath, true);
    }

    return {
        "webDeployPkg": webDeployPkg,
        "tempPackagePath": tempPackagePath
    };
}
開發者ID:ReneSchumacher,項目名稱:VSTS-Tasks,代碼行數:53,代碼來源:fileTransformationsUtility.ts

示例5: validateJSONWithComments

function validateJSONWithComments() {
    var fileContent: string = fs.readFileSync(path.join(__dirname, 'L1JSONVarSub', 'JSONWithComments.json'), 'utf-8');
    var jsonContent: string = jsonSubUtil.stripJsonComments(fileContent);
    var jsonObject = JSON.parse(jsonContent);
    jsonSubUtil.substituteJsonVariable(jsonObject, envVarObject);

    if(jsonObject['dataSourceBindings']['0']['target'] != 'AppServiceName') {
        throw new Error('JSON VAR SUB FAIL #1');
    }
    if(jsonObject['name'] != 'App Service Deploy') {
        throw new Error('JSON VAR SUB FAIL #2');
    }
    if(jsonObject['Hello']['World'] != 'Hello World') {
        throw new Error('JSON VAR SUB FAIL #3');
    }
    if(jsonObject['dataSourceBindings']['1']['parameters']['WebAppName'] != 'App Service Name params') {
        throw new Error('JSON VAR SUB FAIL #4');
    }
    if(jsonObject['messages']['Invalidwebapppackageorfolderpathprovided'] != 'Invalidwebapppackageorfolderpathprovided') {
        throw new Error('JSON VAR SUB FAIL #5');
    }
    console.log("VALID JSON COMMENTS TESTS PASSED");
}
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:23,代碼來源:L1JSONVarSubWithComments.ts

示例6: fileTransformations

export function fileTransformations(isFolderBasedDeployment: boolean, JSONFiles: any, xmlTransformation: boolean, xmlVariableSubstitution: boolean, folderPath: string, isMSBuildPackage: boolean) {

    if(xmlTransformation) {
        if(isMSBuildPackage) {
            var debugMode = tl.getVariable('system.debug');
            if(debugMode && debugMode.toLowerCase() == 'true') {
                tl.warning(tl.loc('AutoParameterizationMessage'));
            }
            else {
                console.log(tl.loc('AutoParameterizationMessage'));
            }
        }
        var environmentName = tl.getVariable('Release.EnvironmentName');
        if(tl.osType().match(/^Win/)) {
            var transformConfigs = ["Release.config"];
            if(environmentName && environmentName.toLowerCase() != 'release') {
                transformConfigs.push(environmentName + ".config");
            }
            var isTransformationApplied: boolean = xdtTransformationUtility.basicXdtTransformation(folderPath, transformConfigs);
            
            if(isTransformationApplied)
            {
                console.log(tl.loc("XDTTransformationsappliedsuccessfully"));
            }
            
        }
        else {
            throw new Error(tl.loc("CannotPerformXdtTransformationOnNonWindowsPlatform"));
        }
    }

    if(xmlVariableSubstitution) {
        xmlSubstitutionUtility.substituteAppSettingsVariables(folderPath, isFolderBasedDeployment);
        console.log(tl.loc('XMLvariablesubstitutionappliedsuccessfully'));
    }

    if(JSONFiles.length != 0) {
        jsonSubstitutionUtility.jsonVariableSubstitution(folderPath, JSONFiles);
        console.log(tl.loc('JSONvariablesubstitutionappliedsuccessfully'));
    }
}
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:41,代碼來源:fileTransformationsUtility.ts

示例7: require

var jsonSubUtil = require('webdeployment-common/jsonvariablesubstitutionutility.js');

        var envVarObject = jsonSubUtil.createEnvTree([
            { name: 'system.debug', value: 'true', secret: false},
            { name: 'data.ConnectionString', value: 'database_connection', secret: false},
            { name: 'data.userName', value: 'db_admin', secret: false},
            { name: 'data.password', value: 'db_pass', secret: true},
            { name: '&pl.ch@r@cter.k^y', value: '*.config', secret: false},
            { name: 'build.sourceDirectory', value: 'DefaultWorkingDirectory', secret: false},
            { name: 'user.profile.name.first', value: 'firstName', secret: false},
            { name: 'user.profile', value: 'replace_all', secret: false}
        ]);
        var jsonObject = {
            'User.Profile': 'do_not_replace',
            'data': {
                'ConnectionString' : 'connect_string',
                'userName': 'name',
                'password': 'pass'
            },
            '&pl': {
                'ch@r@cter.k^y': 'v@lue'
            },
            'system': {
                'debug' : 'no_change'
            },
            'user.profile': {
                'name.first' : 'fname'
            }
        }
        // Method to be checked for JSON variable substitution
        jsonSubUtil.substituteJsonVariable(jsonObject, envVarObject);
開發者ID:ReneSchumacher,項目名稱:VSTS-Tasks,代碼行數:31,代碼來源:L1JsonVarSub.ts

示例8: require

import { validate } from './L1JSONVarSubWithComments';
var jsonSubUtil = require('webdeployment-common/jsonvariablesubstitutionutility.js');

var envVarObject = jsonSubUtil.createEnvTree([
    { name: 'system.debug', value: 'true', secret: false},
    { name: 'data.ConnectionString', value: 'database_connection', secret: false},
    { name: 'data.userName', value: 'db_admin', secret: false},
    { name: 'data.password', value: 'db_pass', secret: true},
    { name: '&pl.ch@r@cter.k^y', value: '*.config', secret: false},
    { name: 'build.sourceDirectory', value: 'DefaultWorkingDirectory', secret: false},
    { name: 'user.profile.name.first', value: 'firstName', secret: false},
    { name: 'user.profile', value: 'replace_all', secret: false},
    { name: 'constructor.name', value: 'newConstructorName', secret: false},
    { name: 'constructor.valueOf', value: 'constructorNewValue', secret: false},
    { name: 'profile.users', value: '["suaggar","rok","asranja", "chaitanya"]', secret: false},
    { name: 'profile.enabled', value: 'false', secret: false},
    { name: 'profile.version', value: '1173', secret: false},
    { name: 'profile.somefloat', value: '97.75', secret: false},
    { name: 'profile.preimum_level', value: '{"suaggar": "V4", "rok": "V5", "asranja": { "type" : "V6"}}', secret: false}
]);

var jsonObject = {
    'User.Profile': 'do_not_replace',
    'data': {
        'ConnectionString' : 'connect_string',
        'userName': 'name',
        'password': 'pass'
    },
    '&pl': {
        'ch@r@cter.k^y': 'v@lue'
    },
開發者ID:Microsoft,項目名稱:vsts-tasks,代碼行數:31,代碼來源:L1JsonVarSubV2.ts


注:本文中的webdeployment-common/jsonvariablesubstitutionutility.js.default類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。