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 has this:
ftlbranches=( $(git ls-remote | grep 'heads' | sed 's/refs\/heads\///;s/ //g' | awk '{print $2}') )

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

I propose to add something like
git ls-remote | 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.