We introduced the OpenDAL Workflow Planner to enable the reuse of existing tests across different components. This issue is used to track on-going works.
Tasks
Note for core test migrations
Create a new action under .github/<service>/<setup> like:
name: aws_s3
description: "Setup AWS S3"
inputs:
secrets:
description: "The secrets for test"
default: "{}"
# TODO: we should migrate to 1password instead.
runs:
using: "composite"
steps:
- name: Setup
shell: bash
run: |
echo "OPENDAL_S3_TEST=${{ fromJson(inputs.secrets).OPENDAL_S3_TEST }}" >> $GITHUB_ENV
echo "OPENDAL_S3_ROOT=${{ fromJson(inputs.secrets).OPENDAL_S3_ROOT }}" >> $GITHUB_ENV
echo "OPENDAL_S3_BUCKET=${{ fromJson(inputs.secrets).OPENDAL_S3_BUCKET }}" >> $GITHUB_ENV
echo "OPENDAL_S3_ENDPOINT=${{ fromJson(inputs.secrets).OPENDAL_S3_ENDPOINT }}" >> $GITHUB_ENV
echo "OPENDAL_S3_ACCESS_KEY_ID=${{ fromJson(inputs.secrets).OPENDAL_S3_ACCESS_KEY_ID }}" >> $GITHUB_ENV
echo "OPENDAL_S3_SECRET_ACCESS_KEY=${{ fromJson(inputs.secrets).OPENDAL_S3_SECRET_ACCESS_KEY }}" >> $GITHUB_ENV
echo "OPENDAL_S3_REGION=ap-northeast-1" >> $GITHUB_ENV
If the service is 1password based, we can use:
name: aws_s3
description: "Setup AWS S3"
inputs:
secrets:
description: "The secrets for test"
default: "{}"
# TODO: we should migrate to 1password instead.
runs:
using: "composite"
steps:
- name: Load secret
id: op-load-secret
uses: 1password/load-secrets-action@v1
with:
export-env: true
env:
OPENDAL_GCS_TEST: op://services/gcs/test
OPENDAL_GCS_ROOT: op://services/gcs/root
OPENDAL_GCS_BUCKET: op://services/gcs/bucket
OPENDAL_GCS_CREDENTIAL: op://services/gcs/credential
OPENDAL_GCS_DEFAULT_STORAGE_CLASS: STANDARD
Test fixtures
For cases that require a fixture such as a docker-compose file, please place the relevant files in fixtures/<service>.
We introduced the OpenDAL Workflow Planner to enable the reuse of existing tests across different components. This issue is used to track on-going works.
Tasks
corewasabirefactor(services/wasabi): migrate to test planner #3428Note for core test migrations
Create a new action under
.github/<service>/<setup>like:If the service is 1password based, we can use:
Test fixtures
For cases that require a fixture such as a docker-compose file, please place the relevant files in
fixtures/<service>.