¿Vale la pena mi script de lanzamiento?

Tengo muchos proyectos pequeños (tanto en casa como en el trabajo). Estoy escribiendo un script para automatizar lanzamientos. Lo hago en mi time libre para aprender Python.

En realidad, hace un trabajo bastante fácil:

Para cada proyecto dado:

  1. Exportar una carpeta de repository svn
  2. Crea un file (tar.gz, zip, etc.) con él
  3. Cargarlo en un server ftp público

Puede manejar troncales y tags (es decir, exportar el directory actual O exportar todas las carpetas en un directory determinado). Es como soporte de múltiples repositorys.

Sin embargo, no soy un progtwigdor experimentado y dado que funciona aproximadamente, estoy haciendo algunas preguntas serias:

  • ¿Es la mejor manera de administrar lanzamientos (o tags, como se llame)?
  • ¿Podría este proyecto ser útil para cualquier persona que no sea yo?
  • ¿Vale la pena este proyecto o debo volver a escribir algunas líneas de shell en un crontab para hacer el mismo trabajo?

Gracias.

Personalmente, creo que es una gran manera de usar Python (o cualquier lenguaje de progtwigción, para el caso): lo estás usando para un propósito pragmático que tiene un beneficio inmediato, y ganas valor directamente desde la primera línea de código. Siempre vale la pena ver cómo un idioma puede resolver sus problemas prácticos cotidianos, en lugar de los ejemplos de juguetes teóricos que suelen tener los tutoriales.

¿Es la mejor manera de administrar lanzamientos (o tags, como se llame)?

Las versiones se suelen realizar de forma manual, en el sentido de que un ser humano toma la decisión sobre cuándo lanzarla. Pero el process de lanzamiento real definitivamente es algo que debería automatizarse: el humano no debería hacer mucho más que presionar un button para que las cosas se muevan. Esto será excelente si te gradúas en algún momento en un sistema de continuous integration.

Dicho esto, hay un par de administradores de compilation existentes que ya automatizan el process de hacer lanzamientos, y ese es probablemente el lugar al que alguien iría primero si tuviera que hacer esto por sí mismo. Pero quién sabe, tal vez la gente prefiera su versión por su simplicidad y no abotagamiento.

¿Podría este proyecto ser útil para cualquier persona que no sea yo?

¡Seguro! Incluso si no lo crees, ponlo en Github (o donde sea) de todos modos, y puede ser parte de tu cartera de software.