feat: enable OTP and Push MFA for Okta #408
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
| name: Unit Test | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - '**/*.md' | |
| - '**/*.jpg' | |
| - '**/*.png' | |
| - '**/README.*' | |
| - '**/LICENSE.*' | |
| - 'docs/**' | |
| - 'ISSUE_TEMPLATE/**' | |
| permissions: | |
| id-token: write | |
| contents: read | |
| env: | |
| BUILD_CONFIG: Release | |
| jobs: | |
| test-win-unit: | |
| name: Windows - Unit Test | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout aws-advanced-odbc-wrapper | |
| uses: actions/checkout@v4 | |
| - name: Retrieve AWS SDK for C++ Cache | |
| id: cache-aws-sdk-cpp | |
| uses: actions/cache@v4 | |
| with: | |
| path: aws_sdk/install | |
| key: ${{ runner.os }}-aws-sdk-cpp-${{env.BUILD_CONFIG}}-shared | |
| - name: Build AWS SDK for C++ | |
| if: ${{steps.cache-aws-sdk-cpp.outputs.cache-hit != 'true'}} | |
| run: | | |
| ./scripts/compile_aws_sdk_win.ps1 ${{env.BUILD_CONFIG}} | |
| - name: Configure AWS Credentials | |
| uses: aws-actions/configure-aws-credentials@v4 | |
| with: | |
| aws-region: ${{ secrets.AWS_DEFAULT_REGION }} | |
| role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_DEPLOY_ROLE }} | |
| role-session-name: odbc-wrapper-win-unit | |
| - name: Build ANSI aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=OFF -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build --config ${{env.BUILD_CONFIG}} | |
| ./build/test/unit_test/${{env.BUILD_CONFIG}}/unit-test.exe | |
| - name: Build Unicode aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=ON -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build --config ${{env.BUILD_CONFIG}} | |
| ./build/test/unit_test/${{env.BUILD_CONFIG}}/unit-test.exe | |
| test-macos-unit: | |
| name: MacOS - Unit Test | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout aws-advanced-odbc-wrapper | |
| uses: actions/checkout@v4 | |
| - name: Install Build Dependencies | |
| run: | | |
| brew update && brew upgrade && brew cleanup | |
| brew install cmake unixodbc postgresql curl openssl zlib icu4c | |
| - name: Retrieve AWS SDK for C++ Cache | |
| id: cache-aws-sdk-cpp | |
| uses: actions/cache@v4 | |
| with: | |
| path: aws_sdk/install | |
| key: ${{ runner.os }}-aws-sdk-cpp-${{env.BUILD_CONFIG}}-shared | |
| - name: Build AWS SDK for C++ | |
| run: | | |
| export SDKROOT="$(xcrun --sdk macosx --show-sdk-path)" | |
| ./scripts/compile_aws_sdk_unix.sh ${{env.BUILD_CONFIG}} | |
| - name: Configure AWS Credentials | |
| uses: aws-actions/configure-aws-credentials@v4 | |
| with: | |
| aws-region: ${{ secrets.AWS_DEFAULT_REGION }} | |
| role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_DEPLOY_ROLE }} | |
| role-session-name: odbc-wrapper-macos-unit | |
| - name: Build ANSI aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=OFF -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build | |
| ./build/test/unit_test/unit-test | |
| # env: | |
| # ASAN_OPTIONS: 'detect_container_overflow=0' | |
| - name: Build Unicode aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=ON -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build | |
| ./build/test/unit_test/unit-test | |
| # env: | |
| # ASAN_OPTIONS: 'detect_container_overflow=0' | |
| test-linux-unit: | |
| name: Linux Ubuntu - Unit Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout aws-advanced-odbc-wrapper | |
| uses: actions/checkout@v4 | |
| - name: Install Build Dependencies | |
| run: | | |
| sudo apt update | |
| sudo apt-get install cmake libcurl4-openssl-dev libssl-dev odbcinst unixodbc-dev uuid-dev zlib1g-dev libicu-dev | |
| - name: Retrieve AWS SDK for C++ Cache | |
| id: cache-aws-sdk-cpp | |
| uses: actions/cache@v4 | |
| with: | |
| path: aws_sdk/install | |
| key: ${{ runner.os }}-aws-sdk-cpp-${{env.BUILD_CONFIG}}-shared | |
| - name: Build AWS SDK for C++ | |
| if: ${{steps.cache-aws-sdk-cpp.outputs.cache-hit != 'true'}} | |
| run: | | |
| ./scripts/compile_aws_sdk_unix.sh ${{env.BUILD_CONFIG}} | |
| - name: Configure AWS Credentials | |
| uses: aws-actions/configure-aws-credentials@v4 | |
| with: | |
| aws-region: ${{ secrets.AWS_DEFAULT_REGION }} | |
| role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID }}:role/${{ secrets.AWS_DEPLOY_ROLE }} | |
| role-session-name: odbc-wrapper-linux-unit | |
| - name: Build ANSI aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=OFF -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build | |
| ./build/test/unit_test/unit-test | |
| - name: Build Unicode aws-advanced-odbc-wrapper | |
| run: | | |
| cmake -S . -B build -DBUILD_UNICODE=ON -DBUILD_UNIT_TEST=ON -DCMAKE_BUILD_TYPE=${{env.BUILD_CONFIG}} | |
| cmake --build build | |
| ./build/test/unit_test/unit-test |