Files
kopia/.github/workflows/provider-tests.yml
Jarek Kowalski f69424961f chore(ci): upgrade golang to 1.19.2 and linter to 1.50.1 (#2526)
Lack of generics support is blocking various dependency upgrades,
so this unblocks that.

Temporarily disabled `checklocks` linter until it is fixed upstream.
2022-10-28 11:02:47 -07:00

87 lines
3.6 KiB
YAML

name: Provider Test
on:
push:
branches: [ master, test/providers ]
tags:
- v*
schedule:
# run once per day
- cron: '19 7 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
provider-test:
name: Provider Test
if: ${{ github.repository == 'kopia/kopia' }}
runs-on: ubuntu-latest
steps:
- name: Set up Go.
uses: actions/setup-go@v3
with:
go-version: '1.19'
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install Dependencies
run: make provider-tests-deps
- name: Azure
run: make provider-tests PROVIDER_TEST_TARGET=azure
env:
KOPIA_AZURE_TEST_CONTAINER: ${{ secrets.KOPIA_AZURE_TEST_CONTAINER }}
KOPIA_AZURE_TEST_STORAGE_ACCOUNT: ${{ secrets.KOPIA_AZURE_TEST_STORAGE_ACCOUNT }}
KOPIA_AZURE_TEST_STORAGE_KEY: ${{ secrets.KOPIA_AZURE_TEST_STORAGE_KEY }}
KOPIA_AZURE_TEST_SAS_TOKEN: ${{ secrets.KOPIA_AZURE_TEST_SAS_TOKEN }}
- name: B2
run: make provider-tests PROVIDER_TEST_TARGET=b2
env:
KOPIA_B2_TEST_BUCKET: ${{ secrets.KOPIA_B2_TEST_BUCKET }}
KOPIA_B2_TEST_KEY: ${{ secrets.KOPIA_B2_TEST_KEY }}
KOPIA_B2_TEST_KEY_ID: ${{ secrets.KOPIA_B2_TEST_KEY_ID }}
if: ${{ success() || failure() }}
- name: GCS
run: make provider-tests PROVIDER_TEST_TARGET=gcs
env:
KOPIA_GCS_CREDENTIALS_JSON_GZIP: ${{ secrets.KOPIA_GCS_CREDENTIALS_JSON_GZIP }}
KOPIA_GCS_TEST_BUCKET: ${{ secrets.KOPIA_GCS_TEST_BUCKET }}
if: ${{ success() || failure() }}
- name: GDrive
run: make provider-tests PROVIDER_TEST_TARGET=gdrive
env:
KOPIA_GDRIVE_CREDENTIALS_JSON_GZIP: ${{ secrets.KOPIA_GDRIVE_CREDENTIALS_JSON_GZIP }}
KOPIA_GDRIVE_TEST_FOLDER_ID: ${{ secrets.KOPIA_GDRIVE_TEST_FOLDER_ID }}
if: ${{ success() || failure() }}
- name: S3
run: make provider-tests PROVIDER_TEST_TARGET=s3
env:
KOPIA_S3_TEST_ENDPOINT: ${{ secrets.KOPIA_S3_TEST_ENDPOINT }}
KOPIA_S3_TEST_ACCESS_KEY_ID: ${{ secrets.KOPIA_S3_TEST_ACCESS_KEY_ID }}
KOPIA_S3_TEST_SECRET_ACCESS_KEY: ${{ secrets.KOPIA_S3_TEST_SECRET_ACCESS_KEY }}
KOPIA_S3_TEST_BUCKET: ${{ secrets.KOPIA_S3_TEST_BUCKET }}
KOPIA_S3_TEST_REGION: ${{ secrets.KOPIA_S3_TEST_REGION }}
KOPIA_S3_TEST_STS_ACCESS_KEY_ID: ${{ secrets.KOPIA_S3_TEST_STS_ACCESS_KEY_ID }}
KOPIA_S3_TEST_STS_SECRET_ACCESS_KEY: ${{ secrets.KOPIA_S3_TEST_STS_SECRET_ACCESS_KEY }}
KOPIA_S3_TEST_SESSION_TOKEN: ${{ secrets.KOPIA_S3_TEST_SESSION_TOKEN }}
KOPIA_S3_CREDS: ${{ secrets.KOPIA_S3_CREDS }}
KOPIA_S3_VERSIONED_CREDS: ${{ secrets.KOPIA_S3_VERSIONED_CREDS }}
KOPIA_S3_WASABI_CREDS: ${{ secrets.KOPIA_S3_WASABI_CREDS }}
KOPIA_S3_WASABI_VERSIONED_CREDS: ${{ secrets.KOPIA_S3_WASABI_VERSIONED_CREDS }}
if: ${{ success() || failure() }}
- name: Rclone
run: make provider-tests PROVIDER_TEST_TARGET=rclone
env:
KOPIA_RCLONE_EMBEDDED_CONFIG_B64: ${{ secrets.KOPIA_RCLONE_EMBEDDED_CONFIG_B64 }}
if: ${{ success() || failure() }}
- name: SFTP
run: make provider-tests PROVIDER_TEST_TARGET=sftp
if: ${{ success() || failure() }}
- name: WebDAV
run: make provider-tests PROVIDER_TEST_TARGET=webdav
env:
KOPIA_WEBDAV_TEST_URL: ${{ secrets.KOPIA_WEBDAV_TEST_URL }}
KOPIA_WEBDAV_TEST_USERNAME: ${{ secrets.KOPIA_WEBDAV_TEST_USERNAME }}
KOPIA_WEBDAV_TEST_PASSWORD: ${{ secrets.KOPIA_WEBDAV_TEST_PASSWORD }}
if: ${{ success() || failure() }}