Proceso de lanzamiento

Lanzando una nueva versión

Los pasos varían un poco dependiendo del tipo de lanzamiento que haga (mayor, menor o parche)

Para lanzar una nueva versión de parche (ej. de 0.28.1 a 0.28.2)

  1. Escoge los cambios en la -estable rama (eg. estable de 0.28 0.28).
  2. Asegurese de que esta en la -stable rama local.
  3. Ejecutar npm version patch para darr con el número de versión y crear el asunto y etiqueta Git
  4. Ejecutar git push origin 0.xx-stable --follow-tags (replace 0.xx-stable con el nombre de rama correcto)

Para lanzar una nueva versión menor o mayor (ej. de 0.28.x a 0.29.0)

  1. Asegúrate de que la rama actual master es verde en Circle, Travis y AppVeyor
  2. Asegurese de estar en maestro y su copia local de Yarn este actualizada
  3. Ejecutar ./scripts/release-branch.sh. Esto hará:
    • Crear la 0.xx-stable rama y 0.xx.0 etiqueta
    • Cambiar master a la próxima versión menor (ej. después de lanzar el 0.29.0, maestro se le golpea a 0.30.0)
    • Empujar todos al origin

Para marcar un lanzamiento RC como estable

Una vez que un RC ha sido probado por la comunidad por un tiempo y todos los errores han sido subsanados, este puede ser marcado como estable. Para esto, vaya a https://release.yarnpkg.com/ y haga clic en el botón “Promover RC a estable”.

Nota: Existe una lista blanca para los usuarios que pueden acceder a esta página. Si un encargado esta fuera de la lista blanca, se puede modificar aquí.

Depurando una version

A veces las cosas salen mal. Aquí esta como depurar algunos problemas comunes:

He puesto la etiqueta pero el sitio aún apunta a la versión antigua

Compruebe la versión de GitHub para cualquier artefacto faltante. Los scripts de lanzamiento nodan el número de versión en el sitio hasta tanto el Linux y que los artefactos de Windows se hayan unido a la liberación.

Artefactos de Linux (. tar.gz, deb, etc.) faltantes

Compruebe la estructura CircleCI y vuelve a ejecutarla si ha fallado. Si la compilación tuvo éxito, Compruebe los registros de webhook para cualquier error.

Faltan artefactos de Windows (msi)

Compruebe la compilacion de AppVeyor y vuelve a ejecutarlo si ha fallado. Si la compilación tuvo éxito, Compruebe los registros de webhook para cualquier error.

Todos los artefactos se unen para lanzar, pero el sitio todavía señala a la versión antigua

Compruebe la versión de compilacion yarn Jenkins y vea si ha fallado.


Como hacerlo manualmente

La mayoría de la liberación ha sido automatizada y es bastante sencilla. Normalmente, sólo puede parar a leer aquí. Sin embargo, si la versión de herramientas nunca se daña (o si te gusta hacer cosas la manera dura), manualmente puede realizar los pasos de liberación.

Creando una nueva version

  1. Ejecutar yarn build-dist && yarn build-deb para construir el código de liberación, paquete Debian y paquete RPM
  2. Ejecuta yarn build-dist && yarn build-win-installer en Windows para crear el instalador de Windows
  3. GPG firma la .tar.gz y .js artefactos: sh gpg -u 9D41F3C3 –armor –detach-sign yarn-0.xx.xx.tar.gz Esto generará

    .asc los archivos que usted debe adjuntar también la liberación

  4. Código de autenticación muestra la .msi artefactos: sh osslsigncode sign -t http://timestamp.digicert.com -n “Yarn Installer” -i https://yarnpkg.com/ -pkcs12 yarn-20161122.pfx -readpass yarn-20161122.key -h sha1 -in yarn-0.xx.xx-unsigned.msi -out yarn-0.xx.xx.msi osslsigncode sign -t http://timestamp.digicert.com -n “Yarn Installer” -i https://yarnpkg.com/ -pkcs12 yarn-20161122.pfx -readpass yarn-20161122.key -nest -h sha2 -in yarn-0.xx.xx.msi -out yarn-0.xx.xx.msi

  5. Crear nueva versión en GitHub y conectar todos los artefactos. Para el MSI, asegúrate de que instale la versión firmada!
  6. Publicar la tarball a Mnp: Mnp publicar./artifacts/yarn-v0.xx.xx.tar.gz
  7. Después del lanzamiento realizar los pasos a continuacion

Pasar RC a estable

  1. Modifica la liberación de GitHub para marcarlo como estable
  2. Ejecuta npm dist-tag add yarn@0.xx.xx latest (en el que 0.xx.xx es el número de versión que se publicó)
  3. Despues de lanzamiento ejecuta los pasos a continuación

Posterior al lanzamiento

  1. Bump version number in _config.yml on the website
  2. Ejecute ./scripts/build-chocolatey.ps1 para pasar a Chocolatey
  3. Ejecute ./scripts/update-homebrew.sh para pasar a Homebrew
  4. Los repositorios Debian y CentOS deberían actualizarse automáticamente con el último lanzamiento en 5 minutos (Vigila los commits)