On Mon, May 25, 2020 at 03:25:40PM +0200, Solene Rapenne wrote:
> Hi,
>
> I don't know if this will be accepted but I propose to add a -u [url]
> parameter to use older snapshots from an archive server for example.
>
> I wanted to add an optional parameter to -s at first but in case of
> sysupgrade -s [installurl] the install url would have been mistaken by
> this.
>
> If you specify a -u url and installurl at the same time, -u url
> superseed installurl.
>
> This would allow easier bisecting using older snapshots.
>
> Index: sysupgrade.8
> ===================================================================
> RCS file: /cvs/src/usr.sbin/sysupgrade/sysupgrade.8,v
> retrieving revision 1.10
> diff -u -p -r1.10 sysupgrade.8
> --- sysupgrade.8 3 Oct 2019 12:43:58 -0000 1.10
> +++ sysupgrade.8 25 May 2020 13:23:06 -0000
> @@ -24,6 +24,7 @@
> .Nm
> .Op Fl fkn
> .Op Fl r | s
> +.Op Fl u Pa url
> .Op Ar installurl
> .Sh DESCRIPTION
> .Nm
> @@ -66,6 +67,13 @@ This is the default if the system is cur
> .It Fl s
> Upgrade to a snapshot.
> This is the default if the system is currently running a snapshot.
> +.It Fl u Pa url
> +Fetch and verify the files downloaded from
> +.Pa url .
> +This is superseeding
> +.Op Pa installurl ,
> +its usage is intended for installing older snapshots available under url not
> following
> +the usual installurl format.
hi. i would rewrite this a little:
It is intended for installing older snapshots available which do not
follow
the usual installurl format;
it takes precedence over
.Pa installurl .
sth like that
i don;t know whether you want to try and make it like -u url | installurl
jmc
> .El
> .Sh FILES
> .Bl -tag -width "/auto_upgrade.conf" -compact
> Index: sysupgrade.sh
> ===================================================================
> RCS file: /cvs/src/usr.sbin/sysupgrade/sysupgrade.sh,v
> retrieving revision 1.37
> diff -u -p -r1.37 sysupgrade.sh
> --- sysupgrade.sh 26 Jan 2020 22:08:36 -0000 1.37
> +++ sysupgrade.sh 25 May 2020 13:23:06 -0000
> @@ -34,7 +34,7 @@ ug_err()
>
> usage()
> {
> - ug_err "usage: ${0##*/} [-fkn] [-r | -s] [installurl]"
> + ug_err "usage: ${0##*/} [-fkn] [-r | -s] [-u url] [installurl]"
> }
>
> unpriv()
> @@ -79,13 +79,14 @@ FORCE=false
> KEEP=false
> REBOOT=true
>
> -while getopts fknrs arg; do
> +while getopts fknrsu: arg; do
> case ${arg} in
> f) FORCE=true;;
> k) KEEP=true;;
> n) REBOOT=false;;
> r) RELEASE=true;;
> s) SNAP=true;;
> + u) SNAPURL=${OPTARG};;
> *) usage;;
> esac
> done
> @@ -121,7 +122,11 @@ else
> fi
>
> if $SNAP; then
> - URL=${MIRROR}/snapshots/${ARCH}/
> + if [[ -n "$SNAPURL" ]]; then
> + URL=$SNAPURL
> + else
> + URL=${MIRROR}/snapshots/${ARCH}/
> + fi
> else
> URL=${MIRROR}/${NEXT_VERSION}/${ARCH}/
> fi
>