@@ -42,35 +42,31 @@ install_aws_cli_binary() {
42
42
install_aws_cli_pip () {
43
43
echo " Installing AWS CLI v1 via pip (for IBM architectures)..."
44
44
45
- # Ensure pip is available
46
- if ! command -v pip3 & > /dev/null && ! command -v pip & > /dev/null; then
47
- echo " Error: pip is not available. Please install Python and pip first." >&2
45
+ if [[ ! -d " ${PROJECT_DIR} /venv" ]]; then
46
+ echo " Error: Python venv not found at ${PROJECT_DIR} /venv. Please run recreate_python_venv.sh first." >&2
48
47
return 1
49
48
fi
50
49
51
- # Check if AWS CLI exists and works before installing
50
+ # Activate the venv
51
+ source " ${PROJECT_DIR} /venv/bin/activate"
52
+
53
+ # Check if AWS CLI exists and works in the venv
52
54
if command -v aws & > /dev/null; then
53
55
if aws --version > /dev/null 2>&1 ; then
54
- echo " AWS CLI is already installed and working"
56
+ echo " AWS CLI is already installed and working in venv "
55
57
return 0
56
58
else
57
- echo " AWS CLI exists but not functional (likely bad Python shebang) , reinstalling..."
58
- pip3 uninstall -y awscli || true
59
+ echo " AWS CLI exists but not functional, reinstalling in venv ..."
60
+ pip uninstall -y awscli || true
59
61
fi
60
62
fi
61
63
62
- echo " Installing AWS CLI using pip3..."
63
- pip3 install --user awscli
64
-
65
- # Add ~/.local/bin to PATH if not already there (where pip --user installs)
66
- if [[ " :${PATH} :" != * " :${HOME} /.local/bin:" * ]]; then
67
- export PATH=" ${HOME} /.local/bin:${PATH} "
68
- echo " Added ~/.local/bin to PATH"
69
- fi
64
+ echo " Installing AWS CLI into venv using pip..."
65
+ pip install awscli
70
66
71
67
# Verify installation
72
68
if command -v aws & > /dev/null; then
73
- echo " AWS CLI v1 installed successfully"
69
+ echo " AWS CLI v1 installed successfully in venv "
74
70
else
75
71
echo " Error: AWS CLI v1 installation failed" >&2
76
72
return 1
0 commit comments