> 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 [GitHub de SCEPman](https://github.com/scepman) y cargar la versión más reciente que ha sido publicada por el equipo de desarrollo.

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

{% content-ref url="/pages/b5cdd7acf9d74c5b8799a18da1f3eba2b0fdc8ea" %}
[Artefactos de 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 nuevamente**. Este es el evento en el que se activa el ZIP-Deployment. Mientras el App Service no se detiene y se inicia automáticamente, se reinicia externamente en ciertos eventos. Uno de esos eventos es el [el mantenimiento y parcheo de la infraestructura subyacente](https://learn.microsoft.com/en-us/azure/app-service/routine-maintenance-downtime). Estos ocurren **regularmente 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 función de Microsoft **Ranuras de implementación**.

## Configuración del slot de implementación

En caso de que quieras tener control total sobre el proceso de actualización de SCEPman puedes usar el **Ranuras de implementación** dentro de Azure App Service.

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

Los siguientes pasos te ofrecen la configuración recomendada para una gestión de prelanzamiento

{% hint style="info" %}
Ten en cuenta que cada ranura de implementación 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 cuenta de Storage Account y crear una nueva ranura de implementación apuntando 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 aplicación](/es/configuracion-de-scepman/application-artifacts.md)
{% endcontent-ref %}

Ahora tu App Service de producción se está ejecutando con una ubicación personalizada de artefactos y continuamos con la configuración de la nueva ranura de implementación.

{% hint style="info" %}
Requisitos de la ranura de implementación \*\*\*\* (mediante el módulo de PS. SCEPman):

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

El siguiente comando cmdlet creará una ranura de implementación y configurará todos los permisos necesarios para 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)

Una vez que la implementación se haya completado correctamente, puedes comprobar la ranura de implementación en tu SCEPman App Service -> **ranuras de implementación**

![](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:

Navega a la **ranura de implementación** -> **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 navega a **Ranuras de implementación y**puedes ver tus dos ranuras y puedes gestionar el **Porcentaje de tráfico** para dirigir la cantidad definida de solicitudes a la nueva **de prelanzamiento** ranura.\
Importante: este enrutamiento de tráfico es completamente transparente para la aplicación y está gestionado por el App Service. Recomendamos establecer el **Porcentaje de tráfico** a **20**. Después de eso, puedes comparar las dos ranuras en **Application Insights**. En caso de que estemos publicando una versión actualizada en nuestro GitHub, solo debes 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 el tiempo que elijas, puedes cargar los nuevos artefactos de GitHub en la ubicación personalizada de tus artefactos y haber actualizado la solución 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
