Actualizar una imagen Azure Appveyor
Electron CI on Windows uses AppVeyor, which in turn uses Azure VM images to run. Ocasionalmente, estas imagenes VM necesitan actualizarse debido a cambios en los requerimientos de Chormium. Para actualizar usted necesitará PowerShell y el Azure PowerShell module.
Ocasionalmente necesitaremos actualizar estas imágenes debido a cambios en Chromium u otros requisitos varios de construcción.
Ejemplo Caso de uso:
* Necesitamos `VS15.9` y tenemos instalada `VS15.7`; esto requeriría que actualicemos una imagen Azure.
Identifique la imagen que desea modificar.
- En appveyor.yml, la imagen es identificada por la propiedad image.
- Los nombres usados corresponden a las "images" definidas para una nube de construcción, ejemplo el libcc-20 cloud.
- Encuentre la imagen que desea modificar en la nube de construcción y tenga en cuenta que la VHD Blob Path para la imagen, que es el valor para la correspondiente llave.
- Usted necesitará esta ruta URI para copiar dentro de una nueva imagen.
- Usted además necesitará el nombre de la cuenta de almacenamiento el cual es etiquetado en AppVeyor como Disk Storage Account Name
- En appveyor.yml, la imagen es identificada por la propiedad image.
Obtenga la clave de la cuenta de almacenamiento Azure
- Inicie sesión en Azure usando credenciales almacenadas en LastPass (bajo Azure Enterprise) y luego encuentre la cuenta de almacenamiento correspondiente al nombre encontrado en AppVeyor.
- Ejemplo, para
appveyorlibccbuilds
Disk Storage Account Name you'd look forappveyorlibccbuilds
in the list of storage accounts @ Home < Storage Accounts- Haga clic en él y busque
Access Keys
, y luego puede utilizar cualquiera de las claves presentes en la lista.
- Haga clic en él y busque
- Ejemplo, para
- Inicie sesión en Azure usando credenciales almacenadas en LastPass (bajo Azure Enterprise) y luego encuentre la cuenta de almacenamiento correspondiente al nombre encontrado en AppVeyor.
Obtenga la URI completa de imagen de maquina virtual de Azure
- Navigate to Home < Storage Accounts <
$ACCT_NAME
< Blobs < Images- EN la siguiente lista, mira el nombre de ruta VHD que obtuvo de Appveyor y luego pulsa en él.
- Copiar toda la URL desde la parte superior de la ventana posterior.
- EN la siguiente lista, mira el nombre de ruta VHD que obtuvo de Appveyor y luego pulsa en él.
- Navigate to Home < Storage Accounts <
Copiar la imagen usando el Copy Master Image PowerShell script.
- Es esencial copiar la VM porque si mueve una VM contra una imagen esa imagen no puede ser usada al mismo tiempo or AppVeyor.
- Utilizar el nombre de la cuenta de almacenamiento, clave y URI obtenidos de Azure para ejecutar este script.
- Mire el paso 3 para URI & cuando se le solicite, puls enter para usar la misma cuenta de almacenamiento como destino.
- Usar nombre de contenedor de destino predeterminado
(images)
- Además, al nombrar la copia, utilice un nombre que indique lo que contendrá la nueva imagen (si ha cambiado) y la fecha.
- Ej.
libcc-20core-vs2017-15.9-2019-04-15.vhd
- Ej.
- Acceda a Azure y consigua la URI para la imagen recién creada como se describe en un paso anterior
Haz una nueva VM usando el Crear VM Master de VHD PowerShell.
- Desde PowerShell, ejecute el archivo
ps1
con./create_master_vm_from_vhd.ps1
- Usted necesitarás la información de credencial disponible en la definición de nube de AppVeyor.
- Esto incluye:
- ID de Cliente
- Secreto del Cliente
- Tenant ID
- ID de la suscripción
- Grupo de Recursos
- Red virtual
- Esto incluye:
- También necesitará especificar
- Nombre de la VM principal - sólo un nombre único para identificar la VM temporal
- Tamaño de la VM principal - usar
Standard_F32s_v2
- VHD URI Principal - usar la URI obtenida de @ end del paso anterior
- Ubicación usar
East US
- Desde PowerShell, ejecute el archivo
Vuelva a iniciar sesión en Azure y encuentre la VM que recién ha sido creada en Home < Virtual Machines <
$YOUR_NEW_VM
- Puede descargar un archivo RDP (escritorio remoto) para acceder a la VM.
Usando Microsoft Remote Desktop, haga clic en
Connect
para conectarse a la VM.- Las credenciales para iniciar sesión en la VM se encuentran en LastPass bajo las credenciales
AppVeyor Enterprise master VM
.
- Las credenciales para iniciar sesión en la VM se encuentran en LastPass bajo las credenciales
Modificar la VM como sea necesario.
Apagar la VM y luego borrarla en Azure.
Agreagar la nueva imagen a l configuracion de la nube Appveyor o modifique una imagen para apuntar al nuevo VHD.