Kami mengumpulkan dalam rpm WireMock - utilitas untuk membuat bertopik atas layanan web di Fedora COPR analog dari PPA di Ubuntu

WireMock adalah utilitas perpustakaan java untuk membuat bertopik melalui layanan web. Ini menciptakan server HTTP, yang dapat kita sambungkan sebagai layanan web nyata.


Fedora COPR adalah layanan hosting gratis untuk hosting repositori khusus (mirip dengan AUR di Arch Linux atau PPA di Ubuntu). Dari fitur-fiturnya, kemampuan bawaan untuk mengumpulkan paket-paket rpm dengan menentukan nama PIP dan RubyGems.


Dalam posting ini saya akan menulis bagaimana cara mengumpulkan rpm dari repositori Anda dengan melakukan ke Fedora COPR .


Sebagai contoh, ambil repositori wiremock-rpm di mana saya membuat file unit spec dan systemd. Saat membuat repositori, Anda dapat menggunakan wiremock-rpm sebagai basis dan mengubah apa yang Anda butuhkan. Saya menghilangkan penulisan file unit spec dan systemd. Saya pikir kamu tahu.


Membuat proyek di Fedora COPR


Pergi ke Fedora COPR .



Nama Proyek : Tentukan nama paket. Biasanya sama dengan nama repositori git Anda.


Deskripsi : Deskripsi singkat proyek.


Petunjuk : Cara menginstal paket Anda. Tunjukkan berikut ini:


yum -y install yum-plugin-copr yum copr enable ---fedora-copr/- yum -y install - systemctl start - 

Beranda : Menentukan beranda program yang ingin Anda buat atau repositori Anda.



Opsi pembuatan: Di Chroots kami menunjukkan di bawah sistem operasi mana Anda ingin mengumpulkan paket.



Ternyata seperti pada screenshot.



Opsi lain : Jika Anda membutuhkan internet, maka di Boolean centang kotak Aktifkan akses internet saat membangun



Setelah membuat proyek, pergi ke Paket .



Nama paket: Tentukan nama paket.


Klon url: Tentukan repositori git.


Subdirektori: Item ini lebih baik tidak menggunakan dan menyimpan file source dan spec di root proyek. Jika Anda memiliki sumber di satu direktori dan file spesifikasi di direktori lain, mungkin ada masalah dengan build.


File Spesifikasi: Jalur ke file spesifikasi.



Pengaturan paket umum : Pastikan untuk memeriksa Auto-rebuild



Setelah membuat paket, pergi ke Pengaturan , lalu ke Integrasi. Di bawah ini pada halaman kami menyalin webhook dari sistem di mana repositori git Anda berada.



Buka Pengaturan tempat repositori git Anda berada. Selanjutnya untuk github, buka webhook. Tambahkan webhook. Masukkan Payload URL, pilih Aplikasi tipe konten / json


Sekarang tentang WireMock.


Instal wiremock sesuai dengan instruksi. Direktori kerja wiremock di proyek saya adalah /usr/lib/wiremock /. Direktori ini berisi wiremock.jar dan direktori pemetaan. Di direktori pemetaan ada file json dengan permintaan yang Anda kirim ke wiremock dan menyiapkan jawaban.


Contoh dari http://wiremock.org/docs/running-standalone/ :


 { "request": { "method": "GET", "url": "/api/mytest" }, "response": { "status": 200, "body": "More content\n" } } 

Kami mengirim permintaan ke / api / mytest dan mendapatkan:


 curl http://localhost:8080/api/mytest More content 

Contoh dari json saya:


 { "request": { "method": "GET", "url": "/503" }, "response": { "status": 503, "body": "503 Service Unavailable\n" } } 

Mari membuat permintaan ke / 503


 curl -i -v 172.26.9.123:8080/503 * About to connect() to 172.26.9.123 port 8080 (#0) * Trying 172.26.9.123... * Connected to 172.26.9.123 (172.26.9.123) port 8080 (#0) > GET /503 HTTP/1.1 > User-Agent: curl/7.29.0 > Host: 172.26.9.123:8080 > Accept: */* > < HTTP/1.1 503 Service Unavailable HTTP/1.1 503 Service Unavailable < Matched-Stub-Id: d8b419e1-7e33-4f04-889e-2428f849dc7d Matched-Stub-Id: d8b419e1-7e33-4f04-889e-2428f849dc7d < Transfer-Encoding: chunked Transfer-Encoding: chunked < Server: Jetty(9.2.z-SNAPSHOT) Server: Jetty(9.2.z-SNAPSHOT) < 503 Service Unavailable 

Dalam rpm wiremock menambahkan kode http populer. Sumber di sini .

Source: https://habr.com/ru/post/id476260/


All Articles