Hudson / Jenkins verileri nerede ve nasıl saklar?


18

Jenkins'i Ubuntu 10.10'a yükledim ve veri kalıcılığı için veritabanı kurmanın herhangi bir sözünü bulamadım.

İlk soru verinin nerede saklandığı ve ikincisi Hudson / Jenkins'i mySQL ile kurabilir miyiz? veya benzeri veritabanları?


Bir dosya sisteminde, genellikle /var/lib/jenkins/, /var/jenkins_home/veya gibi bir şey /home/jenkins/.
Ondra Žižka

Yanıtlar:


11

Hudson / Jenkins bu şekilde çalışmaz. Yapılandırmaları ve iş bilgilerini /var/lib/jenkinsvarsayılan olarak (.deb paketini kullanıyorsanız) saklar . Belirli bir uygulama için kalıcılık ayarlamak istiyorsanız, bu kendinizle başa çıkmak isteyeceğiniz bir şeydir - Hudson bir test çerçevesi değil sürekli bir entegrasyon sunucusudur.

Neler olacağını görmek için Sürekli Entegrasyon hakkındaki Wiki makalesine göz atın .


2
@Redmumba onun bir CI Sunucusu anlıyorum, ama ben sadece birim testleri sürücü ve sonuçları flar dosyaları yerine bir veritabanında ısrar için kullanılan olasılığı içine bakıyordu. Jenkins CAN sürüş testleri ve görüntüleme için kullanılabilir. Düşüncesi olan var mı?
kamal

Bir derleme derlemeden (veya dinamik dil varyasyonlarından) çok daha fazlasıdır. Bir derleme, diğer şeylerin yanı sıra derleme, test, denetim ve dağıtımdan oluşabilir. Bir yapı, kaynak kodunu bir araya getirme ve yazılımın uyumlu bir birim olarak çalıştığını doğrulama süreci olarak işlev görür.
kamal

1
Dediğim gibi Jenkins sadece bir CI sunucusu - bir çerçeve değil. Jenkins, tüm atasözü ve amaçlar için, yalnızca belirttiğiniz komut dosyalarını çalıştırır; kalıcı depolama alanı, kullandığınız diller ve hatta ne yaptığınız önemli değildir. İşte bu noktada bağlantıyı kesme olduğunu düşünüyorum - Jenkins uygulama için kalıcı depolama sağlamaz, vb ..
Andrew M.

1
ref: “Sürekli Entegrasyon: Birçoğu, otomatik, sürekli test yapılmadan CI'yi CI olarak kabul etmiyor. Daha fazla anlaşamadık. Otomatik testler olmadan, geliştiricilerin veya diğer proje paydaşlarının yazılım değişikliklerine güvenmesi zordur. CI sistemi kullanan projelerdeki geliştiriciler, testleri çalıştırmak için JUnit, NUnit veya diğer xUnit çerçeveleri gibi birim test araçlarını kullanırlar.Ayrıca, yapılarınızı hızlandırmak için bir CI sisteminden farklı test kategorileri çalıştırabilirsiniz. birim, bileşen, sistem, yük / performans, güvenlik ve diğerleri
kamal

1
Sağ; yani aynı sayfadayız. Jenkins bu şeyleri çalıştırır - kalıcılık katmanlarını, test çerçevelerini, oluşturma araçlarını (karınca hariç) vb. Yönetmez. Kalıcılık katmanınızı ve testleri ayrı ayrı oluşturmanız gerekir. Jenkins, Java test çerçevelerinin sağladığı bir şey olan xunit biçiminde çıktılarsa birim testleri grafikleyebilir; diğer birçok dil (Python'un burnu gibi) de bu biçimde çıkacaktır.
Andrew M.

6

Jenkins, komut dosyalarınızın ne yaptığına ve nasıl yapıldığına bağlı olarak veri depolamış gibi görünebilir.

Örnek olarak; günlük tamamlama derlemelerinizi çalıştıran komut dosyaları, bir XML dosyasında depolamak üzere "başarılı / başarısız" sonuçlarını Jenkins'e teslim edecek şekilde ayarlanabilir. Daha sonra, geçmiş "başarılı olma / başarısızlık" sonuçlarını almak ve bunları Jenkins GUI'sinden farklı bir yerde kullanmakla ilgileniyorsanız, Jenkins API'sını arayabilir ve bu XML'den dönüş alabilirsiniz. Ayrıştırın ve ihtiyacınız olan verileri elde edin.

Ancak - Jenkins, bunun dışında, yalnız başına depo sistemi yoktur.

Ayrıca, jenkins api bilgileri aşağıdadır: https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API


2

Cevap, jenkinlerin bunu sizin için ayarlamayacağıdır. Ortamı nasıl kuracağınızı ve testlerini nasıl gerçekleştireceğinizi söylemelisiniz. Bu normalde derleme adımları bölümünde yapılır. Hangi platformu kullandığınız konusunda daha fazla bilgi verirseniz, size daha somut bir cevap verebiliriz. Uygulamanızı yükleyecek ve testlerini çalıştıracak bir kabuk betiğiniz olabilir ve daha sonra bunu hudson'dan çağırırsınız. Son olarak test sonuçlarınızı bunları görüntülemek için web kullanıcı arayüzüne almak için test çalıştırıcısı çıktı verilerini hudson dostu bir şekilde yapma.


2

Verileri ana dizininizde bir .jenkinsdizinde saklar . Yapılarınızla ilgili tüm bilgileri bu dizinde bulabilirsiniz.

Jenkins herhangi bir veritabanına bağlanmak için destek sağlamıyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.