Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En la actualización sprint 150 de Azure DevOps, hemos agregado la capacidad de administrar la facturación de su organización en nuestro portal.
En la nueva pestaña de facturación, puede elegir la suscripción de Azure que usa para la facturación y pagar por usuarios adicionales. Ya no es necesario ir a Visual Studio Marketplace ni al Azure Portal para administrar la facturación.
Consulte la lista de características siguiente para obtener más información.
Características
General:
- Disponibilidad general del tema oscuro
- Administración de la facturación de su organización desde Azure DevOps
Azure Boards:
- Trabajo de consulta basado en grupos de Azure Active Directory
- Compartir el panel del equipo con un distintivo
- Consulta de trabajo con respecto al inicio del día, la semana, el mes o el año
- Exportar los resultados de la consulta a un archivo CSV
Azure Repos:
Azure Pipelines:
- Tarea de manifiesto de Kubernetes
- Actualizaciones a la tarea de Docker
- Instalador de la herramienta Kubectl
- Azure Container Registry en la conexión del servicio del registro de Docker
- Compatibilidad con cgroup en el grupo de Ubuntu hospedado
- Ejecutar una vez el agente
- Compatibilidad con Visual Studio 2019 (VS2019) en la tarea de prueba de Visual Studio
- Actualización de la interfaz de usuario del grupo de agentes
- Asistente de tareas para editar archivos YAML
- Actualizaciones de imágenes de canalizaciones hospedadas
- Mejoras en la integración de ServiceNow
- Compatibilidad con Azure PowerShell módulo Az
- Mejoras en la autorización de recursos
- Directivas de retención simplificadas para canalizaciones de compilación
- Artefactos de canalización capturados automáticamente en la versión
- Actualizaciones del informe de cobertura de código de Cobertura
Informes:
Wiki:
Administración:
General
Disponibilidad general del tema oscuro
El pasado octubre, publicamos la versión preliminar pública del tema oscuro como parte de la nueva navegación. Después de varios meses en versión preliminar, escuchando comentarios y optimizando la experiencia, nos complace anunciar la disponibilidad general del tema oscuro.
Administración de la facturación de su organización desde Azure DevOps
Nos complace anunciar que ahora puede administrar la facturación de su organización desde el portal de Azure DevOps. Los administradores ya no necesitan configurar la facturación a través del Azure Portal. Para administrar la configuración de facturación, vaya a configuración de la organización y seleccione Facturación.
A continuación se muestra una lista de opciones de configuración que puede administrar desde la pestaña Facturación .
Puede elegir una suscripción de Azure que se usará para la facturación.

Puede cambiar la suscripción de Azure que usa su organización para la facturación seleccionando otra suscripción. Anteriormente, tenía que quitar la facturación y, a continuación, volver a comprar cuidadosamente el mismo nivel para cada uno de los recursos de pago (usuarios básicos, usuarios de administración de paquetes, canalizaciones hospedadas de MS, etc.). Este proceso era tedioso y propenso a errores. Ahora puede cambiar la suscripción de Azure que usa su organización para la facturación seleccionando otra suscripción y haciendo clic en Guardar.

Ya no es necesario ir a Visual Studio Marketplace para administrar la configuración de facturación. Hemos agregado la capacidad de pagar por usuarios adicionales de Basic, Test Manager y Package Management (Azure Artifacts). Puede aumentar o disminuir el número de usuarios que su organización paga desde la nueva pestaña Facturación .

Azure Boards
Trabajo de consulta basado en grupos de Azure Active Directory
Con la mayor adopción de Azure Active Directory y la prevalencia del uso de grupos para administrar la seguridad, los equipos han estado buscando cada vez más formas de aprovechar esos grupos en Azure Boards. Ahora, además de consultar los elementos de trabajo que han sido asignados o cambiados por personas específicas mediante los operadores In Group o Not In Group , también puede usar grupos de Azure Active Directory directamente.
Consulte la documentación de operadores de consulta para obtener más información.

Compartir el panel del equipo con un distintivo
El archivo LÉAME del repositorio suele ser el hogar al que el equipo del proyecto recurre para obtener información sobre cómo contribuir y usar la solución. Ahora, al igual que puede con un estado de compilación o implementación en Azure Pipelines, puede agregar a su LÉAME un distintivo para el panel del equipo en Azure Boards. Puede configurar el distintivo para mostrar solo las columnas En curso o todas las columnas, e incluso hacer que el distintivo sea visible públicamente si el proyecto está código abierto.

Si el ARCHIVO LÉAME se basa en Markdown, simplemente puede copiar el ejemplo de Markdown desde la página de configuración del distintivo de estado y pegarlo en el archivo.

Consulta de trabajo con respecto al inicio del día, la semana, el mes o el año
Aunque los equipos a menudo se centran en el trabajo en el contexto de lo que viene a continuación o en función de las iteraciones de sprint, a menudo es interesante examinar el trabajo a través de la lente del calendario para informar sobre todo el trabajo que sucedió el mes pasado o en el primer trimestre del año. Ahora puede usar el siguiente conjunto nuevo de macros de @StartOf junto con cualquier campo basado en fechas para consultar en función del inicio del día, la semana, el mes o el año:
- @StartOfYear
- @StartOfMonth
- @StartOfWeek
- @StartOfDay
Cada una de estas macros también acepta una nueva cadena modificadora que permite cambiar los datos por unidades de fecha diferentes. Por ejemplo, puede escribir una consulta para buscar todos los elementos de trabajo completados en el primer trimestre de este año consultando en Fecha >de cambio de estado = @StartOfYear y Fecha <de cambio de estado = @StartOfYear(“+3M”). Consulte la documentación de macros de consulta para obtener más información.

Exportar los resultados de la consulta a un archivo CSV
Ahora puede exportar los resultados de la consulta directamente a un archivo de formato CSV desde la web.

Azure Repos
Nuevos tipos de combinación para completar las solicitudes de incorporación de cambios
Ahora tiene más opciones al combinar los cambios de una solicitud de incorporación de cambios en la rama de destino. Hemos agregado compatibilidad con dos de nuestras características más solicitadas en la Developer Community: combinación de avance rápido y combinación semi lineal (también denominada "Rebase y Merge").
Ahora verá estas nuevas opciones disponibles en el cuadro de diálogo Completar solicitud de incorporación de cambios :

La página de administración de directivas actualizada permite a los administradores controlar qué estrategias de combinación se permiten en una rama o carpeta de ramas.

Nota:
Las directivas existentes todavía se aplican. Por ejemplo, si la rama tiene actualmente una directiva "solo combinación de squash" en vigor, tendrá que editar esa directiva para poder usar las nuevas estrategias de combinación.
Hay algunas situaciones en las que no es posible rebasar durante la finalización de la solicitud de incorporación de cambios:
- Si una directiva de la rama de destino prohíbe usar estrategias de rebase, necesitará el permiso "Invalidar directivas de rama".
- Si la rama de origen de la solicitud de incorporación de cambios tiene directivas, no podrá rebaserla. La rebasificación modificará la rama de origen sin pasar por el proceso de aprobación de directivas.
- Si ha usado la extensión de conflicto de mezcla para resolver conflictos de mezcla. Las resoluciones de conflicto aplicadas a una combinación triple rara vez se realizan correctamente (o incluso son válidas) al rebasar todas las confirmaciones de una solicitud de incorporación de cambios de una en una.
En todos estos casos, todavía tiene la opción de rebasar la rama localmente e insertar en el servidor, o combinar los cambios al completar la solicitud de incorporación de cambios.
Azure Pipelines
Tarea de manifiesto de Kubernetes
Hemos agregado una nueva tarea a nuestras canalizaciones de versión para simplificar el proceso de implementación en clústeres de Kubernetes mediante archivos de manifiesto. Esta tarea proporcionará las siguientes ventajas en comparación con el uso de kubectl binary en scripts:
Sustitución de artefactos: la acción de implementación toma como entrada una lista de imágenes de contenedor que se pueden especificar junto con sus etiquetas o resúmenes. Esto se sustituye por la versión que no es de plantilla de los archivos de manifiesto antes de aplicarlo al clúster para asegurarse de que los nodos del clúster extraen la versión correcta de la imagen.
Estabilidad del manifiesto: se comprueba el estado del lanzamiento de los objetos de Kubernetes implementados para incorporar comprobaciones de estabilidad al calcular el estado de la tarea como correcto/error.
Anotaciones de rastreabilidad: las anotaciones se agregan a los objetos de Kubernetes implementados para superponer información de rastreabilidad sobre la organización de origen, el proyecto, la canalización y la ejecución.
Manifiesto de bake: la acción bake de la tarea permite hornear gráficos de Helm en archivos de manifiesto de Kubernetes para que se puedan aplicar al clúster.
Estrategia de implementación: elegir una estrategia controlada con acción de implementación conduce a la creación del porcentaje deseado de cargas de trabajo sufijos con -baseline y -canary para que se puedan comparar durante una
ManualInterventiontarea antes de usar la acción promover o rechazar de la tarea para finalizar la versión que se va a conservar.
steps:
- task: KubernetesManifest@0
name: bake
displayName: Bake K8s manifests from Helm chart
inputs:
action: bake
helmChart: charts/sample
overrides: 'image.repository:nginx'
- task: KubernetesManifest@0
displayName: Deploy K8s manifests
inputs:
kubernetesServiceConnection: k8sSC1
manifests: $(bake.manifestsBundle)
containers: |
nginx: 1.7.9
Actualizaciones a la tarea de Docker
Hemos actualizado la tarea de Docker para simplificar la experiencia de creación de canalizaciones. El comando buildAndPush ahora se puede usar para compilar varias etiquetas para un repositorio de contenedor específico e insertarla en varios registros de contenedor en un solo paso. La tarea puede usar conexiones del servicio del registro de Docker para iniciar sesión en registros de contenedor. Los metadatos de rastreabilidad sobre el repositorio de origen, la confirmación y la procedencia de la compilación se agregan como etiquetas a las imágenes compiladas con esta tarea.
steps:
- task: Docker@2
displayName: Container registry login - ACR1 service connection
inputs:
command: login
containerRegistry: acr1
- task: Docker@2
displayName: Container registry login - ACR2 service connection
inputs:
command: login
containerRegistry: acr2
- task: Docker@2
displayName: Build and push images
inputs:
repository: test
tags: |
d1
d2
Instalador de la herramienta Kubectl
Hemos agregado una nueva tarea que le permite instalar una versión específica del binario kubectl en los agentes. Las cadenas de versión más recientes y semver , como "v1.14.0" se aceptan como valores válidos para la entrada de especificación de versión de Kubectl.

Azure Container Registry en la conexión del servicio del registro de Docker
Ahora puede crear una conexión de servicio del registro de Docker desde la página de configuración del proyecto. Para crear la conexión, elija un registro de contenedor de Azure en una de las suscripciones asociadas a la identidad de Azure Active Directory (Azure AD). Todas las tareas que requieren conexiones de servicio a registros de contenedor como Docker@2 y KubernetesManifest@0 admitirán una única manera de especificar una conexión.

Compatibilidad con cgroup en el grupo de Ubuntu hospedado
En Linux, cuando el uso de memoria es demasiado alto, el kernel finalizará algunos procesos para proteger el resto. Si el proceso del agente de Azure Pipelines está seleccionado para la finalización, se producirá un error en la ejecución de la canalización con un mensaje de error sobre la pérdida de comunicación con el agente. En el grupo de Ubuntu hospedado por Microsoft, hemos reducido las posibilidades de que el agente finalice mediante la ejecución de pasos dentro de un grupo c personalizado. Aunque la canalización puede seguir produciendo un error si supera la memoria disponible, es más probable que el proceso del agente sobreviva y notifique el error correctamente. Si ejecuta un agente de Linux privado, hemos publicado la configuración que usamos para que pueda considerar una configuración similar.
Ejecutar una vez el agente
Si usa infraestructura como Azure Container Instances para ejecutar agentes privados elásticos, a menudo, quiere que cada agente acepte solo un trabajo antes de desaparecer. Hasta ahora, esto no era fácil, ya que tenía que terminar el agente (posiblemente provocar un error al notificarse) o aceptar el riesgo de que un agente pudiera recibir otro trabajo antes de que pudiera apagarlo. Con esta actualización, agregamos la marca --once a la configuración del agente. Al configurar el agente de esta manera, solo aceptará un trabajo y, a continuación, se apagará.
Compatibilidad con Visual Studio 2019 (VS2019) en la tarea Prueba de Visual Studio
Hemos agregado compatibilidad con VS2019 a la tarea Prueba de Visual Studio en canalizaciones. Para ejecutar pruebas mediante la plataforma de pruebas para VS2019, seleccione las opciones Más reciente o Visual Studio 2019 en la lista desplegable Versión de la plataforma de prueba.

Actualización de la interfaz de usuario del grupo de agentes
La página de administración de grupos de agentes en la configuración del proyecto se ha actualizado con una nueva interfaz de usuario. Ahora puede ver fácilmente todos los trabajos que se ejecutan en un grupo. Además, puede aprender por qué un trabajo no se está ejecutando.

Asistente de tareas para editar archivos YAML
Seguimos recibiendo muchos comentarios que piden que sea más fácil editar archivos YAML para canalizaciones. En las actualizaciones anteriores, hemos agregado compatibilidad con IntelliSense. Ahora vamos a agregar una tarea asistente al editor de YAML. Con esto, tendrá la misma experiencia familiar para agregar una nueva tarea a un archivo YAML que en el editor clásico. Este nuevo asistente admite la mayoría de los tipos de entrada de tareas comunes, como listas de selección y conexiones de servicio. Para usar la nueva tarea asistente, seleccione Editar en una canalización basada en YAML y, a continuación, seleccione el asistente tarea.

Actualizaciones de imágenes de canalizaciones hospedadas
Nos complace anunciar actualizaciones del grupo de macOS hospedado en OS X Mojave (10.4), que también incluirá compatibilidad con Xcode 10.2. Si las canalizaciones basadas en el diseñador usan el grupo de macOS hospedado , las canalizaciones se actualizarán automáticamente a Mojave. Si quieres alojarte en OS X High Sierra (10.3), cambia el grupo en el que se ejecutan las compilaciones a Hosted macOS High Sierra.
Si usa YAML, las nuevas etiquetas vmImage que puede usar son las siguientes:
- Etiqueta de imagen que siempre apuntará a la versión más reciente de macOS, actualmente 10.4
vmImage: 'macOS-latest'
- Esta etiqueta de imagen tiene como destino específicamente mac OS 10.4 si desea asegurarse de que la canalización se ejecuta en Mojave
vmImage: 'macOS-10.4'
- Etiqueta de imagen que tendrá como destino específicamente mac OS 10.3 si desea asegurarse de que la canalización se ejecuta en High Sierra
vmImage: 'macOS-10.3'
También hemos realizado actualizaciones en la imagen de Windows Server 2019 para la instancia de Azure Pipelines hospedada. Las versiones más recientes se pueden encontrar aquí. Esta actualización incluye nuevas versiones de la versión preliminar de VS2019, Docker, PowerShell Core, Node.js, npm y otros.
Para obtener más información sobre lo que se incluye en nuestras imágenes de máquina virtual macOS hospedadas y obtenga información sobre las herramientas disponibles en nuestras imágenes, visite nuestro repositorio de generación de imágenes en GitHub.
Mejoras en la integración de ServiceNow
En diciembre, publicamos la integración de Administración de cambios de ServiceNow con canalizaciones de versión. Una funcionalidad clave para la colaboración entre equipos que permitió a cada equipo usar un servicio de su elección y tener una entrega de un extremo a otro eficaz. Con esta actualización, hemos mejorado la integración para admitir todos los tipos de cambios (normal, estándar y de emergencia). Además, ahora puede especificar la puerta usada para crear una nueva solicitud de cambio mediante una plantilla existente, según el proceso de ITSM seguido en su organización. Por último, también puede gater las versiones en función de las solicitudes de cambio existentes. Esto le permite adoptar cd, sin necesidad de cambiar el proceso recomendado por los equipos de TI.

Compatibilidad con Azure PowerShell módulo Az
Azure PowerShell proporciona un conjunto de cmdlets que puede usar para administrar recursos de Azure desde la línea de comandos. En diciembre pasado, el módulo Azure PowerShell Az estaba disponible y ahora es el módulo previsto para administrar los recursos de Azure.
Anteriormente, no proporcionamos compatibilidad con el módulo Az de Azure PowerShell en nuestros agentes hospedados. Con la nueva Azure PowerShell versión 4.* de la tarea en canalizaciones de compilación y versión, hemos agregado compatibilidad con el nuevo módulo Az para todas las plataformas. Azure PowerShell versión 3.* de la tarea seguirá admitiendo el módulo AzureRM. Sin embargo, para mantenerse al día con los servicios y características más recientes de Azure, se recomienda cambiar a la versión 4 de la tarea de Azure PowerShell tan pronto como sea posible.
El módulo Az tiene un modo de compatibilidad para ayudarle a usar scripts existentes mientras los actualiza para usar la nueva sintaxis. Para habilitar la compatibilidad con el módulo Az, use el Enable-AzureRmAlias comando . Los alias permiten usar los nombres de cmdlet antiguos con el módulo Az. Puede obtener más detalles sobre la migración desde el módulo de Azure RM al módulo Azure PowerShell Az aquí.
Nota:
Debe instalar el módulo Az en la máquina del agente si usa agentes privados.
Para obtener más información sobre el módulo Azure PowerShell Az, consulte la documentación aquí.
Mejoras en la autorización de recursos
Necesitamos proporcionar seguridad para los recursos protegidos (por ejemplo, conexiones de servicio, grupos de variables, grupos de agentes, archivos seguros) cuando se hace referencia a ellos en un archivo YAML. Al mismo tiempo, queríamos facilitar la configuración y el uso de canalizaciones que usan estos tipos de recursos para escenarios que no son de producción. Anteriormente, agregamos una configuración para marcar un recurso como "autorizado para su uso en todas las canalizaciones".
Con esta actualización, le facilitamos la corrección de un problema de autorización de recursos incluso si no ha marcado un recurso como tal. En la nueva experiencia, cuando se produce un error en una compilación debido a un error de autorización de recursos, verá una opción para autorizar explícitamente el uso de esos recursos en la canalización y, a continuación, continuar. Los miembros del equipo con permisos para autorizar recursos podrán completar esta acción directamente desde una compilación con errores.

Directivas de retención simplificadas para canalizaciones de compilación
Se ha simplificado el modelo de retención para todas las canalizaciones de compilación, incluidas las compilaciones de YAML. Hay una nueva configuración en el nivel de proyecto que le permite controlar cuántos días desea conservar las compilaciones de cada canalización y cuántos días desea conservar los artefactos de cada compilación. Si usó el editor clásico para crear la canalización de compilación, la configuración de retención anterior seguirá siendo respetada, pero las canalizaciones más recientes usarán la nueva configuración. Puede administrar la retención en la página de configuración de canalizaciones de la configuración del proyecto.
Artefactos de canalización capturados automáticamente en la versión
Anteriormente, si la canalización de compilación vinculada a una versión había publicado artefactos mediante la tarea Publicar artefacto de canalización , los artefactos no se capturaron automáticamente en la versión. En su lugar, tenía que agregar explícitamente una tarea Descargar artefacto de canalización en la canalización de versión para descargar los artefactos.
Ahora, los artefactos de canalización publicados por la canalización de compilación se descargan automáticamente y están disponibles para usted en la versión. También puede personalizar la descarga del artefacto de canalización desde las propiedades de fase de la canalización de versión.
Actualizaciones del informe de cobertura de código de Cobertura
Anteriormente, al ejecutar pruebas en la canalización y publicar los resultados de cobertura de código en Azure DevOps, era necesario especificar tanto el resumen XML como un archivo de informe HTML. Además, los estilos de los informes HTML se quitaron antes de que se representaran en la pestaña cobertura de código. Esta eliminación de estilos era necesaria desde el punto de vista de la seguridad, ya que se podían cargar archivos HTML arbitrarios.
Con esta actualización hemos abordado estas limitaciones para los informes de cobertura cobertura. Al publicar informes de cobertura de código, ya no es necesario especificar archivos HTML. Los informes se generan automáticamente y se representan con el estilo adecuado en la pestaña cobertura de código. Esta funcionalidad usa la herramienta código abierto ReportGenerator.

Informes
Informes de errores y duración de compilación
Es importante tener métricas e información para mejorar continuamente el rendimiento y la estabilidad de la canalización. Como primer paso para proporcionarle análisis de canalización, hemos agregado dos informes para proporcionarle métricas e información sobre las canalizaciones.
El informe de errores mostrará la tasa de pases de compilación y la tendencia de error. Además, también mostrará la tendencia de error de las tareas para proporcionar información sobre qué tarea contribuye al número máximo de errores.
compilaciónEl informe de duración tendrá la duración de la canalización junto con su tendencia.

Disponibilidad general de Analytics
Nos complace anunciar que las siguientes características de Analytics se incluirán en Azure DevOps sin costo adicional.
Los widgets de análisis son módulos configurables que muestran datos en un panel y le ayudan a supervisar el progreso del trabajo. Los widgets incluidos son los siguientes:
Los gráficos burndown y Burnup supervisan el progreso de un conjunto de trabajos con ámbito durante un período de tiempo.
evoluciónTiempo de ciclo y tiempo de ejecución para visualizar cómo se mueve el trabajo a través del ciclo de desarrollo del equipo

Diagrama de flujo acumulativo (CFD) realiza un seguimiento de los elementos de trabajo a medida que avanzan a través de varios estados.

La velocidad realiza un seguimiento de cómo un equipo ofrece valor a través de varios sprints.

Tendencia de resultados de pruebas para supervisar las tendencias de prueba, detectar patrones de error y duración para pruebas en una o varias canalizaciones.

En el producto, se incluye el informe de prueba con errores superior para obtener información sobre las principales pruebas con errores en la canalización para ayudar a mejorar la confiabilidad de la canalización y reducir la deuda de las pruebas.

También seguiremos ofreciendo integración de Power BI a través de vistas de análisis y acceso directo a nuestro punto de conexión de OData en versión preliminar para todos los clientes Azure DevOps Services.
Si usa la extensión de Marketplace de Analytics, puede seguir usando Analytics como hizo antes y no es necesario seguir ningún paso adicional. Esto significa que dejaremos de usar la extensión de Marketplace de Analytics para los clientes hospedados.
La oferta de Azure DevOps Analytics es el futuro de los informes y continuaremos invirtiendo en nuevas características controladas por Analytics. Puede encontrar más información sobre Analytics en los vínculos siguientes.
Wiki
Notificaciones en páginas wiki
Hasta ahora, no tenías una manera de saber cuándo se cambió el contenido de una página wiki. Ahora puede seguir las páginas wiki para recibir notificaciones por correo electrónico cuando se edite, elimine o cambie el nombre de la página. Para realizar un seguimiento de los cambios realizados en una wiki, seleccione el botón Seguir de la página wiki.

Esta característica se ha priorizado en función de esta incidencia de sugerencia. Para más información, consulte nuestra documentación aquí.
Administración
Administración de la facturación de su organización desde Azure DevOps
Nos complace anunciar que ahora puede administrar la facturación de su organización desde el portal de Azure DevOps. Los administradores ya no necesitan configurar la facturación a través del Azure Portal. Para administrar la configuración de facturación, vaya a configuración de la organización y seleccione Facturación.
A continuación se muestra una lista de opciones de configuración que puede administrar desde la pestaña Facturación .
Puede elegir una suscripción de Azure que se usará para la facturación.

Puede cambiar la suscripción de Azure que usa su organización para la facturación si selecciona otra suscripción. Anteriormente, tenía que quitar la facturación y, a continuación, volver a comprar cuidadosamente el mismo nivel para cada uno de los recursos de pago (usuarios básicos, usuarios de administración de paquetes, canalizaciones hospedadas de MS, etc.). Este proceso era tedioso y propenso a errores. Ahora puede cambiar la suscripción de Azure que usa su organización para la facturación seleccionando otra suscripción y haciendo clic en Guardar.
de Ya no es necesario ir a Visual Studio Marketplace para administrar la configuración de facturación. Hemos agregado la capacidad de pagar por usuarios adicionales de Basic, Test Manager y Package Management (Azure Artifacts). Puede aumentar o disminuir el número de usuarios que su organización paga desde la nueva pestaña Facturación .

Pasos siguientes
Nota:
Estas características se implementarán en las próximas dos a tres semanas.
Vaya a Azure DevOps y eche un vistazo.
Cómo enviar sus comentarios
Nos encantaría saber lo que piensas sobre estas características. Use el menú de comentarios para notificar un problema o proporcionar una sugerencia.

También puede recibir consejos y sus preguntas respondidas por la comunidad en Stack Overflow.
Gracias,
Jeremy Epling