feature: create SQS S3 message queue adapter #298
Workflow file for this run
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: π― Test PR | |
# cancel previous runs on the same PR | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
types: [opened, synchronize, reopened] | |
env: | |
CI: true | |
NODE_VERSION: 16 | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
build: | |
name: π Build Project | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
outputs: | |
affected-packages: ${{ steps.get-affected-packages-paths.outputs.affected-packages }} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
# We need to fetch all branches and commits so that Nx affected has a base to compare against. | |
fetch-depth: 0 | |
- name: Install node_modules | |
uses: ./.github/actions/install-node-modules | |
- name: Package | |
uses: ./.github/actions/package | |
- name: Get affected packages paths | |
id: get-affected-packages-paths | |
uses: ./.github/actions/get-affected-packages-paths | |
with: | |
base-branch: ${{ github.base_ref }} | |
library-lint-and-tests: | |
name: π― Run Tests | |
needs: build | |
runs-on: ubuntu-latest | |
if: join(fromJson(needs.build.outputs.affected-packages)) != '' | |
timeout-minutes: 30 | |
strategy: | |
fail-fast: false | |
matrix: | |
AFFECTED_LIB: ${{ fromJson(needs.build.outputs.affected-packages) }} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Run tests | |
uses: ./.github/actions/lint-and-tests | |
with: | |
path: ${{ matrix.AFFECTED_LIB }} | |
validate-pr: | |
name: β Validate the PR | |
runs-on: ubuntu-latest | |
if: ${{ always() }} | |
needs: [build, library-lint-and-tests] | |
steps: | |
- name: Validate build | |
run: | | |
if [[ ${{ needs.build.result }} = "failure" ]]; then | |
echo "build failed" | |
exit 1 | |
fi | |
- name: Validate tests | |
run: | | |
if [[ ${{ needs.library-lint-and-tests.result }} = "failure" ]]; then | |
echo "tests failed" | |
exit 1 | |
fi |