on: push name: test jobs: test: runs-on: ubuntu-18.04 steps: - uses: actions/setup-go@v2 with: go-version: '1.16' - uses: actions/checkout@v2 - uses: actions/cache@v2 with: path: ~/go/pkg/mod key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} restore-keys: | ${{ runner.os }}-go- - name: Extract GCP credentials run: 'echo "$GOOGLE_APPLICATION_CREDENTIALS" > /opt/gcp.json' shell: bash env: GOOGLE_APPLICATION_CREDENTIALS: ${{secrets.GOOGLE_APPLICATION_CREDENTIALS}} - name: Extract SSH key run: 'echo "$LITESTREAM_SFTP_KEY" > /opt/id_ed25519' shell: bash env: LITESTREAM_SFTP_KEY: ${{secrets.LITESTREAM_SFTP_KEY}} - name: Run unit tests run: go test -v ./... - name: Run aws s3 tests run: go test -v -run=TestReplicaClient . -integration s3 env: LITESTREAM_S3_ACCESS_KEY_ID: ${{ secrets.LITESTREAM_S3_ACCESS_KEY_ID }} LITESTREAM_S3_SECRET_ACCESS_KEY: ${{ secrets.LITESTREAM_S3_SECRET_ACCESS_KEY }} LITESTREAM_S3_REGION: ${{ secrets.LITESTREAM_S3_REGION }} LITESTREAM_S3_BUCKET: ${{ secrets.LITESTREAM_S3_BUCKET }} - name: Run google cloud storage (gcs) tests run: go test -v -run=TestReplicaClient . -integration gcs env: GOOGLE_APPLICATION_CREDENTIALS: /opt/gcp.json LITESTREAM_GCS_BUCKET: ${{ secrets.LITESTREAM_GCS_BUCKET }} - name: Run azure blob storage (abs) tests run: go test -v -run=TestReplicaClient . -integration abs env: LITESTREAM_ABS_ACCOUNT_NAME: ${{ secrets.LITESTREAM_ABS_ACCOUNT_NAME }} LITESTREAM_ABS_ACCOUNT_KEY: ${{ secrets.LITESTREAM_ABS_ACCOUNT_KEY }} LITESTREAM_ABS_BUCKET: ${{ secrets.LITESTREAM_ABS_BUCKET }} - name: Run sftp tests run: go test -v -run=TestReplicaClient . -integration sftp env: LITESTREAM_SFTP_HOST: ${{ secrets.LITESTREAM_SFTP_HOST }} LITESTREAM_SFTP_USER: ${{ secrets.LITESTREAM_SFTP_USER }} LITESTREAM_SFTP_KEY_PATH: /opt/id_ed25519 LITESTREAM_SFTP_PATH: ${{ secrets.LITESTREAM_SFTP_PATH }}