SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
Cómo hacer que te aprueben un
plugin de Grails en dos horas... y
sin fork de Burt Beckwith

Iván López Martín

Iván López (@ilopmar)
¿Quién soy?
Iván Lopez Martín @ilopmar
Trabajo en Kaleidos
Uso Groovy/Grails desde hace casi 4 años
Creador de varios plugins de Grails
Geek, padre, desarrollador, sysadmin, linuxero y pro-software
libre
¿Por qué esta charla?
La “culpa” la tiene @adelatorrefoss
Mis plugins:
- ducksboard-api
- slug-generator
- postgresql-extensions (con @alotor)
- my-malcom
- url-shortener
Colaboraciones:
- avatar
- asynchronous-mail
¿Así que ya has terminado tu plugin?
Solicitar la aprobación del plugin en
http://grails.org/plugins/submitPlugin
Y listo, seguro que lo aprueban inmediatamente y lo puedes
publicar
Nada malo puede pasar, ¿verdad?
Burt Beckwith, ¡eso es lo que pasa!
¿Que hay que comprobar?
.gitignore
Descriptor del plugin
application.properties
BuildConfig.groovy
Config.groovy
DataSource.groovy
UrlMappings.groovy
scripts
error.gsp
plugin.xml
web-app
Escribir código groovy
Correcta indentación del código
Código comentado
.gitignore
Descriptor del plugin
Descriptor del plugin
Descriptor del plugin
application.properties
Config.groovy
BuildConfig.groovy
DataSource.groovy
Groovy
Varios

UrlMappings
scripts/_Install
scripts/_Uninstall
scripts/_Upgrade
grails-app/views/error.gsp
web-app/
¡Bien, me han aprobado el plugin!
Antes de publicar el plugin, empaquetarlo, abrir el .zip y
comprobar que todo es correcto.
$ grails package-plugin
Y ya por fin
$ grails plublish-plugin
¡Gracias!

Iván López Martín
@ilopmar
http://lopezivan.blogspot.com
lopez.ivan@gmail.com
https://github.com/lmivan

Más contenido relacionado

Destacado

Twitterin oesterreich
Twitterin oesterreichTwitterin oesterreich
Twitterin oesterreich
guestc36e85
 
Spss操作說明
Spss操作說明Spss操作說明
Spss操作說明
tracylai
 
Workshops Interim Management // Management Angels GmbH
Workshops Interim Management // Management Angels GmbHWorkshops Interim Management // Management Angels GmbH
Workshops Interim Management // Management Angels GmbH
managementangels
 
Plan de contingencia para instituciones educativas municipalidad de carabayll...
Plan de contingencia para instituciones educativas municipalidad de carabayll...Plan de contingencia para instituciones educativas municipalidad de carabayll...
Plan de contingencia para instituciones educativas municipalidad de carabayll...
Rosalin Rabines anticona
 

Destacado (20)

OSGi: Grundlagen und Konzepte
OSGi: Grundlagen und KonzepteOSGi: Grundlagen und Konzepte
OSGi: Grundlagen und Konzepte
 
Twitterin oesterreich
Twitterin oesterreichTwitterin oesterreich
Twitterin oesterreich
 
Consejos básicos para mejorar la depresión
Consejos básicos para mejorar la depresiónConsejos básicos para mejorar la depresión
Consejos básicos para mejorar la depresión
 
Rekordjahr fuer Mittelstandskonzern
Rekordjahr fuer MittelstandskonzernRekordjahr fuer Mittelstandskonzern
Rekordjahr fuer Mittelstandskonzern
 
Spss操作說明
Spss操作說明Spss操作說明
Spss操作說明
 
Workshops Interim Management // Management Angels GmbH
Workshops Interim Management // Management Angels GmbHWorkshops Interim Management // Management Angels GmbH
Workshops Interim Management // Management Angels GmbH
 
UTE Psicopedagogía Problemas Frecuentes del Desarrollo: Apego y Ansiedad _ no...
UTE Psicopedagogía Problemas Frecuentes del Desarrollo: Apego y Ansiedad _ no...UTE Psicopedagogía Problemas Frecuentes del Desarrollo: Apego y Ansiedad _ no...
UTE Psicopedagogía Problemas Frecuentes del Desarrollo: Apego y Ansiedad _ no...
 
EXPERIENCE: Social Media Analytics @ Bundeswehr
EXPERIENCE: Social Media Analytics @ BundeswehrEXPERIENCE: Social Media Analytics @ Bundeswehr
EXPERIENCE: Social Media Analytics @ Bundeswehr
 
Fotoworkshop - Bildkomposition
Fotoworkshop - BildkompositionFotoworkshop - Bildkomposition
Fotoworkshop - Bildkomposition
 
Excel diapositivas
Excel diapositivasExcel diapositivas
Excel diapositivas
 
Manual de estadistika
Manual de estadistikaManual de estadistika
Manual de estadistika
 
Koalas
KoalasKoalas
Koalas
 
Inxmail Professional meets Shopware
Inxmail Professional meets ShopwareInxmail Professional meets Shopware
Inxmail Professional meets Shopware
 
Plan de contingencia para instituciones educativas municipalidad de carabayll...
Plan de contingencia para instituciones educativas municipalidad de carabayll...Plan de contingencia para instituciones educativas municipalidad de carabayll...
Plan de contingencia para instituciones educativas municipalidad de carabayll...
 
Importancia de los dientes de
Importancia de los dientes deImportancia de los dientes de
Importancia de los dientes de
 
Historia del sena kevin cobo
Historia del sena  kevin coboHistoria del sena  kevin cobo
Historia del sena kevin cobo
 
Scratch
ScratchScratch
Scratch
 
Microsoft word
Microsoft wordMicrosoft word
Microsoft word
 
Catalogo de servicios
Catalogo de serviciosCatalogo de servicios
Catalogo de servicios
 
Trabajo del sistema solar lc dulce
Trabajo del sistema solar   lc dulceTrabajo del sistema solar   lc dulce
Trabajo del sistema solar lc dulce
 

Similar a Madrid GUG - Cómo hacer que te aprueben un plugin de grails en dos horas... y sin fork de Burt Beckwith

De presa a cazador
De presa a cazador De presa a cazador
De presa a cazador
campus party
 
Directorio betabeers
Directorio betabeersDirectorio betabeers
Directorio betabeers
betabeers
 

Similar a Madrid GUG - Cómo hacer que te aprueben un plugin de grails en dos horas... y sin fork de Burt Beckwith (20)

Greach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con GriffonGreach 2011 : Creando Plugins Con Griffon
Greach 2011 : Creando Plugins Con Griffon
 
Introducción a groovy
Introducción a groovyIntroducción a groovy
Introducción a groovy
 
Deja de ser el rival más débil con DevSecOps
Deja de ser el rival más débil con DevSecOpsDeja de ser el rival más débil con DevSecOps
Deja de ser el rival más débil con DevSecOps
 
Spain AI 2022 - ¡Oh, un modelo de ML, vamos a desplegarlo! - Machine Learning...
Spain AI 2022 - ¡Oh, un modelo de ML, vamos a desplegarlo! - Machine Learning...Spain AI 2022 - ¡Oh, un modelo de ML, vamos a desplegarlo! - Machine Learning...
Spain AI 2022 - ¡Oh, un modelo de ML, vamos a desplegarlo! - Machine Learning...
 
De presa a cazador Campus Party 2011
De presa a cazador Campus Party 2011De presa a cazador Campus Party 2011
De presa a cazador Campus Party 2011
 
De presa a cazador
De presa a cazador De presa a cazador
De presa a cazador
 
APIs REST: Django y Go
APIs REST: Django y GoAPIs REST: Django y Go
APIs REST: Django y Go
 
Cómo construir un Servidor Web y Bot de Memes para Slack
Cómo construir un Servidor Web y Bot de Memes para SlackCómo construir un Servidor Web y Bot de Memes para Slack
Cómo construir un Servidor Web y Bot de Memes para Slack
 
Plugins recomendados para WordPress y cómo crear uno
Plugins recomendados para WordPress y cómo crear unoPlugins recomendados para WordPress y cómo crear uno
Plugins recomendados para WordPress y cómo crear uno
 
101 Panel Tech Days - Spock: O por qué deberías utilizarlo para testear tu có...
101 Panel Tech Days - Spock: O por qué deberías utilizarlo para testear tu có...101 Panel Tech Days - Spock: O por qué deberías utilizarlo para testear tu có...
101 Panel Tech Days - Spock: O por qué deberías utilizarlo para testear tu có...
 
Aplicaciones Absurdamente Rápidas con Quarkus.io
Aplicaciones Absurdamente Rápidas con Quarkus.ioAplicaciones Absurdamente Rápidas con Quarkus.io
Aplicaciones Absurdamente Rápidas con Quarkus.io
 
Meetup Taller Desarrollo Salesforce con Visual Studio Code
Meetup Taller Desarrollo Salesforce con Visual Studio CodeMeetup Taller Desarrollo Salesforce con Visual Studio Code
Meetup Taller Desarrollo Salesforce con Visual Studio Code
 
Trabajando con gdal, usando fwtools
Trabajando con gdal, usando fwtoolsTrabajando con gdal, usando fwtools
Trabajando con gdal, usando fwtools
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plone
 
Crear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde CeroCrear Plugin de WordPress desde Cero
Crear Plugin de WordPress desde Cero
 
Directorio betabeers
Directorio betabeersDirectorio betabeers
Directorio betabeers
 
Herramientas web
Herramientas webHerramientas web
Herramientas web
 
Solucion reto mr robot
Solucion reto mr robotSolucion reto mr robot
Solucion reto mr robot
 
Eleva tu capacidad con Groovy
Eleva tu capacidad con GroovyEleva tu capacidad con Groovy
Eleva tu capacidad con Groovy
 
Latch en Linux (Ubuntu): El cerrojo digital
Latch en Linux (Ubuntu): El cerrojo digitalLatch en Linux (Ubuntu): El cerrojo digital
Latch en Linux (Ubuntu): El cerrojo digital
 

Más de Iván López Martín

Más de Iván López Martín (20)

SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
Voxxed Days CERN 2024 - Spring Boot <3 Testcontainers.pdf
Voxxed Days CERN 2024 - Spring Boot <3 Testcontainers.pdfVoxxed Days CERN 2024 - Spring Boot <3 Testcontainers.pdf
Voxxed Days CERN 2024 - Spring Boot <3 Testcontainers.pdf
 
VMware - Testcontainers y Spring Boot
VMware - Testcontainers y Spring BootVMware - Testcontainers y Spring Boot
VMware - Testcontainers y Spring Boot
 
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud GatewaySpring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
Spring IO 2023 - Dynamic OpenAPIs with Spring Cloud Gateway
 
Codemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring BootCodemotion Madrid 2023 - Testcontainers y Spring Boot
Codemotion Madrid 2023 - Testcontainers y Spring Boot
 
CommitConf 2023 - Spring Framework 6 y Spring Boot 3
CommitConf 2023 - Spring Framework 6 y Spring Boot 3CommitConf 2023 - Spring Framework 6 y Spring Boot 3
CommitConf 2023 - Spring Framework 6 y Spring Boot 3
 
Construyendo un API REST con Spring Boot y GraalVM
Construyendo un API REST con Spring Boot y GraalVMConstruyendo un API REST con Spring Boot y GraalVM
Construyendo un API REST con Spring Boot y GraalVM
 
jLove 2020 - Micronaut and graalvm: The power of AoT
jLove 2020 - Micronaut and graalvm: The power of AoTjLove 2020 - Micronaut and graalvm: The power of AoT
jLove 2020 - Micronaut and graalvm: The power of AoT
 
Codemotion Madrid 2020 - Serverless con Micronaut
Codemotion Madrid 2020 - Serverless con MicronautCodemotion Madrid 2020 - Serverless con Micronaut
Codemotion Madrid 2020 - Serverless con Micronaut
 
JConf Perú 2020 - ¡Micronaut en acción!
JConf Perú 2020 - ¡Micronaut en acción!JConf Perú 2020 - ¡Micronaut en acción!
JConf Perú 2020 - ¡Micronaut en acción!
 
JConf Perú 2020 - Micronaut + GraalVM = <3
JConf Perú 2020 - Micronaut + GraalVM = <3JConf Perú 2020 - Micronaut + GraalVM = <3
JConf Perú 2020 - Micronaut + GraalVM = <3
 
JConf México 2020 - Micronaut + GraalVM = <3
JConf México 2020 - Micronaut + GraalVM = <3JConf México 2020 - Micronaut + GraalVM = <3
JConf México 2020 - Micronaut + GraalVM = <3
 
Developing Micronaut Applications With IntelliJ IDEA
Developing Micronaut Applications With IntelliJ IDEADeveloping Micronaut Applications With IntelliJ IDEA
Developing Micronaut Applications With IntelliJ IDEA
 
CommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfectaCommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
CommitConf 2019 - Micronaut y GraalVm: La combinación perfecta
 
Codemotion Madrid 2019 - ¡GraalVM y Micronaut: compañeros perfectos!
Codemotion Madrid 2019 - ¡GraalVM y Micronaut: compañeros perfectos!Codemotion Madrid 2019 - ¡GraalVM y Micronaut: compañeros perfectos!
Codemotion Madrid 2019 - ¡GraalVM y Micronaut: compañeros perfectos!
 
Greach 2019 - Creating Micronaut Configurations
Greach 2019 - Creating Micronaut ConfigurationsGreach 2019 - Creating Micronaut Configurations
Greach 2019 - Creating Micronaut Configurations
 
VoxxedDays Bucharest 2019 - Alexa, nice to meet you
VoxxedDays Bucharest 2019 - Alexa, nice to meet youVoxxedDays Bucharest 2019 - Alexa, nice to meet you
VoxxedDays Bucharest 2019 - Alexa, nice to meet you
 
JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!JavaDay Lviv 2019 - Micronaut in action!
JavaDay Lviv 2019 - Micronaut in action!
 
CrossDvlup Madrid 2019 - Alexa, encantado de conocerte
CrossDvlup Madrid 2019 - Alexa, encantado de conocerteCrossDvlup Madrid 2019 - Alexa, encantado de conocerte
CrossDvlup Madrid 2019 - Alexa, encantado de conocerte
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Último (15)

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

Madrid GUG - Cómo hacer que te aprueben un plugin de grails en dos horas... y sin fork de Burt Beckwith