Skip to content

Commit dcf3dd1

Browse files
authored
Create ci-cd.yml
1 parent fa29a9a commit dcf3dd1

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

.github/workflows/ci-cd.yml

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
2+
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
3+
4+
name: Movie Management CI
5+
6+
on:
7+
push:
8+
branches: [ "master", "main" ]
9+
pull_request:
10+
branches: [ "master", "main" ]
11+
12+
jobs:
13+
test:
14+
runs-on: ubuntu-latest
15+
16+
strategy:
17+
matrix:
18+
node-version: [14.x, 16.x, 18.x, 20.x, 22.x]
19+
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
20+
21+
steps:
22+
- uses: actions/checkout@v4
23+
- name: Use Node.js ${{ matrix.node-version }}
24+
uses: actions/setup-node@v4
25+
with:
26+
node-version: ${{ matrix.node-version }}
27+
cache: 'npm'
28+
- run: npm ci
29+
- run: npm run build --if-present
30+
- run: npm test
31+
32+
build:
33+
name: Build
34+
needs: test
35+
runs-on: ubuntu-latest
36+
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master')
37+
38+
steps:
39+
- uses: actions/checkout@v3
40+
- name: Use Node.js
41+
uses: actions/setup-node@v3
42+
with:
43+
node-version: '18.x'
44+
cache: 'npm'
45+
- name: Install dependencies
46+
run: npm ci
47+
- name: Build
48+
run: npm run build

0 commit comments

Comments
 (0)