1.0.6 • Published 2 years ago

casosf-commons-npm v1.0.6

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

NPM

Acá encontrarás las definiciones por default para los CI para compilar y desplegar en Nexus, este es un trabajo colaborativo del equipo de DevOps. Ante cualquier duda o sugerencia, por favor contectarnos a través del canal de Slack #gitlab-openshift

Steps

Los pasos estándar varían ligeramente según las tecnologías. Mínimamente, una pipeline debería consistir de:

  • build
  • test
  • pack
  • quality
  • validator
  • security
  • publish

Estos steps se ejecutan siempre que se puedan con un Gitlab Runner tipo BASH DOCKER.

GitFlow

Como Existe un unico nexus cuya dirección es http://nexus.ar.bsch/ , este solo se publica en la rama master permitiendo tener distintas versiones de código y solo publicar la necesaria cuando llega a Master

Nexus

Se verifica que el repositorio de Nexus exista o se crea automaticamente con la pipeline, esto se hace a través de las variables del archivo: .ci-variables.yml

Para la subida de artefactos a nexus se utiliza un archivo json llamado artifacts

USO DE artifacts.json

{
  "artifacts": [
    {
      "UPLOAD_ARTIFACT": "[GROUP]-[NAME]-[SEMVER].tgz"
    }
  ]
}

Pablo Novas genero un script de Node para automatizar la generación de este file ( Solo 1 artefacto en el siguiente confluence https://confluence.ar.bsch/pages/viewpage.action?pageId=35233336

Si se tiene más de un artfacto se lo agrega en el json separado por coma

Tomar de ejemplo el que se encuentra en este repositorio con todas sus VARIABLES ya definidas

USO DE .CI-VARIABLES Y TEMPLATES

Para que el uso de los templates funcione correctamente, es requerido que las variables definidas en este archivo cotnengan un valor. No se podrán modificar el nombre de las variables. Solo se puede modificar el valor de la derecha, en caso de no modificar se tomara el valor que esta por defecto en este archivo.

.ci-variables.yml

variables:

#### Configuración Nexus ####
    TECHNOLOGY: "npm" # Este valor siempre debe estar en minuscula
    REPOSITORY_TYPE: "hosted"	
    REPOSITORY_NAME: "TemplateNPMNexus"
#### Versión de NPM a utilizar. Puede ser 8, 10, o 12 ####
    NPM_VERSION: '12'

#### QUALITY SONAR ####
  TECNOLOGY: "npm" 
  SONAR_EXCLUSIONS_FILES: ""
  SONAR_TEST_PATH_JUNIT: ""

F.A.Q en los Pipelines

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago