Nama saya Ivan Sidorenko, saya seorang insinyur pengujian di Desain Digital. Tugas saya adalah mengimplementasikan peluncuran autotest yang ditulis dalam Java Selenium.
Saya baru mengenal CI / CD, jadi saya mengalami banyak masalah. Saya tidak menemukan petunjuk terperinci di Internet untuk tugas ini, oleh karena itu, setelah saya menemukan jawabannya dengan bantuan pengembang kami, saya memutuskan untuk menulis manual untuk pendatang baru yang sama seperti yang saya lakukan.
Saya menjelaskan secara terperinci semua langkah yang diperlukan untuk mengkonfigurasi CI / CD menggunakan GitLab, misalnya, menjalankan program HelloWorld sederhana yang ditulis menggunakan Java.

Autotests harus dijalankan setiap kali pengembang mendorong perubahan ke repositori GitLab. Tugas ini sesuai dengan salah satu prinsip CI / CD - peluncuran autotest pada setiap tahap pengembangan produk. Saya tidak akan menjelaskan konsep CI / CD lengkap dalam manual ini - informasi ini mudah ditemukan di Internet.
Tetapi yang tidak ditemukan adalah cara mengkonfigurasi CI / CD menggunakan GitLab untuk pemula, dengan deskripsi semua langkah yang diperlukan. Ini akan dibahas di bawah.
1. Instal Git dan dapatkan akses ke repositori GitLab
Saya mengerahkan segala yang diperlukan untuk memulai proyek pada mesin jarak jauh, tetapi karena tujuan manual ini adalah untuk membiasakan diri dengan dasar-dasar penerapan CI / CD, kami akan bekerja pada mesin lokal.
Pergi ke GitLab pada halaman Proyek, di jendela yang muncul, klik tombol
Proyek baru
Tetapkan nama proyek, setel nilai pribadi di bidang Proyek Visibilitas dan klik tombol
Buat proyek hijau.

Selamat, proyek di GitLab telah dibuat.

Sekarang kita perlu menggunakan repositori lokal dari mana kita akan mendorong perubahan ke GitLab. Untuk melakukan ini, Anda harus menginstal Git terlebih dahulu, selama instalasi Anda dapat memilih semua nilai default. Jika tidak ada pengalaman dengan git dan instalasinya, saya sarankan Anda membiasakan diri dengan kursus
ini di
www.youtube.com .
Sekarang Anda perlu mengkonfigurasi variabel lingkungan Git user.name dan user.email. Kami mengambil nilai dari GitLab -> halaman Project / Details (kami mendapatkan halaman ini segera setelah kami membuat proyek).
git config --global user.name "user name" git config --global user.email "email@examle.com"
Buka Git Bash, untuk melakukan ini, klik di mana saja di desktop dan pilih Git Bash Di Sini. Sekarang kita memasukkan dua perintah ini secara berurutan.
Setelah itu, Anda perlu membuat repositori lokal, dari mana kami akan mendorong semua perubahan di GitLab. Untuk melakukan ini, buat folder di mesin lokal, buka, buka Git Bash dan jalankan perintah-perintah ini secara berurutan (mereka juga tersedia di GitLab -> halaman Project / Details).
git init
git remote add origin
git init
git remote add origin
sini tentukan path ke proyek AndaSekarang repositori jarak jauh kami telah ditambahkan. Tetapi sebelum Anda mulai mendorong perubahan pada repositori GitLab, Anda perlu mengkonfigurasi kunci SSH.
2. Mengkonfigurasi kunci SSH
Kunci SSH diperlukan untuk transfer data yang aman dari repositori jarak jauh ke repositori git utama, melalui protokol SSH. Buat pasangan kunci.
Buka Git Bash dan masukkan:
ssh-keygen -o -t rsa -b 4096 -C email@example.com
Alih-alih email@example.com, kami mengganti email Anda.
Selanjutnya kita mendapatkan pesan di mana kunci akan disimpan. Di sini kita cukup tekan Enter. Kunci akan disimpan di folder formulir:
C:\Users\User_name\.ssh
Setelah memilih folder, kami akan diminta memasukkan kata sandi untuk kunci, Anda dapat melewati langkah ini dengan menekan Enter dua kali.
Sekarang Anda perlu menambahkan kunci publik ke akun GitLab Anda. Buka folder .ssh dan buka file id id _rsa.pub dengan notepad. Salin konten file dan pergi ke GitLab. Di sini Anda perlu pergi ke pengaturan pengguna (klik tombol di kanan atas dan pilih Pengaturan).

Pergi ke bagian Kunci SSH.
Masukkan kunci publik di bidang Key dan klik tombol
Add key .

Sekarang Anda perlu menyimpan kunci pribadi pada mesin jarak jauh. Untuk melakukan ini, jalankan perintah:
ssh-agent bash ssh-add ~/.ssh/key
di mana
kunci adalah
kunci pribadi yang dihasilkan (file bernama "id_rsa")
ssh-agent adalah program untuk menyimpan kunci pribadi yang digunakan untuk otentikasi dengan kunci publik (dalam kasus kami, ini adalah kunci RSA).
Sekarang Anda siap untuk mendorong file di GitLab. Periksa apakah semuanya berfungsi. Pergi ke repositori yang diinisialisasi sebelumnya. Tambahkan file txt kosong ke dalamnya. Setelah itu, kami menjalankan perintah ini secara berurutan di Git Bash.
git add . git commit -m "Initial commit" git push -u origin master
Buka GitLab pada halaman Project / Details dan verifikasi bahwa semuanya berfungsi dengan baik.

3. Membuat GitLab Runner (Shell)
Untuk memulai proyek saat mendorong ke gitlab, kita perlu menggunakan pelari. GitLab Runner adalah agen untuk menjalankan instruksi dari file .gitlab-ci.yml khusus. Ada beberapa jenis pelari. Pertimbangkan untuk menginstal dan meluncurkan salah satu yang paling sederhana - shell runner.
Shell-runner memungkinkan Anda menjalankan proyek di mesin tempat pelari ini dipasang. Pertimbangkan untuk menginstal pelari ini di mesin lokal kami:
1. Buat folder untuk pelari, misalnya C: \ GitLab-Runner
2. Unduh pelari dari tautan:
https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-386.exeGanti nama menjadi gitlab-runner.exe.
3. Jalankan PowerShell sebagai administrator.
4. Buka folder kami:
cd C:\GitLab-Runner
5. Masukkan tautan ke GitLab. Di GitLab pergi ke Pengaturan-> CI / CD-> Pelari.

6. Masukkan token:

7. Masukkan deskripsi pelari.
8. Masukkan tag untuk pelari.
9. Pilih jenis pelari - shell.
10. Pasang pelari:
gitlab-runner install
11. Dan jalankan:
gitlab-runner start
Untuk memverifikasi bahwa pelari telah dimulai, buka GitLab -> Pengaturan -> CI / CD -> Pelari. Lingkaran hijau berarti pelari sedang berlari.

4. Mengatur variabel lingkungan
Untuk menjalankan program java kami, kami membutuhkan:
1. Instal java:
https://java.com/en/download/2. Pasang jdk:
https://www.oracle.com/technetwork/java/javase/downloads/index.html3. Tetapkan variabel lingkungan.
Untuk mengkonfigurasi variabel lingkungan, buka:
Komputer saya -> Properti -> Pengaturan lingkungan lanjutan -> Variabel lingkungan
Di sini, di bagian "Variabel Sistem", buat variabel JAVA_HOME, di baris "Nilai Variabel" tulis path ke jdk.

Tambahkan nilai ini ke variabel Path. Anda juga perlu memverifikasi bahwa ada jalur untuk Java.

5. Penciptaan proyek dan peluncurannya
Mari kita buat proyek java sederhana yang akan menampilkan "Hello World!" di konsol. Masukkan ke dalam repositori lokal kami. Akan terlihat seperti ini:

Di sini saya membuat file .gitlab-ci dengan ekstensi yml.
Konten .gitlab-ci.yml image: java:latest stages: - build - execute build: stage: build script: - cd C:\GitAuto\src - javac Main.java artifacts: tags: - first-runner execute: stage: execute script: - cd C:\GitAuto\src - java Main artifacts: tags: - first-runner
Ada dua tahap - Build dan Execute. Menggunakan perintah javac, kami mengkompilasi kode sumber, dan menggunakan perintah java, kami menjalankannya. Pada setiap langkah, kita harus secara eksplisit menunjukkan pelari mana yang akan kita gunakan. Pelari akan ditentukan oleh nilai tag-nya (Anda bisa melihatnya di pengaturan pelari di GitLab).
Setelah mengatur konten file, buka repositori lokal dan buka Git Bash. Kami mulai menjalankan perintah secara berurutan:
git add . git commit -m "Initial commit" git push -u origin master
Perubahan telah dimulai, sekarang kami akan memverifikasi bahwa program kami telah berhasil diselesaikan. Pergi ke GitLab -> CI / CD -> Pekerjaan, buka pekerjaan terakhir:

Program ini selesai, Anda hebat!