¿Hay soporte para cargar tareas de rake definidas en plugins?

Necesito poder ejecutar tareas personalizadas en un foro de Discourse. ¿Existe alguna forma de cargar las tareas rake definidas en un plugin para que puedan usarse en producción?

Creo que esto debería funcionar. Solo tienes que colocarlos en el mismo directorio del plugin donde residen en el núcleo.

He hecho esto en el pasado creando una tarea de Rake que se ejecuta después de otra, pero no he creado una tarea independiente.

Sí, esto funciona. Al principio no parecía funcionar para mí, por eso hice la pregunta, pero lo he intentado de nuevo y ha funcionado a la primera.

Añadí mi tarea de rake en lib/tasks dentro de mi plugin. Pensé en confirmar que esto funciona para cualquier otra persona que se encuentre con esto.

¿Alguien ha experimentado que las tareas de lib/tasks se ejecuten dos veces? La nuestra parece ejecutarse dos veces al usar rake subscriptions:procourse_convert.

https://github.com/ryan-hyer/discourse-subscriptions/blob/master/lib/tasks/procourse_memberships.rake

Hola @kimardenmiller, ¿lograste averiguar por qué tu tarea de rake se ejecuta dos veces?

Creo que podría haber tenido algo que ver con declarar el mismo método en dos lugares, lo que, según creo, hizo que se ejecutara dos veces. No lo he verificado, pero revisa eso.

EDITAR: Creo que he descubierto cómo sucede esto.

No sigue realmente la convención, o quizás demasiado.

El problema es si haces referencia al archivo rake en plugin.rb, parece que se ejecuta dos veces, pero la tarea rake se incluye incluso si no la haces referencia, por lo que no es necesario cargarla durante la inicialización.

@frank.manuel

AFAIK no hay ninguna lógica específica de discourse aquí. Mi suposición sería que los archivos de tareas se cargan automáticamente si definiste un ::Rails::Engine para tu plugin?