awx-json-bump-version

index | about | archive | charlas | docs | links

dot | git | img | plt | tty | uml

awx-json-bump-version.png

A diario para el deploy de playbooks de Ansible 1 necesito incrementar el número de versión de projects y/o job_templates de AWX 2 y para realizar esta tarea escribí un script que por defecto incrementa el último dígito, es decir PATCH en Semantic Versioning 3 y lo hace copiando un nuevo archivo con el nuevo release en el nombre del archivo JSON y también dentro del archivo en el atributo name, por ejemplo:


# awx-json-bump-version job_template/ipa_sss_log_v0.1.0.json
BUMP VERSION FROM job_template/ipa_sss_log_v0.1.0.json TO job_template/ipa_sss_log_v0.1.1.json

    "name": "ipa_sss_log_v0.1.0",     |	    "name": "ipa_sss_log_v0.1.1",

Es posible especificar que incremente MINOR:


# VERSION=MINOR awx-json-bump-version job_template/ipa_sss_log_v0.1.0.json
BUMP VERSION FROM job_template/ipa_sss_log_v0.1.0.json TO job_template/ipa_sss_log_v0.2.0.json

    "name": "ipa_sss_log_v0.1.0",     |	    "name": "ipa_sss_log_v0.2.0",

También se puede especificar MAJOR:


# VERSION=MAJOR awx-json-bump-version job_template/ipa_sss_log_v0.1.0.json
BUMP VERSION FROM job_template/ipa_sss_log_v0.1.0.json TO job_template/ipa_sss_log_v1.0.0.json

    "name": "ipa_sss_log_v0.1.0",     |	    "name": "ipa_sss_log_v1.0.0",

Y si se pretende ser explícito se puede especificar PATCH:


# VERSION=PATCH awx-json-bump-version job_template/ipa_sss_log_v0.1.0.json
BUMP VERSION FROM job_template/ipa_sss_log_v0.1.0.json TO job_template/ipa_sss_log_v0.1.1.json

    "name": "ipa_sss_log_v0.1.0",     |	    "name": "ipa_sss_log_v0.1.1",

No es una gran ciencia, pero contar con el script awx-json-bump-version 4 que simplifica la tarea ayuda y agiliza la tarea, e incluso a futuro permitirá automatización de generación de nuevos releases.

Este script junto a muchas otras utilidades es parte del repositorio Ansible Tools 5.

ChangeLog

Notas al pie de página: