name: Install operator-sdk
description: |
  Installs the operator-sdk binary.
inputs:
  version:
    description: "Version of the operator-sdk to install"
    required: true
runs:
  using: "composite"
  steps:
    - name: Install operator-sdk
      shell: bash
      run: |
        export ARCH=$(case $(uname -m) in x86_64) echo -n amd64 ;; aarch64) echo -n arm64 ;; *) echo -n $(uname -m) ;; esac)
        export OS=$(uname | awk '{print tolower($0)}')
        export OPERATOR_SDK_DL_URL=https://github.com/operator-framework/operator-sdk/releases/download/${{ inputs.version }}
        curl -sLO ${OPERATOR_SDK_DL_URL}/operator-sdk_${OS}_${ARCH}
        gpg --keyserver keyserver.ubuntu.com --recv-keys 052996E2A20B5C7E
        curl -sLO ${OPERATOR_SDK_DL_URL}/checksums.txt
        curl -sLO ${OPERATOR_SDK_DL_URL}/checksums.txt.asc
        gpg -u "Operator SDK (release) <cncf-operator-sdk@cncf.io>" --verify checksums.txt.asc
        grep operator-sdk_${OS}_${ARCH} checksums.txt | sha256sum -c -
        chmod +x operator-sdk_${OS}_${ARCH} && sudo mv operator-sdk_${OS}_${ARCH} /usr/local/bin/operator-sdk
        rm checksums.txt checksums.txt.asc
