name: Setup/Cache Env description: 'Sets up and caches a python env. Will only install dependencies if no cache was hit.' inputs: role-to-assume: required: true description: 'The role to assume' aws-region: required: true description: 'The aws region to use' domain-owner: required: true description: 'The domain owner' runs: using: composite steps: - name: Set up Python 3.9 uses: actions/setup-python@v4 with: python-version: "3.9" - name: Cache Env uses: actions/cache@v3 id: env-cache with: path: ${{ env.pythonLocation }} key: ${{ env.pythonLocation }}-${{ hashFiles('./propeller-swap-encoders/requirements.txt') }} - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v4.0.1 with: role-to-assume: ${{ inputs.role-to-assume }} audience: sts.amazonaws.com aws-region: ${{ inputs.aws-region }} - name: Install Dependencies if: ${{ steps.env-cache.outputs.cache-hit != 'true' }} run: | aws codeartifact login --tool pip --domain propeller --domain-owner ${{inputs.domain-owner}} --repository protosim python -m pip install --upgrade pip pip install -r propeller-swap-encoders/requirements.txt --no-cache shell: bash