feat: composite actions + runner base image
Actions: checkout, setup-go, setup-node, setup-aws Runner image: Go 1.26 + Node 22 + AWS CLI + Docker (docker:29-dind)
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
name: 'Tinqs Setup AWS'
|
||||
description: 'Install AWS CLI and optionally login to ECR'
|
||||
|
||||
inputs:
|
||||
region:
|
||||
description: 'AWS region'
|
||||
default: 'eu-west-1'
|
||||
ecr-login:
|
||||
description: 'Login to ECR (true/false)'
|
||||
default: 'false'
|
||||
ecr-repo:
|
||||
description: 'ECR repository URL (required if ecr-login is true)'
|
||||
default: ''
|
||||
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- run: |
|
||||
REGION="${{ inputs.region }}"
|
||||
ECR_LOGIN="${{ inputs.ecr-login }}"
|
||||
ECR_REPO="${{ inputs.ecr-repo }}"
|
||||
|
||||
# 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
|
||||
fi
|
||||
|
||||
aws --version
|
||||
|
||||
# ECR login
|
||||
if [ "$ECR_LOGIN" = "true" ] && [ -n "$ECR_REPO" ]; then
|
||||
echo "Logging into ECR ($REGION)..."
|
||||
aws ecr get-login-password --region "$REGION" | \
|
||||
docker login --username AWS --password-stdin "$ECR_REPO"
|
||||
echo "ECR login OK"
|
||||
fi
|
||||
shell: bash
|
||||
Reference in New Issue
Block a user