First Version of shred library
commit
f216cdb880
|
@ -0,0 +1,8 @@
|
|||
# Changelog
|
||||
|
||||
## [0.1.0] - 2025-03-17
|
||||
### Initial Release
|
||||
- Primera versión de la librería compartida
|
||||
- Parseo del changelog de debian basandonos en el formato de https://keepachangelog.com/en/1.1.0/
|
||||
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
def call(String repoDir) {
|
||||
script {
|
||||
sh """
|
||||
#!/bin/bash
|
||||
|
||||
INPUT_FILE="${repoDir}/changelog.md"
|
||||
OUTPUT_FILE="${repoDir}/debian/changelog"
|
||||
PACKAGE_NAME="oggui"
|
||||
MAINTAINER_NAME="Lucas Lara"
|
||||
MAINTAINER_EMAIL="tu@email.com"
|
||||
DISTRIBUTION="unstable"
|
||||
URGENCY="medium"
|
||||
|
||||
# Función para formatear la fecha en Debian
|
||||
format_date() {
|
||||
date -d "\$1" "+%a, %d %b %Y %H:%M:%S %z" 2>/dev/null || date -j -f "%Y-%m-%d" "\$1" "+%a, %d %b %Y %H:%M:%S %z"
|
||||
}
|
||||
|
||||
echo "" > "\$OUTPUT_FILE"
|
||||
|
||||
while IFS= read -r line; do
|
||||
if [[ \$line =~ ^##\\ \\[(.*)\\]\\ -\\ ([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})\$ ]]; then
|
||||
VERSION="\${BASH_REMATCH[1]}"
|
||||
DATE="\${BASH_REMATCH[2]}-\${BASH_REMATCH[3]}-\${BASH_REMATCH[4]}"
|
||||
FORMATTED_DATE=\$(format_date "\$DATE")
|
||||
|
||||
echo -e "\$PACKAGE_NAME (\$VERSION) \$DISTRIBUTION; urgency=\$URGENCY\\n" >> "\$OUTPUT_FILE"
|
||||
elif [[ \$line =~ ^###\\ (.*) ]]; then
|
||||
echo -e " * \${BASH_REMATCH[1]}" >> "\$OUTPUT_FILE"
|
||||
elif [[ \$line =~ ^-\\ (.*) ]]; then
|
||||
echo -e " - \${BASH_REMATCH[1]}" >> "\$OUTPUT_FILE"
|
||||
elif [[ -z \$line ]]; then
|
||||
echo "" >> "\$OUTPUT_FILE"
|
||||
fi
|
||||
done < "\$INPUT_FILE"
|
||||
|
||||
echo -e " -- \$MAINTAINER_NAME <\$MAINTAINER_EMAIL> \$(date -R)\\n" >> "\$OUTPUT_FILE"
|
||||
|
||||
echo "Changelog generado en formato Debian en \$OUTPUT_FILE."
|
||||
"""
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue