diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bcb64e986d58bf0710eab0a3e3282b31f645628b..2dc991277439943ef15a88043ae7726cc426edd5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,6 +1,70 @@
-# Sample, test if it enabled CI in gitlab
-build:
-  tags:
-    - kurisu
-  script:
-    - ls
+stages:
+    - Initialization
+    - Configures
+    - Builds
+    - Finalization
+
+.main_tests: &main_tests
+    only:
+        - main
+        - merge_requests
+
+.breaking_tests: &breaking_tests
+    allow_failure: true
+
+#################################################
+### Initialization and Finalization #############
+#################################################
+
+Env Sanitize:
+    <<: *main_tests
+    stage: Initialization
+    script:
+        - mkdir -p $HOME/$CI_PIPELINE_ID/{build.clang,build.gcc,install.clang,install.gcc}
+        - echo "Env is intialized"
+
+Env Finalize:
+    <<: *main_tests
+    stage: Finalization
+    allow_failure: true
+    when: on_success
+    script:
+        - rm -rf $HOME/$CI_PIPELINE_ID
+
+#################################################
+### Configures ##################################
+#################################################
+
+Configure with gcc:
+    <<: *main_tests
+    stage: Configures
+    script:
+        - cd $HOME/$CI_PIPELINE_ID/build.gcc
+        - ../configure --prefix=$HOME/$CI_PIPELINE_ID/build.gcc --with-debug --static-modules CC=gcc
+
+Configure with clang:
+    <<: *main_tests
+    stage: Configures
+    script:
+        - cd $HOME/$CI_PIPELINE_ID/build.clang
+        - ../configure --prefix=$HOME/$CI_PIPELINE_ID/build.clang --with-debug --static-modules CC=clang
+
+#################################################
+### Builds ######################################
+#################################################
+
+Build with gcc:
+    <<: *main_tests
+    stage: Builds
+    script:
+        - cd $HOME/$CI_PIPELINE_ID/build.gcc
+        - make -j4
+        - make install
+
+Build with clang:
+    <<: *main_tests
+    stage: Builds
+    script:
+        - cd $HOME/$CI_PIPELINE_ID/build.clang
+        - make -j4
+        - make install