|
1 |
| -# Semaphore demo CI/CD pipeline using JavaScript (ReactJS/NodeJS) |
| 1 | +# Semaphore demo CI/CD pipeline using JavaScript (Node.js, TypeScript, Nest.js, React) |
2 | 2 |
|
3 |
| -Example application and CI/CD pipeline showing how to run a JavaScript project which consists of ReactJS client and NodeJS server on Semaphore 2.0. |
| 3 | +Example application and CI/CD pipeline showing how to run a JavaScript project |
| 4 | +on Semaphore 2.0. Project consists of a Node.js server based on Nest.js, and a |
| 5 | +React client. Code is written in TypeScript. |
| 6 | + |
| 7 | +## CI/CD on Semaphore |
| 8 | + |
| 9 | +Fork this repository and use it to [create a |
| 10 | +project](https://docs.semaphoreci.com/article/63-your-first-project). |
| 11 | + |
| 12 | +The CI pipeline will look like this: |
| 13 | + |
| 14 | + |
| 15 | + |
| 16 | +The example pipeline contains 4 blocks: |
| 17 | + |
| 18 | + - Install Dependencies |
| 19 | + - installs and caches all npm dependencies |
| 20 | + - Run Lint |
| 21 | + - Runs tslint to check project files codestyle |
| 22 | + - Run Unit Tests |
| 23 | + - Runs Unit Tests |
| 24 | + - Run E2E Tests |
| 25 | + - Runs E2E tests through cypress on client. |
| 26 | + - Runs E2E tests through jest on server. |
4 | 27 |
|
5 | 28 | ## Local project setup
|
6 | 29 |
|
7 |
| -This project will require postgresql database. If you don't have one you can launch docker container with db for this app. |
| 30 | +This project requires a PostgreSQL database. If you don't have one you can |
| 31 | +launch a Docker container to have one. |
8 | 32 |
|
9 | 33 | ### Configuration
|
10 | 34 |
|
@@ -32,38 +56,6 @@ Steps described in server [README](src/server/README.md)
|
32 | 56 |
|
33 | 57 | Steps described in client [README](src/client/README.md)
|
34 | 58 |
|
35 |
| -## CI/CD on Semaphore |
36 |
| - |
37 |
| -Fork this repository and use it to [create a |
38 |
| -project](https://docs.semaphoreci.com/article/63-your-first-project): |
39 |
| - |
40 |
| -``` |
41 |
| -curl https://storage.googleapis.com/sem-cli-releases/get.sh | bash |
42 |
| -sem connect <semaphore-organization-link> <semaphore-id> // found in Semaphore Dashboard |
43 |
| -cd <project directory> |
44 |
| -sem init |
45 |
| -``` |
46 |
| - |
47 |
| -After that, push to the repository to trigger a workflow on Semaphore. |
48 |
| - |
49 |
| -The CI pipeline will look like this: |
50 |
| - |
51 |
| - |
52 |
| - |
53 |
| -The example pipeline contains 5 blocks: |
54 |
| - |
55 |
| - - Install Dependencies |
56 |
| - - installs and caches all npm dependencies |
57 |
| - - Run Lint |
58 |
| - - Runs tslint to check project files codestyle |
59 |
| - - Run Unit Tests |
60 |
| - - Runs Unit Tests |
61 |
| - - Run E2E Tests |
62 |
| - - Runs E2E tests through cypress on client. |
63 |
| - - Runs E2E tests through jest on server. |
64 |
| - - Run project Build |
65 |
| - - Runs tsc to build projects and prepare them for deploy |
66 |
| - |
67 | 59 | ## License
|
68 | 60 |
|
69 | 61 | Copyright (c) 2019 Rendered Text
|
|
0 commit comments