Skip to content

Commit ba1e753

Browse files
09.11 lesson-4.md
lesson-4.md update executors and runners how to get specific tool and version in a docker container
1 parent 992217e commit ba1e753

File tree

2 files changed

+23
-2
lines changed

2 files changed

+23
-2
lines changed

.gitlab-ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
image: node:17-alpine
2+
13
workflow:
24
rules:
35
- if: $CI_COMMIT_BRANCH != "main" && $CI_PIPELINE_SOURCE != "merge_request_event"
@@ -19,6 +21,7 @@ run_unit_tests:
1921
- echo "Preparing test data..."
2022
script:
2123
- echo "Running unit tests for $MICRO_SERVICE_NAME ..."
24+
- npm version
2225
after_script:
2326
- echo "Cleaning up temporary files..."
2427

Course/lesson-4.md

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
1. GitLab Server (GitLab Instance/ GitLab Installation) - is the main component of GitLab architecture
55
2. GitLab Runners execute the jobs
66
3. Gitlab.com - server to run the jobs with Runners
7-
4. Different executor types :
7+
4. **Different executor types :**
88
1. Shell executor
99
2. Docker executor
1010
3. Virtual machine executor
@@ -14,4 +14,22 @@
1414
7. Parallels executor
1515
8. VirtualBox executor
1616
5. To make multiple executors on the same host or the same server - register multiple runners on the same host\
17-
To have 10 runners on 1 machine with its own executor - [GitLab Executors](https://techworld-with-nana.teachable.com/courses/1769488/lectures/39894185)
17+
To have 10 runners on 1 machine with its own executor - [GitLab Executors](https://techworld-with-nana.teachable.com/courses/1769488/lectures/39894185)
18+
6. **Execution Flow:**
19+
1. **GitLab -> Runner -> Executor**
20+
1. Runner requests new jobs from GitLab instance (GitLab.com)
21+
2. Runner compiles and sends the job's payload to Executor
22+
3. Executor clones sources or downloads artifacts from GitLab instance and executes the job
23+
4. Executor returns jobs output abd status to the Runner
24+
5. Runner updates job output and status to GitLab instance
25+
7. **Default Shared Runners:**
26+
1. By default, GitLab uses one of its shared runners to run your CI/CD jobs
27+
2. These shared runners are maintained by GitLab
28+
3. Docker Machine Executors are used for them
29+
1. `Preparing the "docker+machine" executor` - in Job logs: type, name of executor
30+
8. **Scope of Runners:**
31+
1. Shared Runners - available to all groups and projects in a GitLab instance
32+
2. Group Runners - available to all projects in a group
33+
3. Specific Runners - associated with a specific project
34+
9. **Specify a Docker image that the jobs runs in:**
35+
1. "image"

0 commit comments

Comments
 (0)