> For the complete documentation index, see [llms.txt](https://docs.scepman.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.scepman.com/es/configuracion-de-azure/update-strategy.md).

# Estrategia de actualización

## Enfoque Evergreen

Recomendamos un enfoque Evergreen para las actualizaciones de SCEPman. Este es el enfoque predeterminado si SCEPman se ha implementado usando el canal de producción. SCEPman usa ZIP-Deployment apuntando directamente a la [GitHub de SCEPman](https://github.com/scepman) y cargar la versión más reciente que publica el equipo de desarrollo.

El canal de producción, junto con los demás canales disponibles, se mencionan en la siguiente guía:

{% content-ref url="/pages/b5cdd7acf9d74c5b8799a18da1f3eba2b0fdc8ea" %}
[Artefactos de la aplicación](/es/configuracion-de-scepman/application-artifacts.md)
{% endcontent-ref %}

Con este enfoque siempre obtienes las funciones más nuevas y las actualizaciones de seguridad.

{% hint style="info" %}
Ten en cuenta que **una actualización solo ocurre cuando el App Service se detiene y se inicia de nuevo**. Este es el evento en el que se activa ZIP-Deployment. Aunque App Service no se detiene e inicia automáticamente, se reinicia externamente en ciertos eventos. Uno de esos eventos es el [mantenimiento y aplicación de parches de la infraestructura subyacente](https://learn.microsoft.com/en-us/azure/app-service/routine-maintenance-downtime). Estos ocurren **con regularidad y mantienen tu servicio actualizado**.
{% endhint %}

En un entorno empresarial de producción, si quieres tener más control sobre el proceso de actualización, puedes usar la característica de Microsoft **Deployment Slots**.

## Configuración del slot de implementación

Si quieres tener control total sobre el proceso de actualización de SCEPman, puedes usar la **Deployment Slots** dentro de Azure App Service.

{% hint style="success" %}
Para obtener más detalles sobre la **Deployment Slots** puedes visitar la documentación de Microsoft:\
<https://docs.microsoft.com/en-us/azure/app-service/deploy-staging-slots>
{% endhint %}

Los siguientes pasos te dan nuestra configuración recomendada para una gestión de prelanzamiento

{% hint style="info" %}
Ten en cuenta que cada Deployment Slot se ejecuta en el mismo plan de App Service de tu aplicación de producción y usa los mismos recursos.
{% endhint %}

### Ranura de prelanzamiento

La idea detrás de la ranura de prelanzamiento es que tu App Service de producción se ejecute con artefactos almacenados en tu propia Storage Account y crear una nueva Deployment Slot que apunte a nuestros artefactos de GitHub. Puedes encontrar los pasos para configurar la ubicación personalizada de tus artefactos en el siguiente artículo:

{% content-ref url="/pages/b5cdd7acf9d74c5b8799a18da1f3eba2b0fdc8ea" %}
[Artefactos de la aplicación](/es/configuracion-de-scepman/application-artifacts.md)
{% endcontent-ref %}

Ahora tu App Service de producción se ejecuta con una ubicación personalizada de artefactos y procedemos con la configuración de la nueva Deployment Slot.

{% hint style="info" %}
Requisitos de la Ranura de implementación \*\*\*\* (vía el módulo de PowerShell de SCEPman):

* SCEPman **2.2** o superior
* Módulo SCEPman de PowerShell **1.5.1.0** o superior
  {% endhint %}

El siguiente comando de cmdlet creará una Deployment Slot y configurará todos los permisos necesarios por ti.

```
New-SCEPmanDeploymentSlot -SCEPmanAppServiceName <Nombre de tu SCEPman App Service> -DeploymentSlotName <Nombre para la Ranura de implementación> 6>&1
```

**Ejemplo**

![](https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-e6d6f6705ddea62ace2056be7939000667f1be20%2F2022-06-13%2017_36_44-DeploymentSlotCommand.png?alt=media)

Después de que la implementación se haya completado correctamente, puedes comprobar la ranura de implementación en tu SCEPman App Service -> **Deployment slots**

![](https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2Fgit-blob-dc8370a42c97d7d629bf570e79136d689eb64fa9%2F2022-06-13%2011_53_59-DeploymentSlot.png?alt=media)

Ahora asegúrate de que tu ranura de implementación apunte al canal de producción de SCEPman en GitHub:

Ve a la **Deployment Slot** -> **Variables de entorno** y busca la configuración **WEBSITE\_RUN\_FROM\_PACKAGE** y pega los [artefactos del canal de producción](/es/configuracion-de-scepman/application-artifacts.md#production) en el valor.

<figure><img src="https://4115997120-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LoGejQeUQcw7lqnQ3WX%2Fuploads%2FhWunHIoJy8uhT2T5S6Mq%2Fimage.png?alt=media&amp;token=4430a03c-7728-4ed5-9207-e711a279996e" alt=""><figcaption></figcaption></figure>

Si vuelves a tu principal **App Service** y navegas hasta **Deployment Slots y**puedes ver tus dos ranuras y puedes administrar el **Porcentaje de tráfico** para enrutar la cantidad definida de solicitudes hacia la nueva **de prelanzamiento** ranura.\
Importante: este enrutamiento de tráfico es completamente transparente para la aplicación y lo gestiona App Service. Recomendamos establecer el **Porcentaje de tráfico** para **20**. Después de eso, puedes comparar las dos ranuras en **Application Insights**. En caso de que publiquemos una versión actualizada en nuestro GitHub, solo tendrás que reiniciar la **de prelanzamiento** ranura y después de eso, puedes comparar las dos versiones diferentes en **Application Insights**. Después de una semana o del tiempo que elijas, puedes cargar los nuevos artefactos de GitHub en tu ubicación personalizada de artefactos y haber actualizado la solución de SCEPman.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.scepman.com/es/configuracion-de-azure/update-strategy.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
