Add git tags to `pihole checkout` command

Currently there's only branch name selection available, but no tags. Say, I want to downgrade to some version number, tag selection would be convenient.

Which Pi-hole component do you want to downgrade?

Any of them: core, ftl, web.

checkout function in piholeCheckout.sh has this:
ftlbranches=( $(git ls-remote https://github.com/pi-hole/ftl | grep 'heads' | sed 's/refs\/heads\///;s/ //g' | awk '{print $2}') )

get_available_branches function in basic_install.sh has this:
output=$( { git ls-remote --heads --quiet | cut -d'/' -f3- -; } 2>&1 )

I propose to add something like
git ls-remote https://github.com/pi-hole/ftl | grep 'tags' | sed 's/refs\/tags\///;s/ //g' | awk '{print $2}'|sort -ur

I've been thinking about keeping/creating branches from tags so we don't need to modify the installer.

This is an invitation to disaster. Checkout is meant to pull forward looking code, code that is for testing. Going backwards with any of the components will break and leave you in a very damaged state.

Thanks for suggestion. Maybe then implement just a rollback function to revert latter faulty update? For example, move latest working component with a database to a backup location (or .tar.gz), and in case of disaster you then can revert everything back.
(for now I have my issue resolved)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.