Optimize workflow setup and cleanup for lower resource use
All checks were successful
Deploy Hello Lambda CFT / deploy (push) Successful in 17s

This commit is contained in:
Vijaya Krishna Manne 2026-05-29 14:23:38 -04:00
parent 2ec2e857f2
commit ba42de1500

View file

@ -14,6 +14,7 @@ jobs:
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }}
AWS_DEFAULT_REGION: us-east-1
LOWER: ${{ secrets.LOWER }}
PIP_NO_CACHE_DIR: "1"
steps:
- name: Prepare source
@ -32,6 +33,14 @@ jobs:
- name: Ensure AWS CLI
run: |
set -e
# Fast path: aws may already be installed in user bin from a prior run.
if [ -x "$HOME/.local/bin/aws" ]; then
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
"$HOME/.local/bin/aws" --version
exit 0
fi
if command -v aws >/dev/null 2>&1; then
aws --version
exit 0
@ -40,6 +49,7 @@ jobs:
# Try local AWS CLI v2 install (no root required).
if command -v curl >/dev/null 2>&1 && command -v unzip >/dev/null 2>&1; then
TMP_DIR="$(mktemp -d)"
trap 'rm -rf "${TMP_DIR}"' EXIT
curl -fsSL "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "${TMP_DIR}/awscliv2.zip"
unzip -q "${TMP_DIR}/awscliv2.zip" -d "${TMP_DIR}"
"${TMP_DIR}/aws/install" -i "$HOME/.aws-cli" -b "$HOME/.local/bin" || true
@ -52,7 +62,7 @@ jobs:
# Fallback to pip user install.
if command -v python3 >/dev/null 2>&1; then
python3 -m pip install --user --upgrade awscli
python3 -m pip install --user --upgrade --no-cache-dir awscli
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
"$HOME/.local/bin/aws" --version
exit 0
@ -128,3 +138,9 @@ jobs:
--stack-name hello-lambda-stack \
--template-file "${SRC_DIR}/infra/hello-lambda.yml" \
--capabilities CAPABILITY_NAMED_IAM
- name: Cleanup workspace artifacts
if: always()
run: |
rm -rf _src
rm -rf "$HOME/.cache/pip" || true