Skip to content

Update aws-crt to 0.30.0 (#1125) #1850

Update aws-crt to 0.30.0 (#1125)

Update aws-crt to 0.30.0 (#1125) #1850

Workflow file for this run

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