fix: Alpine compatibility + READMEs + roadmap
- setup-node: detect Alpine/Debian, use apk or NodeSource - setup-aws: use pip on Alpine (musl), binary on Debian (glibc) - setup-go: fix version parsing for Alpine (no grep -P) - README per action with usage examples and input docs - PLAN.md: roadmap for runner images, labels, Lambda dispatch
This commit is contained in:
+15
-4
@@ -1,5 +1,6 @@
|
||||
# tinqs/ci/setup-aws — Tinqs Studio CI
|
||||
# Installs AWS CLI and optionally logs into ECR.
|
||||
# Detects Alpine (musl) vs Debian (glibc) and uses the right install method.
|
||||
# Credentials come from the runner environment (IAM task role on Fargate, instance
|
||||
# profile on EC2/Lightsail) — no explicit key configuration needed.
|
||||
# Composite action — runs directly on the host.
|
||||
@@ -30,10 +31,20 @@ runs:
|
||||
# Install AWS CLI if missing
|
||||
if ! command -v aws &>/dev/null; then
|
||||
echo "Installing AWS CLI..."
|
||||
curl -fsSL https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip -o /tmp/awscli.zip
|
||||
unzip -q /tmp/awscli.zip -d /tmp/aws-install
|
||||
/tmp/aws-install/aws/install
|
||||
rm -rf /tmp/awscli.zip /tmp/aws-install
|
||||
if command -v apk &>/dev/null; then
|
||||
# Alpine — use pip (AWS CLI v2 binary needs glibc)
|
||||
apk add --no-cache python3 py3-pip
|
||||
pip3 install --break-system-packages awscli 2>/dev/null || pip3 install awscli
|
||||
elif command -v apt-get &>/dev/null; then
|
||||
# Debian/Ubuntu — use official installer
|
||||
apt-get update && apt-get install -y unzip curl
|
||||
curl -fsSL https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip -o /tmp/awscli.zip
|
||||
unzip -q /tmp/awscli.zip -d /tmp/aws-install
|
||||
/tmp/aws-install/aws/install
|
||||
rm -rf /tmp/awscli.zip /tmp/aws-install
|
||||
else
|
||||
echo "ERROR: unsupported package manager" && exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
aws --version
|
||||
|
||||
Reference in New Issue
Block a user