Coder Social home page Coder Social logo

sharepoint-sherpa / sherpa Goto Github PK

View Code? Open in Web Editor NEW
12.0 12.0 7.0 1.07 MB

Sherpa is a library and a command-line tool create for easy deployment of customizations and sandboxed solutions On-premises and to SharePoint Online (Office 365)

License: MIT License

C# 100.00%

sherpa's People

Contributors

damsleth avatar okms avatar olemp avatar tarjeieo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

sherpa's Issues

Unattended install functionality

Since we will be required to run Sherpa multiple times in the same install script(s), the possibility of running Sherpa unattended would be great. E.g
sherpa.exe --url *url* -u *username -p *password* --spo --steps 1,2,3,4,5,6,9 *comma delimited array of steps in installation*
Automatic exit (i.e. option 0) and optional logging would be great, too :)

Set config path runtime

Would love the possibility to set config path runtime. Otherwise you need to change this everytime you do a pull.

Enable error message when WSP is not found in chosen directory

If Sherpa doesn't find a wsp in the solutions-folder, it simply states "Done uploading and activating sandboxed solution(s)".
If there are no WSP's in the solution folder, Sherpa should log an error to the console, informing the user that there were no WSP's found (e.g. "No wsp's found in solutions directory %path%").

This is useful when writing custom scripts that run multiple instances of Sherpa, to prevent human error (forgot to copy the wsp to the solutions directory)

Support deploying files with content types

introduction

Sherpa currently support uploading files to one or more document libraries. Sherpa should also learn to support uploading files with content types.

Suggested solution

The suggested solution is as follows

Currently we use the following syntax to define folders which should be uploaded to certain document libraries.

    "ContentFolders": [
        {
            "FolderName": "SiteAssets",
            "ListName": "Site Assets",
            "FolderUrl": "sherpa"
        }
    ]

This solution can be extended to include a manifest file which defines an array with files that has any additional metadata on them (any file not mentioned in the manifest is copied as-is, just a normal file like we have today)

About the manifest

We must suport the explisit properties that is on a File element

https://msdn.microsoft.com/en-us/library/office/ms459213.aspx

I.e.
DocumentTemplateForList = string
DoGUIDFixUp = "TRUE" | "FALSE"
IgnoreIfAlreadyExists = "TRUE" | "FALSE"
Level = Draft
Name = string
NavBarHome = "TRUE" | "FALSE"
Path = string ReplaceContent = "TRUE" | "FALSE"
Type = "Ghostable" | "GhostableInLibrary"
Url = string

As well as the child elements

AllUsersWebPart
Property

Of these, the "Property" element could be replaced with a key-value list. This would be important for provisioning Publishing Page Layouts, display templates etc.

Web part provisioning is something we would also have to support at one point. We should probably have a setting which indicates "replace web part on page", "ignore if web part is on page" or "appen web part to page"

About Display Templates

Display templates are a special breed of files in SharePoint. We would like to have a solution where you can deploy only the .html files and have the .js files created automatically. With csom uploads of files this may actually happen without us having to do anything, but if this is not the case, we may need a "touch after upload" property which indicates that the file will be checked out, in and published again.

Add support for module-provisioning with Sherpa

Reasons for this feature

  • Features are so "year of the sandbox", remote/CSOM is where it's at. "Sandboxes not recommended anymore"
  • Provisioning display templates suck when you have to deploy both html and js files. Would be pretty nice to only provision the html version.

Setting up termset navigation

Should be able to set following

  1. Global navigation as Managed Navigation
  2. Set the corresponding termset
  3. Should be able to turn on/off default page settings

Set up lists in sitehierarchy.json

Requesting the possibility to set up lists in sitehierarchy.json. Preferably with views.

Something like this:
Lists {
Name: "",
Url: "",
TemplateType: "",
Views: []
}

Method not found error occurred when setting up site columns and content types in OnPrem environment

Select a number to perform an operation: 3
Starting setup of site columns and content types
An exception occured: Method not found: 'Void Microsoft.SharePoint.Client.Conten
tTypeCreationInformation.set_Id(System.String)'.
at Sherpa.Library.ContentTypes.Model.GtContentType.GetContentTypeCreationInfo
rmation()
at Sherpa.Library.ContentTypes.ContentTypeManager.CreateContentTypes()
at Sherpa.Installer.InstallationManager.CreateSiteColumnsAndContentTypes()
at Sherpa.Installer.Program.HandleCommandKeyPress(String input)
at Sherpa.Installer.Program.ShowStartScreenAndExecuteCommand()
at Sherpa.Installer.Program.HandleCommandKeyPress(String input)
at Sherpa.Installer.Program.ShowStartScreenAndExecuteCommand()
at Sherpa.Installer.Program.RunApplication()

Create export taxonomy functionality

The export taxonomy should export the taxonomy of a specified taxonomy group, and the output should be in the same json-format as we currently use, including GUIDs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.