Skip to content
download-cloud

GitHub Action

install-aws-cli-action

v1 Latest version

install-aws-cli-action

download-cloud

install-aws-cli-action

Install AWS CLI on a Linux host

Installation

Copy and paste the following snippet into your .yml file.

              

- name: install-aws-cli-action

uses: unfor19/install-aws-cli-action@v1

Learn more about this action in unfor19/install-aws-cli-action

Choose a version

install-aws-cli-action

test test-action

Install/Setup AWS CLI on a GitHub Actions Linux host.

After this action, every step is capable of running aws CLI, and it's up to you to set AWS credentials in the subsequent steps.

Tested in unfor19/install-aws-cli-action-test

TIP: It's possible to use the entrypoint.sh script as a "bootstrap script to install/setup aws cli on Linux", regardless of GitHub Actions; see Other Options for more details.

Usage

Valid AWS CLI version values:

  • 1 - latest v1
  • 2 - latest v2 (default)
  • 1.##.## - specific v1
  • 2.##.## - specific v2

Usage

Add one of the following steps to a job in your workflow.

Common Usage

- id: install-aws-cli
  uses: unfor19/install-aws-cli-action@v1
  with:
    version: 2                         # default
    verbose: false                     # default
    arch: amd64                        # allowed values: amd64, arm64

Full Example

- id: install-aws-cli
  uses: unfor19/install-aws-cli-action@v1
  with:
    version: 2                         # default
    verbose: false                     # default
    arch: amd64                        # allowed values: amd64, arm64
    bindir: "/usr/local/bin"           # default
    installrootdir: "/usr/local"       # default
    rootdir: ""                        # defaults to "PWD"
    workdir: ""                        # defaults to "PWD/unfor19-awscli"

Test with GitHub Matrix

See unfor19/install-aws-cli-action-test/blob/master/.github/workflows/test-action.yml

name: test-action

on:
  push:

jobs:
  test:
    runs-on: ubuntu-20.04
    strategy:
      matrix:
        include:
          - TEST_NAME: "Latest v2"
            AWS_CLI_VERSION: "2"
          - TEST_NAME: "Specific v2"
            AWS_CLI_VERSION: "2.0.30"
          - TEST_NAME: "Latest v1"
            AWS_CLI_VERSION: "1"
          - TEST_NAME: "Specific v1"
            AWS_CLI_VERSION: "1.32.15"
          - TEST_NAME: "No Input"
    name: Test ${{ matrix.TEST_NAME }} ${{ matrix.AWS_CLI_VERSION }}
    steps:
      - name: Test ${{ matrix.TEST_NAME }}
        id: install-aws-cli
        uses: unfor19/install-aws-cli-action@master
        with:
          version: ${{ matrix.AWS_CLI_VERSION }}
      - run: aws --version
        shell: bash

Other options

  • Execute locally
    curl -L -o install-aws.sh https://raw.githubusercontent.com/unfor19/install-aws-cli-action/master/entrypoint.sh && \
    chmod +x install-aws.sh
    ./install-aws.sh "v2" "amd64"
    rm install-aws.sh  
  • Dockerfile - Add this to your Dockerfile
    # Install AWS CLI
    WORKDIR /tmp/
    RUN curl -L -o install-aws.sh https://raw.githubusercontent.com/unfor19/install-aws-cli-action/master/entrypoint.sh && \
        sudo chmod +x install-aws.sh && \
        sudo ./install-aws.sh "v2" "amd64" && \
        sudo rm install-aws.sh
    NOTE: On some Docker images, you might need to add sudo in front of each command, like sudo curl -L .., sudo chmod .., etc.

Local Development

Expand/Collapse

Requirements

  • Docker

Getting Started

  1. Build Docker image
    docker build -t "install-aws-cli-action" .
  2. Run container
    docker run --rm -it "install-aws-cli-action" "v2" "amd64"

Authors

Created and maintained by Meir Gabay

License

This project is licensed under the MIT License - see the LICENSE file for details