name: Test Action on: push jobs: test-remote: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Test remote run: | docker build -t host -f Dockerfile.test . docker build -t action -f Dockerfile . docker run -d \ --name host \ -e SSH_PUBLIC_KEY="${{secrets.SSH_PUBLIC_KEY}}" \ host docker run -t \ --name action \ --link host \ -v $PWD:/wd \ -w /wd \ -e INPUT_PLAYBOOK="playbook.yml" \ -e INPUT_DIRECTORY="./" \ -e INPUT_KEY="${{secrets.SSH_PRIVATE_KEY}}" \ -e INPUT_OPTIONS="--inventory hosts --limit remote" \ action test-local: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Test local uses: ./ with: playbook: playbook.yml key: ${{secrets.SSH_PRIVATE_KEY}} options: | --inventory hosts --limit local test-local-more: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 - name: Test local uses: ./ with: playbook: playbook.yml key: ${{secrets.SSH_PRIVATE_KEY}} vault_password: test inventory: | [all] localhost ansible_user=root ansible_connection=local options: | -e key1=val1 -e key2=val2