diff --git a/.github/services/dropbox/dropbox/action.yml b/.github/services/dropbox/dropbox/action.yml new file mode 100644 index 000000000000..b2b81314a728 --- /dev/null +++ b/.github/services/dropbox/dropbox/action.yml @@ -0,0 +1,38 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +name: dropbox +description: 'Behavior test for dropbox' + +runs: + using: "composite" + steps: + - name: Setup credentials + uses: 1password/load-secrets-action@v1 + with: + export-env: true + env: + OPENDAL_DROPBOX_ROOT: op://services/dropbox/root + OPENDAL_DROPBOX_REFRESH_TOKEN: op://services/dropbox/refresh_token + OPENDAL_DROPBOX_CLIENT_ID: op://services/dropbox/client_id + OPENDAL_DROPBOX_CLIENT_SECRET: op://services/dropbox/client_secret + - name: Setup test threads + shell: bash + run: | + cat << EOF >> $GITHUB_ENV + NEXTEST_TEST_THREADS=1 + EOF diff --git a/.github/workflows/service_test_dropbox.yml b/.github/workflows/service_test_dropbox.yml index b5b2f02f4ffc..e69de29bb2d1 100644 --- a/.github/workflows/service_test_dropbox.yml +++ b/.github/workflows/service_test_dropbox.yml @@ -1,67 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. - -name: Service Test Dropbox - -on: - push: - branches: - - main - pull_request: - branches: - - main - paths: - - "core/src/**" - - "core/tests/**" - - "!core/src/docs/**" - - "!core/src/services/**" - - "core/src/services/dropbox/**" - - ".github/workflows/service_test_dropbox.yml" - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }} - cancel-in-progress: true - -jobs: - dropbox: - runs-on: ubuntu-latest - if: (github.event_name == 'push' && github.repository == 'apache/incubator-opendal') || !github.event.pull_request.head.repo.fork - steps: - - uses: actions/checkout@v4 - - name: Setup Rust toolchain - uses: ./.github/actions/setup - - - name: Load secret - id: op-load-secret - uses: 1password/load-secrets-action@v1 - with: - export-env: true - env: - OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }} - OPENDAL_DROPBOX_ROOT: op://services/dropbox/root - OPENDAL_DROPBOX_REFRESH_TOKEN: op://services/dropbox/refresh_token - OPENDAL_DROPBOX_CLIENT_ID: op://services/dropbox/client_id - OPENDAL_DROPBOX_CLIENT_SECRET: op://services/dropbox/client_secret - - - name: Test - shell: bash - working-directory: core - # It's easily for dropbox to trigger too_many_write_operations error. - # So we run tests one by one. - run: cargo test behavior --features=tests,services-dropbox -- --test-threads=1 - env: - OPENDAL_TEST: dropbox