22set -e
33
44REPO=" scheenk/aws-elastic-beanstalk-cli"
5- INSTALL_DIR=" /usr/local/bin"
5+ INSTALL_DIR=" /usr/local/lib/eb-cli"
6+ BIN_DIR=" /usr/local/bin"
67
78OS=$( uname -s | tr ' [:upper:]' ' [:lower:]' )
89ARCH=$( uname -m)
@@ -12,11 +13,11 @@ case "$ARCH" in aarch64|arm64) ARCH="arm64" ;; x86_64) ARCH="x86_64" ;; esac
1213case " $OS " in darwin) OS=" macos" ;; esac
1314
1415VERSION=${1:- $(curl -sSf " https://api.github.com/repos/${REPO} /releases/latest" | grep ' "tag_name"' | cut -d' "' -f4)}
15- BINARY=" eb-${OS} -${ARCH} "
16+ BINARY=" eb-${OS} -${ARCH} .tar.gz "
1617BASE_URL=" https://github.com/${REPO} /releases/download/${VERSION} "
1718
1819echo " Installing EB CLI ${VERSION} for ${OS} /${ARCH} ..."
19- curl -sSfL -o /tmp/eb " $BASE_URL /$BINARY "
20+ curl -sSfL -o /tmp/eb-cli.tar.gz " $BASE_URL /$BINARY "
2021curl -sSfL -o /tmp/checksums.txt " $BASE_URL /checksums.txt"
2122
2223# Verify checksum
@@ -25,21 +26,23 @@ if [ -z "$EXPECTED" ]; then
2526 echo " Warning: no checksum found for $BINARY , skipping verification"
2627else
2728 if command -v sha256sum & > /dev/null; then
28- ACTUAL=$( sha256sum /tmp/eb | awk ' {print $1}' )
29+ ACTUAL=$( sha256sum /tmp/eb-cli.tar.gz | awk ' {print $1}' )
2930 else
30- ACTUAL=$( shasum -a 256 /tmp/eb | awk ' {print $1}' )
31+ ACTUAL=$( shasum -a 256 /tmp/eb-cli.tar.gz | awk ' {print $1}' )
3132 fi
3233 if [ " $EXPECTED " != " $ACTUAL " ]; then
3334 echo " Checksum verification failed!"
3435 echo " Expected: $EXPECTED "
3536 echo " Actual: $ACTUAL "
36- rm -f /tmp/eb /tmp/checksums.txt
37+ rm -f /tmp/eb-cli.tar.gz /tmp/checksums.txt
3738 exit 1
3839 fi
3940 echo " Checksum verified."
4041fi
4142
42- rm -f /tmp/checksums.txt
43- chmod +x /tmp/eb
44- sudo mv /tmp/eb " ${INSTALL_DIR} /eb"
45- echo " EB CLI ${VERSION} installed to ${INSTALL_DIR} /eb"
43+ sudo rm -rf " $INSTALL_DIR "
44+ sudo mkdir -p " $INSTALL_DIR "
45+ sudo tar xzf /tmp/eb-cli.tar.gz -C " $INSTALL_DIR "
46+ sudo ln -sf " $INSTALL_DIR /eb/eb" " $BIN_DIR /eb"
47+ rm -f /tmp/eb-cli.tar.gz /tmp/checksums.txt
48+ echo " EB CLI ${VERSION} installed to ${BIN_DIR} /eb"
0 commit comments