Optimize workflow setup and cleanup for lower resource use
All checks were successful
Deploy Hello Lambda CFT / deploy (push) Successful in 17s
All checks were successful
Deploy Hello Lambda CFT / deploy (push) Successful in 17s
This commit is contained in:
parent
2ec2e857f2
commit
ba42de1500
1 changed files with 17 additions and 1 deletions
|
|
@ -14,6 +14,7 @@ jobs:
|
||||||
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }}
|
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }}
|
||||||
AWS_DEFAULT_REGION: us-east-1
|
AWS_DEFAULT_REGION: us-east-1
|
||||||
LOWER: ${{ secrets.LOWER }}
|
LOWER: ${{ secrets.LOWER }}
|
||||||
|
PIP_NO_CACHE_DIR: "1"
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Prepare source
|
- name: Prepare source
|
||||||
|
|
@ -32,6 +33,14 @@ jobs:
|
||||||
- name: Ensure AWS CLI
|
- name: Ensure AWS CLI
|
||||||
run: |
|
run: |
|
||||||
set -e
|
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
|
if command -v aws >/dev/null 2>&1; then
|
||||||
aws --version
|
aws --version
|
||||||
exit 0
|
exit 0
|
||||||
|
|
@ -40,6 +49,7 @@ jobs:
|
||||||
# Try local AWS CLI v2 install (no root required).
|
# 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
|
if command -v curl >/dev/null 2>&1 && command -v unzip >/dev/null 2>&1; then
|
||||||
TMP_DIR="$(mktemp -d)"
|
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"
|
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}"
|
unzip -q "${TMP_DIR}/awscliv2.zip" -d "${TMP_DIR}"
|
||||||
"${TMP_DIR}/aws/install" -i "$HOME/.aws-cli" -b "$HOME/.local/bin" || true
|
"${TMP_DIR}/aws/install" -i "$HOME/.aws-cli" -b "$HOME/.local/bin" || true
|
||||||
|
|
@ -52,7 +62,7 @@ jobs:
|
||||||
|
|
||||||
# Fallback to pip user install.
|
# Fallback to pip user install.
|
||||||
if command -v python3 >/dev/null 2>&1; then
|
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"
|
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
|
||||||
"$HOME/.local/bin/aws" --version
|
"$HOME/.local/bin/aws" --version
|
||||||
exit 0
|
exit 0
|
||||||
|
|
@ -128,3 +138,9 @@ jobs:
|
||||||
--stack-name hello-lambda-stack \
|
--stack-name hello-lambda-stack \
|
||||||
--template-file "${SRC_DIR}/infra/hello-lambda.yml" \
|
--template-file "${SRC_DIR}/infra/hello-lambda.yml" \
|
||||||
--capabilities CAPABILITY_NAMED_IAM
|
--capabilities CAPABILITY_NAMED_IAM
|
||||||
|
|
||||||
|
- name: Cleanup workspace artifacts
|
||||||
|
if: always()
|
||||||
|
run: |
|
||||||
|
rm -rf _src
|
||||||
|
rm -rf "$HOME/.cache/pip" || true
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue