Provisionar una sandboxed solution con el Solution Hash y el Solution Id

26.5.11 / Comments (2) / by Enric Carrión

Guardamos un artefacto (un sitio, por ejemplo) como sandboxed solution y obtenemos un bonito fichero WSP que luego queremos volver a desplegar declarativamente en otro entorno. Eso es posible si creamos un elemento Module en nuestro proyecto SharePoint 2010 de nuestra solución de Visual Studio. Pero junto con el fichero hay que provisionar una serie de metadatos indispensables para disponer de la solución lista para activar en el entorno de destino. Esto quedaría como:

<Module Name="MySolutions" Url="_catalogs/solutions" Path="MySolutions" RootWebOnly="TRUE">
<File Url="MyExportedSolution.wsp" Type="GhostableInLibrary">
<Property Name="SolutionId" Value="{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx}" />
<Property Name="SolutionHash" Value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" />
<Property Name="SolutionTitle" Value="Mi solución" />
</File>

El SolutionTitle en el fondo no es relevante, pero sí lo son, y mucho, los otros dos. ¿Cómo obtenerlos? PowerShell al rescate de nuevo. En el entorno origen, en la colección de sitios donde acabamos de exportar la solution sandbox, iremos a buscar estos metadatos de la siguiente manera:

$site = get-spsite http://misitio
$web = $site.OpenWeb()
$list = $web.lists["Solution Gallery"]
$item = $list.GetItemById(1)   # El id que corresponda, of course
$item["SolutionHash"]
$item["SolutionId"]

Y simplemente utilizarlos para el Module. Finalmente, una vez provisionada la solución en el entorno destino, podemos activarla manualmente o mediante el comando PowerShell install-spusersolution:

install-spusersolution -identity MySolution.wsp -site http://misitiodestino

SharePoint + Enterprise + Social = Beezy

14.5.11 / Comments (0) / by Enric Carrión

Es turno de anunciar el lanzamiento de un nuevo producto aquí en Spenta, que está destinado a ser un verdadero huracán en el mundo corporativo. Un mundo que, hasta ahora, carecía de soluciones realmente enfocadas a la colaboración ágil entre empleados beneficiándose de las herramientas Web 2.0 a que tan acostumbrados estamos fuera del ámbito laboral. Ahora estas herramientas tienen su lugar en la empresa gracias a Beezy, construido “on top of” SharePoint 2010 y Office 365.

beezy-logo
http://www.gobeezy.com/
http://twitter.com/#!/followbeezy

La solución, técnicamente, consiste en una capa de aplicación por encima de SharePoint, que registra, analiza y explota convenientemente un conjunto de datos sociales obtenidos de la propia plataforma cruzándolos con datos sociales propios (comentarios, follows, likes, actividades). Fácil resumirlo, pero se trata de un auténtico reto técnico, el éxito del cual tiene mucho que ver con mi querido compi David Martos. Enhorabuena a él, a todos los implicados y… stay tuned.