Added implementation of workflow pattern based on /// Inspired by ht… #85
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: Workshops - Introduction to Event Sourcing | |
on: | |
# run it on push to the default repository branch | |
push: | |
branches: [main] | |
paths: | |
- "workshops/introduction_to_event_sourcing/**" | |
# run it during pull request | |
pull_request: | |
paths: | |
- "workshops/introduction_to_event_sourcing/**" | |
defaults: | |
run: | |
# relative path to the place where source code (with package.json) is located | |
working-directory: workshops/introduction_to_event_sourcing | |
jobs: | |
build-and-test-code: | |
name: Build application code | |
# use system defined below in the tests matrix | |
runs-on: ${{ matrix.os }} | |
strategy: | |
# define the test matrix | |
matrix: | |
# selected operation systems to run CI | |
os: [ubuntu-latest] #, windows-latest, macos-latest] | |
# selected node version to run CI | |
node-version: [20.10.x] | |
steps: | |
- name: Check Out Repo | |
uses: actions/checkout@v4 | |
- name: Start containers | |
run: docker-compose -f "docker-compose.yml" up -d | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
# use the node version defined in matrix above | |
node-version: ${{ matrix.node-version }} | |
- name: Install dependencies | |
run: npm ci | |
- name: Run linting (ESlint and Prettier) | |
run: npm run lint | |
- name: Build | |
run: npm run build:ts | |
- name: Test | |
run: npm run test:solved |