SNOW-715551: Support authentication with OKTA #2343
This file contains 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
name: Build and Test | |
on: | |
push: | |
branches: | |
- master | |
tags: | |
- v* | |
pull_request: | |
branches: | |
- '**' | |
concurrency: | |
# older builds for the same pull request numer or branch should be cancelled | |
cancel-in-progress: true | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
jobs: | |
build-test-linux: | |
name: Build-Test-Linux | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
build_type: [ 'Debug', 'Release' ] | |
cloud_provider: [ 'AWS', 'AZURE', 'GCP' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Restore cached deps | |
id: cache-restore-deps | |
uses: actions/cache/restore@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ github.event.pull_request.base.sha }}-Linux-dep-cache | |
if: github.event_name == 'pull_request' | |
- name: Build | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
run: ci/build_linux.sh | |
- name: Cache deps | |
id: cache-save-deps | |
uses: actions/cache/save@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ github.sha }}-Linux-dep-cache | |
if: github.ref_name == github.event.repository.default_branch && matrix.cloud_provider == 'AWS' | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.7' | |
architecture: 'x64' | |
- name: Test | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
CLOUD_PROVIDER: ${{ matrix.cloud_provider }} | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci/test_linux.sh | |
build-test-win: | |
name: Build-Test-Win | |
runs-on: windows-2019 | |
strategy: | |
fail-fast: false | |
matrix: | |
platform: [ 'x64', 'x86' ] | |
build_type: [ 'Debug', 'Release' ] | |
vs_version: [ 'VS16' ] | |
cloud_provider: [ 'AWS', 'AZURE', 'GCP' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Restore cached deps | |
id: cache-restore-deps | |
uses: actions/cache/restore@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ matrix.platform }}-${{ matrix.vs_version }}-${{ github.event.pull_request.base.sha }}-Win-dep-cache | |
if: github.event_name == 'pull_request' | |
- name: Build | |
shell: cmd | |
env: | |
PLATFORM: ${{ matrix.platform }} | |
BUILD_TYPE: ${{ matrix.build_type }} | |
VS_VERSION: ${{ matrix.vs_version }} | |
run: ci\build_win.bat | |
- name: Cache deps | |
id: cache-save-deps | |
uses: actions/cache/save@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ matrix.platform }}-${{ matrix.vs_version }}-${{ github.sha }}-Win-dep-cache | |
if: github.ref_name == github.event.repository.default_branch && matrix.cloud_provider == 'AWS' | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.7' | |
architecture: 'x64' | |
- name: Test | |
shell: cmd | |
env: | |
PLATFORM: ${{ matrix.platform }} | |
BUILD_TYPE: ${{ matrix.build_type }} | |
VS_VERSION: ${{ matrix.vs_version }} | |
CLOUD_PROVIDER: ${{ matrix.cloud_provider }} | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci\test_win.bat | |
build-test-win-vs2022: | |
name: Build-Test-Win-vs2022 | |
runs-on: windows-2022 | |
strategy: | |
fail-fast: false | |
matrix: | |
platform: [ 'x64', 'x86' ] | |
build_type: [ 'Debug', 'Release' ] | |
vs_version: [ 'VS17' ] | |
cloud_provider: [ 'AWS', 'AZURE', 'GCP' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Restore cached deps | |
id: cache-restore-deps | |
uses: actions/cache/restore@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ matrix.platform }}-${{ matrix.vs_version }}-${{ github.event.pull_request.base.sha }}-Win-dep-cache | |
if: github.event_name == 'pull_request' | |
- name: Build | |
shell: cmd | |
env: | |
PLATFORM: ${{ matrix.platform }} | |
BUILD_TYPE: ${{ matrix.build_type }} | |
VS_VERSION: ${{ matrix.vs_version }} | |
run: ci\build_win.bat | |
- name: Cache deps | |
id: cache-save-deps | |
uses: actions/cache/save@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ matrix.platform }}-${{ matrix.vs_version }}-${{ github.sha }}-Win-dep-cache | |
if: github.ref_name == github.event.repository.default_branch && matrix.cloud_provider == 'AWS' | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.7' | |
architecture: 'x64' | |
- name: Test | |
shell: cmd | |
env: | |
PLATFORM: ${{ matrix.platform }} | |
BUILD_TYPE: ${{ matrix.build_type }} | |
VS_VERSION: ${{ matrix.vs_version }} | |
CLOUD_PROVIDER: ${{ matrix.cloud_provider }} | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci\test_win.bat | |
build-test-mac: | |
name: Build-Test-Mac | |
runs-on: macos-14 | |
strategy: | |
fail-fast: false | |
matrix: | |
build_type: [ 'Debug', 'Release' ] | |
cloud_provider: [ 'AWS', 'AZURE', 'GCP' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Homebrew Bash | |
shell: bash | |
run: brew install bash | |
- name: Restore cached deps | |
id: cache-restore-deps | |
uses: actions/cache/restore@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ github.event.pull_request.base.sha }}-Mac-dep-cache | |
if: github.event_name == 'pull_request' | |
- name: Build | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
run: ./ci/build_mac.sh | |
- name: Cache deps | |
id: cache-save-deps | |
uses: actions/cache/save@v4 | |
with: | |
path: dep-cache | |
key: ${{ matrix.build_type }}-${{ github.sha }}-Mac-dep-cache | |
if: github.ref_name == github.event.repository.default_branch && matrix.cloud_provider == 'AWS' | |
- name: Test | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
CLOUD_PROVIDER: ${{ matrix.cloud_provider }} | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci/test_mac.sh | |
build-test-codecov: | |
needs: [build-test-linux, build-test-win] | |
name: Build-Test-CodeCov-Linux | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
build_type: [ 'Release' ] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
CLIENT_CODE_COVERAGE: 1 | |
run: ci/build_linux.sh | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.7' | |
architecture: 'x64' | |
- name: Test on AWS | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
CLIENT_CODE_COVERAGE: 1 | |
CLOUD_PROVIDER: AWS | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci/test_linux.sh | |
- name: Test on Azure | |
shell: bash | |
env: | |
BUILD_TYPE: ${{ matrix.build_type }} | |
CLIENT_CODE_COVERAGE: 1 | |
CLOUD_PROVIDER: AZURE | |
PARAMETERS_SECRET: ${{ secrets.PARAMETERS_SECRET }} | |
run: ci/test_linux.sh | |
- name: Upload coverage reports to Codecov | |
uses: codecov/codecov-action@v5 | |
with: | |
# without the token code cov may fail because of Github limits https://github.com/codecov/codecov-action/issues/557 | |
token: ${{ secrets.CODE_COV_UPLOAD_TOKEN }} | |
fail_ci_if_error: true |