Compare commits

...

3 Commits

Author SHA1 Message Date
7d99416cc9 update pulls from "latest" now 2022-12-25 23:11:35 +00:00
f60bf9e1e6 update.bat.in debugged and working 2022-12-25 18:13:06 +00:00
fce7b5466a installer tweaks in preparation for v2.2.5
- pin numpy to 1.23.* to avoid requirements conflict with numba
- update.sh and update.bat now accept a tag or branch string, not a URL
- update scripts download latest requirements-base before updating.
2022-12-25 17:36:59 +00:00
3 changed files with 58 additions and 33 deletions

View File

@ -14,7 +14,7 @@ huggingface-hub
imageio imageio
imageio-ffmpeg imageio-ffmpeg
kornia kornia
numpy numpy==1.23.*
omegaconf omegaconf
opencv-python opencv-python
picklescan picklescan

View File

@ -3,48 +3,66 @@ setlocal EnableExtensions EnableDelayedExpansion
PUSHD "%~dp0" PUSHD "%~dp0"
set INVOKE_AI_SRC=https://github.com/invoke-ai/InvokeAI/archive/main.zip set INVOKE_AI_VERSION=latest
set arg=%1 set arg=%1
if "%arg%" neq "" ( if "%arg%" neq "" (
if "%arg:~0,4%" neq "http" ( if "%arg:~0,2%" equ "/?" (
echo Usage: update.bat ^<release URL^>.zip echo Usage: update.bat ^<release name or branch^>
echo Updates InvokeAI to use the indicated version of the code base. echo Updates InvokeAI to use the indicated version of the code base.
echo Find the zip file for the release you want, and pass it as the argument. echo Find the version or branch for the release you want, and pass it as the argument.
echo For example update.sh https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v2.2.4.zip echo For example '.\update.bat v2.2.5' for release 2.2.5.
echo. echo '.\update.bat main' for the latest development version
echo If no argument provided then will install the most recent development version, equivalent to echo.
echo update.bat https://github.com/invoke-ai/InvokeAI/archive/main.zip echo If no argument provided then will install the most recent release, equivalent to
exit /b echo '.\update.bat latest'
exit /b
) else ( ) else (
set INVOKE_AI_SRC=%arg% set INVOKE_AI_VERSION=%arg%
) )
) )
set INVOKE_AI_SRC="https://github.com/invoke-ai/InvokeAI/archive/!INVOKE_AI_VERSION!.zip"
call .venv\Scripts\activate.bat set INVOKE_AI_DEP=https://raw.githubusercontent.com/invoke-ai/InvokeAI/!INVOKE_AI_VERSION!/environments-and-requirements/requirements-base.txt
call curl -I "%INVOKE_AI_DEP%" -fs >.tmp.out
if %errorlevel% neq 0 (
echo '!INVOKE_AI_VERSION!' is not a known branch name or tag. Please check the version and try again.
echo "Press any key to continue"
pause
exit /b
)
del .tmp.out
echo This script will update InvokeAI and all its dependencies to !INVOKE_AI_SRC!. echo This script will update InvokeAI and all its dependencies to !INVOKE_AI_SRC!.
echo If you do not want to do this, press control-C now! echo If you do not want to do this, press control-C now!
pause pause
call curl -L "%INVOKE_AI_DEP%" > environments-and-requirements/requirements-base.txt
call .venv\Scripts\activate.bat
call .venv\Scripts\python -mpip install -r requirements.txt call .venv\Scripts\python -mpip install -r requirements.txt
if %errorlevel% neq 0 ( if %errorlevel% neq 0 (
echo Installation of requirements failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions. echo Installation of requirements failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions.
pause
exit /b exit /b
) )
call .venv\Scripts\python -mpip install !INVOKE_AI_SRC! call .venv\Scripts\python -mpip install !INVOKE_AI_SRC!
if %errorlevel% neq 0 ( if %errorlevel% neq 0 (
echo Installation of InvokeAI failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions. echo Installation of InvokeAI failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions.
pause
exit /b exit /b
) )
call .venv\Scripts\python .venv\Scripts\configure_invokeai.py --root=. @rem call .venv\Scripts\python .venv\Scripts\configure_invokeai.py --root=.
if %errorlevel% neq 0 ( @rem if %errorlevel% neq 0 (
echo Configuration InvokeAI failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions. @rem echo Configuration InvokeAI failed. See https://invoke-ai.github.io/InvokeAI/installation/INSTALL_AUTOMATED/#troubleshooting for suggestions.
exit /b @rem pause
) @rem exit /b
@rem )
echo InvokeAI has been updated to '%INVOKE_AI_VERSION%'
echo "Press any key to continue" echo "Press any key to continue"
pause pause

View File

@ -2,18 +2,22 @@
set -eu set -eu
if [ $# -ge 1 ] && [ "${1:0:4}" != "http" ]; then if [ $# -ge 1 ] && [ "${1:0:2}" == "-h" ]; then
echo "Usage: update.sh <release URL>.zip" echo "Usage: update.sh <release>"
echo "Updates InvokeAI to use the indicated version of the code base." echo "Updates InvokeAI to use the indicated version of the code base."
echo "Find the zip file for the release you want, and pass it as the argument." echo "Find the version or branch for the release you want, and pass it as the argument."
echo "For example update.sh https://github.com/invoke-ai/InvokeAI/archive/refs/tags/v2.2.3.zip" echo "For example: update.sh v2.2.5 for release 2.2.5."
echo " update.sh main for the current development version."
echo "" echo ""
echo "If no argument provided then will install the most recent development version, equivalent to" echo "If no argument provided then will install the version tagged with 'latest', equivalent to"
echo "update.sh https://github.com/invoke-ai/InvokeAI/archive/main.zip" echo "update.sh latest"
exit -1 exit -1
fi fi
INVOKE_AI_VERSION=${1:-latest}
INVOKE_AI_SRC=${1:-https://github.com/invoke-ai/InvokeAI/archive/main.zip} INVOKE_AI_SRC="https://github.com/invoke-ai/InvokeAI/archive/$INVOKE_AI_VERSION.zip"
INVOKE_AI_DEP=https://raw.githubusercontent.com/invoke-ai/InvokeAI/$INVOKE_AI_VERSION/environments-and-requirements/requirements-base.txt
# ensure we're in the correct folder in case user's CWD is somewhere else # ensure we're in the correct folder in case user's CWD is somewhere else
scriptdir=$(dirname "$0") scriptdir=$(dirname "$0")
@ -30,10 +34,17 @@ function _err_exit {
fi fi
} }
echo This script will update InvokeAI and all its dependencies from $INVOKE_AI_SRC. if ! curl -I "$INVOKE_AI_DEP" -fs >/dev/null; then
echo \'$INVOKE_AI_VERSION\' is not a known branch name or tag. Please check the version and try again.
exit
fi
echo This script will update InvokeAI and all its dependencies to version \'$INVOKE_AI_VERSION\'.
echo If you do not want to do this, press control-C now! echo If you do not want to do this, press control-C now!
read -p "Press any key to continue, or CTRL-C to exit..." read -p "Press any key to continue, or CTRL-C to exit..."
curl -L "$INVOKE_AI_DEP" > environments-and-requirements/requirements-base.txt
. .venv/bin/activate . .venv/bin/activate
./.venv/bin/python -mpip install -r requirements.txt ./.venv/bin/python -mpip install -r requirements.txt
@ -42,11 +53,7 @@ _err_exit $? "The pip program failed to install InvokeAI's requirements."
./.venv/bin/python -mpip install $INVOKE_AI_SRC ./.venv/bin/python -mpip install $INVOKE_AI_SRC
_err_exit $? "The pip program failed to install InvokeAI." _err_exit $? "The pip program failed to install InvokeAI."
./.venv/bin/python .venv/bin/configure_invokeai.py --root . echo InvokeAI updated to \'$INVOKE_AI_VERSION\'
_err_exit $? "The configure script failed to run successfully."
# ./.venv/bin/python .venv/bin/configure_invokeai.py --root .
# _err_exit $? "The configure script failed to run successfully."