Nestable Processes Mutate

    grunt-cideploy

    0.0.10 • Public • Published

    grunt-cideploy

    Getting Started

    If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

    npm install grunt-cideploy --save-dev

    Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

    grunt.loadNpmTasks('grunt-cideploy');

    The "ci_deploy" task

    Overview

    In your project's Gruntfile, add a section named cideploy to the data object passed into grunt.initConfig().

    grunt.initConfig({
      ci_deploy: {
            options: {
                 before: function (grunt, options) { },
                 msbuild: {},
                 buildtasks: ["nugetrestore", "msbuild"],
                 testtasks: ["eslint"],
                 after: function (grunt, options) { },
                 obtainProfile: function (tag) {
                  return  tag.indexOf("Production") !== -1 ? "Production" : "Staging";
                 },
                 origin: "",
                 notifyInSharePoint: false,
                 removeTagAfterDeploy: false,
                 username: grunt.option("username"),
                 password: grunt.option("password"),
                 Project_x0020_NameId: 1,
                 Application_x0020_NameId: 12,
                 Title: 'Title'
            }
      });

    Options

    before

    Default: function (grunt, options) { }

    This is a callback which is called before the deployment task is run.
    In here you can stop the apppool on IIS for example.

       before: function (grunt, options) {
                            generateConfig();
                            grunt.task.run("StopWebAppPool");
                            grunt.config('msbuild.target.options.buildParameters.DeployOnBuild', true);
    
                            console.log(JSON.stringify(grunt.config("msbuild")));
                        },
    

    msbuild

    Default: null

    This is the msbuild definition. For more information see https://www.npmjs.com/package/grunt-msbuild

      msbuild: {
                            project: {
                                src: ['src/project/project.csproj'],
                                options: {
                                    projectConfiguration: 'Release',
                                    targets: ['Clean', 'Rebuild'],
                                    buildParameters: {
                                        OutputPath: process.cwd() + sep + "build" + sep + "service",
                                        WarningLevel: 2,
                                        DeployOnBuild: grunt.option('deploy') || false,
                                        PublishProfile: grunt.option('profile') || "Staging",
                                        Password: grunt.option('password') || credentials.msbuild_deploy.password,
                                        PackageVersion: '<%= pkg.version %>',
                                        FileVersion: '<%= pkg.version %>',
                                        Version: '<%= pkg.version %>',
                                        AssemblyVersion: '<%= pkg.version %>'
                                    },
                                    verbosity: 'minimal'
                                }
                            }
                }
    

    buildtasks

    Default: []

    Define the tasks to execute on build/deploy

    buildtasks: ["clean", "nugetrestore", "msbuild"],
    

    testtasks

    Default: []

    Define the tasks to execute on test

    buildtasks: ["clean", "nugetrestore", "msbuild"],
    

    after

    Default: function (grunt, options) { }

    This is a callback which is called before the deployment task is run.
    In here you can start the apppool on IIS for example.

      after: function (grunt, options) {
                            grunt.task.run("StartWebAppPool");
                        },
    

    obtainProfile

    Default:

    function (tag) { 
       return  tag.indexOf("Production") !== -1 ? "Production" : "Staging";
    },
    

    This callback is used to determine the publishprofile to use depending the incoming tag description.

    origin

    Default: ""

    This is the project remote git url.
    This is needed to allow the gitlabrunner to commit changes to gitlab.

     origin: "https://gitlab.com/project.git",
    

    notifyInSharePoint

    Default: false

    Notify the publish in SharePoint.

    removeTagAfterDeploy

    Default: false

    Delete the tag after deployment..

    username

    Default: grunt.option("username")

    See https://www.npmjs.com/package/grunt-sharepoint-list

    password

    Default: grunt.option("password")

    See https://www.npmjs.com/package/grunt-sharepoint-list

    Project_x0020_NameId

    Default: 1

    See https://www.npmjs.com/package/grunt-sharepoint-list

    Application_x0020_NameId

    Default: 12

    See https://www.npmjs.com/package/grunt-sharepoint-list

    Title

    Default: "Title"

    See https://www.npmjs.com/package/grunt-sharepoint-list

    Keywords

    Install

    npm i grunt-cideploy

    DownloadsWeekly Downloads

    2

    Version

    0.0.10

    License

    MIT

    Unpacked Size

    16.6 kB

    Total Files

    6

    Last publish

    Collaborators

    • robinherbots