Update aws-crt to 0.30.0 (#1125) #1850
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: CI | |
on: | |
pull_request: | |
branches: ['*'] | |
push: | |
branches: [ master ] | |
paths-ignore: | |
- 'README.md' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
concurrency: | |
group: ci-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
scalafmt: | |
name: Formatting | |
runs-on: ubuntu-latest | |
timeout-minutes: 5 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Check format | |
run: | | |
version=$(sed -E "s/(\/\/|#).*//g" .scalafmt.conf | grep "version" | sed -E "s/version|=|\"|\s*//g") | |
curl https://raw.githubusercontent.com/scalameta/scalafmt/master/bin/install-scalafmt-native.sh | \ | |
sudo bash -s -- $version /usr/local/bin/scalafmt-native | |
echo "==============================================================================" | |
echo "Config:" | |
cat .scalafmt.conf | |
echo "==============================================================================" | |
echo "scalafmt-native --list" | |
scalafmt-native --list | |
tests: | |
name: Tests | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
needs: [scalafmt] | |
strategy: | |
matrix: | |
scala: [ 2.12, 2.13, 3.3 ] | |
steps: | |
- name: Checkout current branch (fast) | |
uses: actions/checkout@v4 | |
- name: Cache project dependencies between workflow runs | |
uses: coursier/cache-action@v6 | |
- name: Compile all sources | |
run: sbt ++${{ matrix.scala }}.* 'all compile Test/compile doc' | |
- name: Compile readme | |
run: sbt ++${{ matrix.scala }}.* microsite/mdoc | |
- name: Run Scalafix | |
run: sbt ++${{ matrix.scala }}.* 'scalafixAll --check' | |
- name: Create tmp directory | |
run: mkdir tmp | |
- name: Test with coverage | |
run: sbt ++${{ matrix.scala }}.* '; coverage ; testOnly * -- -l blobstore.IntegrationTest' | |
- name: Publish JUnit test report | |
if: always() # publish report when tests fail | |
uses: mikepenz/action-junit-report@v4 | |
with: | |
github_token: ${{ github.token }} | |
report_paths: '**/target/test-reports/*.xml' | |
- name: Generate coverage report | |
run: sbt ++${{ matrix.scala }} coverageReport | |
- name: Upload code coverage to codecov | |
uses: codecov/codecov-action@v4.5.0 | |
with: | |
flags: scala-${{ matrix.scala }} | |
integration-tests: | |
name: Integration tests | |
if: github.actor != 'dependabot[bot]' && (github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository)) | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
needs: [scalafmt, tests] | |
steps: | |
- name: Checkout current branch (fast) | |
uses: actions/checkout@v4 | |
- name: Cache project dependencies between workflow runs | |
uses: coursier/cache-action@v6 | |
- name: Compile all sources | |
run: sbt 'all compile Test/compile doc' | |
- name: Create tmp directory | |
run: mkdir tmp | |
- name: Decrypt Box App Key | |
run: openssl aes-256-cbc -K ${{ secrets.OPENSSL_KEY }} -iv ${{ secrets.OPENSSL_IV }} -in box/src/test/resources/box_appkey.json.enc -out box/src/test/resources/box_appkey.json -d | |
- name: Test | |
env: | |
S3_IT_BUCKET: ${{ secrets.AWS_S3_BUCKET_IT }} | |
S3_IT_REGION: ${{ secrets.AWS_S3_REGION_IT }} | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_S3_ACCESS_KEY_IT }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_S3_SECRET_KEY_IT }} | |
run: sbt '; coverage ; testOnly * -- -n blobstore.IntegrationTest' | |
- name: Publish JUnit test report | |
if: always() # publish report when tests fail | |
uses: mikepenz/action-junit-report@v4 | |
with: | |
github_token: ${{ github.token }} | |
report_paths: '**/target/test-reports/*.xml' | |
- name: Generate coverage report | |
run: sbt coverageReport | |
- name: Upload code coverage to codecov | |
uses: codecov/codecov-action@v4.5.0 | |
with: | |
flags: scala-it |