Drupal
Contribuir
Ruben Egiguren (keopx)
25/10/2016
Me podeis encontrar en:
▸ Blog: www.keopx.net
▸ Drupal: www.drupal.org/u/keopx
▸ Twitter: @regiguren
Me llamo
Ruben Egiguren
(keopx)
Introducción
Introducción
Objetivo
▸ Crear las bases para contribuir a Drupal.
▸ Facilitar recursos para poder comenzar.
▸ Tener un entorno para poder continuar en el
futuro.
▸ Pautas para no morir en el intento.
Por dónde empezar
Prepararnos para el sprint
▸ Regístrate en drupal.org.
▸ Leernos la documentación para novatos y
conocer el proceso a seguir.
▹ https://www.drupal.org/novice
▸ Instalar el entorno LAMP o similar.
▹ docker-compose: Linux & Mac:
▹ https://github.com/keopx/docker-drupa
l-contrib
▹ Acquia Dev Desktop
▹ Otros.
Por dónde empezar
Prepararnos para el sprint
Configura un cliente de IRC.
▸ https://www.drupal.org/irc
▹ Únete a los canales #drupal,
#drupal-contribute, #drupal-es y
relacionados.
▹ También se puede usar Slack o HipChat si
se hace en un grupo específico, pero el IRC
es un buen lugar.
Por dónde empezar
Atribuciones
Por dónde empezar
Estados de las issues
Templates for issue status transitions
Por dónde empezar
Prepararnos para el sprint
▸ Configurar un IDE con los coding standards de
Drupal.
▹ https://www.drupal.org/coding-standards
▹ Herramientas adicionales:
▹ Coder
▹ PAReview.sh
Si no cumples los coding standards tus
parches/módulos/temas nunca serán
publicados.
Por dónde empezar
Más recursos
▸ Importante leerlo: Recursos para contribuir,
generación de parches, como aplicarlos, etc.
▹ https://www.drupal.org/contribute/development
▸ Conocer una experiencia real y ver cómo hacerlo:
▹ http://2014.drupalday.es/sesion/publica-tu-proye
cto-en-drupalorg.html
▹ Video: https://vimeo.com/113362254
▹ Slides:
http://2014.drupalday.es/sites/default/files/
publica_tu_proyecto_en_drupal.org_.pdf
Contribuir a Drupal
No es difícil
▸ Contribuir al core no significa que tengas que
ser un crack.
▸ Hay tareas de todo tipo y de todos los niveles,
pero antes es necesario leerse estos apuntes
para conocer los procesos a la hora de
contribuir.
▸ Hasta yo lo he hecho :D
Novice
▸ Para empezar a contribuir lo primero es buscar
una issue novice.
▸ Es el mejor camino para empezar a realizar las
primeras aportaciones.
▸ Para ello podemos usar el siguiente enlace:
▹ https://www.drupal.org/project/issues/sear
ch/drupal?project_issue_followers=&issue
_tags_op=%3D&issue_tags=Novice
Novice - interdiff
▸ Para realizar los parches que se actualicen, es
necesario añadir los ficheros interdiff para
facilitar al resto de colaboradores la lectura de
los cambios entre un parche y otro.
▸ El proceso parece complejo, pero al final resulta
más sencillo de lo que es.
▹ https://www.drupal.org/documentation/git/i
nterdiff
Nota: Procurar siempre que sean issues del tipo
minor o normal para facilitar las cosas.
▸ Una de las acciones más sencillas puede ser
hacer un reroll.
▸ Qué es exactamente hacer un reroll:
▹ El parche existente, aun estando bien,
resulta que por cambios en otros issues, ha
afectado a la issue actual.
▹ Por tanto el parche no se puede utilizar y
necesita reajustarse para su uso.
▹ https://www.drupal.org/patch/reroll
▹ No necesita cambios, solo adaptarse.
Novice - reroll
▸ Podemos encontrar issues de ese tipo aquí:
▹ https://www.drupal.org/project/issues/sear
ch/drupal?project_issue_followers=&issue
_tags_op=%3D&issue_tags=Needs+reroll
Nota: Procurar siempre que sean issues del tipo
minor o normal para facilitar las cosas.
Novice - reroll
▸ La issue no existe. Buscad bien.
▸ Coger una plantilla existente para rellenar la
información y publicar el parche que consideres
oportuno poniéndolo en need review.
▸ A partir de ahí, es cuando empieza la comunidad
a intervenir.
▸ Si tienes cualquier cuestión no dudes en
preguntar.
▸ Aquí podemos encontrar dichas plantillas:
▹ https://www.drupal.org/issue-summaries
Creación de issues
▸ En cualquier caso podemos utilizar las issues
existentes.
Recordad: Procurar siempre que sean issues del tipo
minor o normal para facilitar las cosas.
Issues genéricas
▸ Otro lugar para poder comenzar son los módulos
contrib, aunque no siempre resulta sencillo por
varios motivos.
▹ No sabes que deberia de hacer exactamente.
▹ No lo has hecho tú, aunque si es
medianamente drupalero no deberías tener
problemas.
Contrib
De cualquier manera, siempre hay tareas sencillas
para poder hacer:
▸ Añadir rutas de configuración.
▸ Añadir composer.json.
▸ …
Usad siempre el git del módulo para ver cómo
aplicar los cambios y crear los parches.
Contrib
▸ Suele más accesible contactar con alguien que
lleve un módulo que alguien del core.
▹ Facilita mucho el tener feedback.
▹ O comprender mejor la necesidad de la
incidencia.
▸ Tendemos a solucionarlo para nuestros casos.
▸ NO SEAS PEREZOSO y comparte ese parche con
la comunidad, es bueno para ti, para ellos y para
el resto de la comunidad.
Contrib
▸ Aquí está el listado de las personas que son las
encargadas de mantener cada
componente/modulo/tema:
▹ https://api.drupal.org/api/drupal/core!MAIN
TAINERS.txt/8
Maintainers
Crear nuestros propios módulos y contribuir a la
comunidad.
▸ Que no exista el módulo.
▹ Sino hace lo mismo, comenzar el proceso.
▹ Mejor colaborar que competir.
▸ Si existe, crear nuevas features para el módulo
que exista.
▸ Asegúrese de que su aplicación contiene un
enlace de repositorio (sandbox) y proyecto.
Project Application
Estas son lecturas casi obligadas si deseas construir tu
propio módulo/theme.
▸ Project application checklist
▸ Review process for Full Project Applications
▸ Apply for permission to create full projects
▸ https://www.drupal.org/project/projectapplications
▸ PAReview.sh (recomendado - revisar codigo)
▹ PAReview.sh (vía web)
▸ Coder
▸ Review bonus (acelerar el proceso - obligatorio)
Project Application
La recomendación más importante que te
puedo dar es que busques a un mentor
que te ayude.
Project Application
Recursos
▸ Aquí está el listado de las personas que son las
encargadas de mantener cada
componente/modulo/tema:
▹ https://api.drupal.org/api/drupal/core!MAIN
TAINERS.txt/8
Recursos - Maintainers
▸ https://www.drupal.org/novice
▸ https://www.drupal.org/irc
▸ https://www.drupal.org/contribute/development
▸ https://www.drupal.org/coding-standards
▸ http://2014.drupalday.es/sesion/publica-tu-proyect
o-en-drupalorg.html
▹ Video: https://vimeo.com/113362254
▹ Slides:
http://2014.drupalday.es/sites/default/files/pu
blica_tu_proyecto_en_drupal.org_.pdf
▸ http://blog.worldempire.ch/story/how-contribute-d
rupal
Recursos - Antes de empezar
▸ https://www.drupal.org/contribute/core
▸ Make patch
▸ Advanced patch contributor guide
▸ https://www.drupal.org/patch/apply
▸ https://www.drupal.org/documentation/git/interdi
ff
Recursos - Drupal Core
▸ Novice:
▹ https://www.drupal.org/novice
▹ https://www.drupal.org/project/issues/search/
drupal?project_issue_followers=&issue_tags
_op=%3D&issue_tags=Novice
▸ Reroll:
▹ https://www.drupal.org/patch/reroll
▹ https://www.drupal.org/project/issues/search/
drupal?project_issue_followers=&issue_tags
_op=%3D&issue_tags=Needs+reroll
Recursos - Drupal Core
▸ https://www.drupal.org/issue-queue
▸ https://www.drupal.org/issue-queue/status
▸ Attribute this contribution
▸ Templates for issue status transitions
▸ Issue submission form fields
▸ https://www.drupal.org/issue-summaries
(plantillas para las issues)
▸ https://dreditor.org/ (plugin Chrome/Firefox)
▸ https://www.drupal.org/sprint-task-cards
▹ Spanish Task Cards
Recursos - Drupal Core
▸ Project application checklist
▸ Review process for Full Project Applications
▸ Apply for permission to create full projects
▸ https://www.drupal.org/project/projectapplications
▸ PAReview.sh (recomendado - revisar codigo)
▹ PAReview.sh (vía web)
▸ Coder
▸ Review bonus (acelerar el proceso - obligatorio)
Recursos - Project Application
Biko2
www.biko2.com
+34.91.436.48.54
info@biko2.com
Ruben Egiguren (keopx)

Contribuir a Drupal

  • 1.
  • 2.
    Me podeis encontraren: ▸ Blog: www.keopx.net ▸ Drupal: www.drupal.org/u/keopx ▸ Twitter: @regiguren Me llamo Ruben Egiguren (keopx)
  • 3.
  • 4.
    Introducción Objetivo ▸ Crear lasbases para contribuir a Drupal. ▸ Facilitar recursos para poder comenzar. ▸ Tener un entorno para poder continuar en el futuro. ▸ Pautas para no morir en el intento.
  • 5.
    Por dónde empezar Prepararnospara el sprint ▸ Regístrate en drupal.org. ▸ Leernos la documentación para novatos y conocer el proceso a seguir. ▹ https://www.drupal.org/novice ▸ Instalar el entorno LAMP o similar. ▹ docker-compose: Linux & Mac: ▹ https://github.com/keopx/docker-drupa l-contrib ▹ Acquia Dev Desktop ▹ Otros.
  • 6.
    Por dónde empezar Prepararnospara el sprint Configura un cliente de IRC. ▸ https://www.drupal.org/irc ▹ Únete a los canales #drupal, #drupal-contribute, #drupal-es y relacionados. ▹ También se puede usar Slack o HipChat si se hace en un grupo específico, pero el IRC es un buen lugar.
  • 7.
  • 8.
    Por dónde empezar Estadosde las issues Templates for issue status transitions
  • 9.
    Por dónde empezar Prepararnospara el sprint ▸ Configurar un IDE con los coding standards de Drupal. ▹ https://www.drupal.org/coding-standards ▹ Herramientas adicionales: ▹ Coder ▹ PAReview.sh Si no cumples los coding standards tus parches/módulos/temas nunca serán publicados.
  • 10.
    Por dónde empezar Másrecursos ▸ Importante leerlo: Recursos para contribuir, generación de parches, como aplicarlos, etc. ▹ https://www.drupal.org/contribute/development ▸ Conocer una experiencia real y ver cómo hacerlo: ▹ http://2014.drupalday.es/sesion/publica-tu-proye cto-en-drupalorg.html ▹ Video: https://vimeo.com/113362254 ▹ Slides: http://2014.drupalday.es/sites/default/files/ publica_tu_proyecto_en_drupal.org_.pdf
  • 11.
  • 12.
    No es difícil ▸Contribuir al core no significa que tengas que ser un crack. ▸ Hay tareas de todo tipo y de todos los niveles, pero antes es necesario leerse estos apuntes para conocer los procesos a la hora de contribuir. ▸ Hasta yo lo he hecho :D
  • 13.
    Novice ▸ Para empezara contribuir lo primero es buscar una issue novice. ▸ Es el mejor camino para empezar a realizar las primeras aportaciones. ▸ Para ello podemos usar el siguiente enlace: ▹ https://www.drupal.org/project/issues/sear ch/drupal?project_issue_followers=&issue _tags_op=%3D&issue_tags=Novice
  • 14.
    Novice - interdiff ▸Para realizar los parches que se actualicen, es necesario añadir los ficheros interdiff para facilitar al resto de colaboradores la lectura de los cambios entre un parche y otro. ▸ El proceso parece complejo, pero al final resulta más sencillo de lo que es. ▹ https://www.drupal.org/documentation/git/i nterdiff Nota: Procurar siempre que sean issues del tipo minor o normal para facilitar las cosas.
  • 15.
    ▸ Una delas acciones más sencillas puede ser hacer un reroll. ▸ Qué es exactamente hacer un reroll: ▹ El parche existente, aun estando bien, resulta que por cambios en otros issues, ha afectado a la issue actual. ▹ Por tanto el parche no se puede utilizar y necesita reajustarse para su uso. ▹ https://www.drupal.org/patch/reroll ▹ No necesita cambios, solo adaptarse. Novice - reroll
  • 16.
    ▸ Podemos encontrarissues de ese tipo aquí: ▹ https://www.drupal.org/project/issues/sear ch/drupal?project_issue_followers=&issue _tags_op=%3D&issue_tags=Needs+reroll Nota: Procurar siempre que sean issues del tipo minor o normal para facilitar las cosas. Novice - reroll
  • 17.
    ▸ La issueno existe. Buscad bien. ▸ Coger una plantilla existente para rellenar la información y publicar el parche que consideres oportuno poniéndolo en need review. ▸ A partir de ahí, es cuando empieza la comunidad a intervenir. ▸ Si tienes cualquier cuestión no dudes en preguntar. ▸ Aquí podemos encontrar dichas plantillas: ▹ https://www.drupal.org/issue-summaries Creación de issues
  • 18.
    ▸ En cualquiercaso podemos utilizar las issues existentes. Recordad: Procurar siempre que sean issues del tipo minor o normal para facilitar las cosas. Issues genéricas
  • 19.
    ▸ Otro lugarpara poder comenzar son los módulos contrib, aunque no siempre resulta sencillo por varios motivos. ▹ No sabes que deberia de hacer exactamente. ▹ No lo has hecho tú, aunque si es medianamente drupalero no deberías tener problemas. Contrib
  • 20.
    De cualquier manera,siempre hay tareas sencillas para poder hacer: ▸ Añadir rutas de configuración. ▸ Añadir composer.json. ▸ … Usad siempre el git del módulo para ver cómo aplicar los cambios y crear los parches. Contrib
  • 21.
    ▸ Suele másaccesible contactar con alguien que lleve un módulo que alguien del core. ▹ Facilita mucho el tener feedback. ▹ O comprender mejor la necesidad de la incidencia. ▸ Tendemos a solucionarlo para nuestros casos. ▸ NO SEAS PEREZOSO y comparte ese parche con la comunidad, es bueno para ti, para ellos y para el resto de la comunidad. Contrib
  • 22.
    ▸ Aquí estáel listado de las personas que son las encargadas de mantener cada componente/modulo/tema: ▹ https://api.drupal.org/api/drupal/core!MAIN TAINERS.txt/8 Maintainers
  • 23.
    Crear nuestros propiosmódulos y contribuir a la comunidad. ▸ Que no exista el módulo. ▹ Sino hace lo mismo, comenzar el proceso. ▹ Mejor colaborar que competir. ▸ Si existe, crear nuevas features para el módulo que exista. ▸ Asegúrese de que su aplicación contiene un enlace de repositorio (sandbox) y proyecto. Project Application
  • 24.
    Estas son lecturascasi obligadas si deseas construir tu propio módulo/theme. ▸ Project application checklist ▸ Review process for Full Project Applications ▸ Apply for permission to create full projects ▸ https://www.drupal.org/project/projectapplications ▸ PAReview.sh (recomendado - revisar codigo) ▹ PAReview.sh (vía web) ▸ Coder ▸ Review bonus (acelerar el proceso - obligatorio) Project Application
  • 25.
    La recomendación másimportante que te puedo dar es que busques a un mentor que te ayude. Project Application
  • 26.
  • 27.
    ▸ Aquí estáel listado de las personas que son las encargadas de mantener cada componente/modulo/tema: ▹ https://api.drupal.org/api/drupal/core!MAIN TAINERS.txt/8 Recursos - Maintainers
  • 28.
    ▸ https://www.drupal.org/novice ▸ https://www.drupal.org/irc ▸https://www.drupal.org/contribute/development ▸ https://www.drupal.org/coding-standards ▸ http://2014.drupalday.es/sesion/publica-tu-proyect o-en-drupalorg.html ▹ Video: https://vimeo.com/113362254 ▹ Slides: http://2014.drupalday.es/sites/default/files/pu blica_tu_proyecto_en_drupal.org_.pdf ▸ http://blog.worldempire.ch/story/how-contribute-d rupal Recursos - Antes de empezar
  • 29.
    ▸ https://www.drupal.org/contribute/core ▸ Makepatch ▸ Advanced patch contributor guide ▸ https://www.drupal.org/patch/apply ▸ https://www.drupal.org/documentation/git/interdi ff Recursos - Drupal Core
  • 30.
    ▸ Novice: ▹ https://www.drupal.org/novice ▹https://www.drupal.org/project/issues/search/ drupal?project_issue_followers=&issue_tags _op=%3D&issue_tags=Novice ▸ Reroll: ▹ https://www.drupal.org/patch/reroll ▹ https://www.drupal.org/project/issues/search/ drupal?project_issue_followers=&issue_tags _op=%3D&issue_tags=Needs+reroll Recursos - Drupal Core
  • 31.
    ▸ https://www.drupal.org/issue-queue ▸ https://www.drupal.org/issue-queue/status ▸Attribute this contribution ▸ Templates for issue status transitions ▸ Issue submission form fields ▸ https://www.drupal.org/issue-summaries (plantillas para las issues) ▸ https://dreditor.org/ (plugin Chrome/Firefox) ▸ https://www.drupal.org/sprint-task-cards ▹ Spanish Task Cards Recursos - Drupal Core
  • 32.
    ▸ Project applicationchecklist ▸ Review process for Full Project Applications ▸ Apply for permission to create full projects ▸ https://www.drupal.org/project/projectapplications ▸ PAReview.sh (recomendado - revisar codigo) ▹ PAReview.sh (vía web) ▸ Coder ▸ Review bonus (acelerar el proceso - obligatorio) Recursos - Project Application
  • 34.