feat(gax): implement uploadChunkCallable for resumable uploads #5932
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| permissions: | |
| contents: read | |
| on: | |
| pull_request: | |
| # Changes to these directories do not directly affect the downstream libraries | |
| paths-ignore: | |
| - gapic-generator-java/** | |
| - showcase/** | |
| - test/** | |
| name: sdk-platform-java Downstream Check | |
| env: | |
| BUILD_SUBDIR: sdk-platform-java | |
| jobs: | |
| filter: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| library: ${{ steps.filter.outputs.library }} | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 | |
| with: | |
| persist-credentials: false | |
| - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 | |
| id: filter | |
| with: | |
| filters: | | |
| library: | |
| - 'sdk-platform-java/**' | |
| - 'google-auth-library-java/**' | |
| - .kokoro/downstream-compatibility.sh | |
| - .github/workflows/sdk-platform-java-downstream.yaml | |
| downstream-compatibility: | |
| needs: filter | |
| if: ${{ needs.filter.outputs.library == 'true' }} | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| repo: | |
| - java-bigtable | |
| - java-firestore | |
| - java-pubsub | |
| steps: | |
| - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-java@17f84c3641ba7b8f6deff6309fc4c864478f5d62 # v3.14.1 | |
| with: | |
| java-version: 17 | |
| distribution: temurin | |
| cache: maven | |
| - run: mvn -version | |
| - name: Install xmllint | |
| timeout-minutes: 5 | |
| run: | | |
| # Retry apt-get update and install up to 3 times with a 15-second per-request timeout. | |
| # Retries protect against transient network glitches, mirror timeouts, and apt lock contention on runner startup. | |
| for i in {1..3}; do | |
| sudo apt-get -o Acquire::http::Timeout="15" -o Acquire::Retries=3 update && \ | |
| sudo apt-get -o Acquire::http::Timeout="15" -o Acquire::Retries=3 -y install libxml2-utils && \ | |
| break || sleep 5 | |
| done | |
| - name: Test helper scripts | |
| run: .kokoro/common_test.sh | |
| - name: Perform downstream compatibility testing | |
| run: REPOS_UNDER_TEST="${{ matrix.repo }}" .kokoro/downstream-compatibility.sh | |
| downstream-compatibility-spring-generator: | |
| needs: filter | |
| if: ${{ needs.filter.outputs.library == 'true' }} | |
| name: "downstream-compatibility (spring-cloud-gcp)" | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| steps: | |
| - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-java@17f84c3641ba7b8f6deff6309fc4c864478f5d62 # v3.14.1 | |
| with: | |
| java-version: 17 | |
| distribution: temurin | |
| cache: maven | |
| - run: mvn -version | |
| - name: Install xmllint | |
| timeout-minutes: 5 | |
| run: | | |
| # Retry apt-get update and install up to 3 times with a 15-second per-request timeout. | |
| # Retries protect against transient network glitches, mirror timeouts, and apt lock contention on runner startup. | |
| for i in {1..3}; do | |
| sudo apt-get -o Acquire::http::Timeout="15" -o Acquire::Retries=3 update && \ | |
| sudo apt-get -o Acquire::http::Timeout="15" -o Acquire::Retries=3 -y install libxml2-utils && \ | |
| break || sleep 5 | |
| done | |
| - name: Perform downstream compatibility testing | |
| run: .kokoro/downstream-compatibility-spring.sh | |
| required: | |
| needs: [ downstream-compatibility, downstream-compatibility-spring-generator ] | |
| name: conditional-required-check | |
| if: ${{ always() }} # Always run even if any "needs" jobs fail | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Fail if any previous failure | |
| if: ${{ contains(needs.*.result, 'failure') }} | |
| run: exit 1 | |
| - name: Success otherwise | |
| run: echo "Success!" |