Skip to content
This repository has been archived by the owner on Feb 7, 2023. It is now read-only.

Receta para configurar husky y talisman en un repositorio con npm

Notifications You must be signed in to change notification settings

MateoRojas/husky-talisman

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Configurar Lint & Talisman Hook

La intención de este repo es crear una receta para añadir hooks a git.

Hooks instalados:

  • Lint-staged: Verifica el estilo del código
  • Talisman: Verifica que no se suba información sensible

Herramientas:

  • Husky: Herramienta para correr un asociar un script a un hook de git

Pasos

  1. Crear una nueva carpeta e iniciar git y npm:

    npm init

    git init

  2. Instalar eslint (vamos a usar la guía de estilo de airbnb)

    2.1 Añadir los paquete con el siguiente comando

    npm i eslint eslint-config-airbnb-base eslint-plugin-import --save-dev

    2.2 Configurar lint para que use la guía de estilo de airbnb

    echo 'module.exports = { "extends": "airbnb-base" };' > .eslintrc.js

    2.3 Añadir script a package.json

    "lint": "./node_modules/.bin/eslint ./syntax --ext .js --ext .jsx --cache"

  3. Instalar Husky 🌵

    npm i husky --save-dev

    Si ya tienes instalado talisman instalado primero borramos el hook rm .git/hooks/pre-commit

    Verificar los hooks instalados por husky

    ls -a .git/hooks

  4. Instalar lint-staged

    npm i lint-staged --save-dev

    y añadir la configuración en el archivo lint-staged.config.js

    module.exports = {
      linters: {
        '*.js': ['eslint'],
      },
    };
    
  5. Instalar Talisman.

    5.1 Instalar Talisman globalmente

    curl --silent https://raw.githubusercontent.com/thoughtworks/talisman/master/global_install_scripts/install.bash > /tmp/install_talisman.bash && /bin/bash /tmp/install_talisman.bash

    5.2 Especificar TALISMAN_HOME (se recomienda dejarlo por defecto)

    5.3 Especificar "Git template directory" (se recomienda dejarlo por defecto)

    5.4 Definir directorio de los repositorios de GIT que queremos escanear con Talisman (Talisman va añadir el script de pre-commit a todos los repositorios del directorio especificado)

  6. Configurar husky. En package.json añadir los siguiente:

    "husky": {
       "hooks": {
         "pre-commit": "$TALISMAN_HOME/talisman_hook_script pre-commit && lint-staged"
       }
    }
    
  7. Añadir excepciones en .talismanrc

    fileignoreconfig:
    - filename: .env
      checksum: checksum-number
      ignore_detectors: [filename]
    
    - filename: file.js
      checksum: checksum-number
      ignore_detectors: [filecontent]
    

About

Receta para configurar husky y talisman en un repositorio con npm

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%