Bu konu, iş ihtiyaçlarınıza uygun bir algılama stratejisinin nasıl tasarlanacağını açıklar.
Kod algılama hizmeti Flow işlem hattı kaynaklarını kullanır. Eşzamanlı çalışma sayısı ve çalışma süresi işlem hattı kaynaklarınıza göre hesaplanır. Hizmeti kaynak kotanız dahilinde kullanabilirsiniz. Kullanımınız kotayı aşarsa daha fazla çalışma süresi kaynağı elde etmek için kullandıkça öde faturalamayı etkinleştirebilirsiniz. Daha fazla bilgi için bkz. Kullandıkça öde kuralları.
Adım 1: Bir algılama stratejisi oluşturun
Codeup ana sayfasında oturum açın. Sol gezinme bölmesinde seçeneğini belirleyin.
-
Algılama stratejisini yapılandırın.
Platform birkaç yerleşik strateji sunar. Mevcut bir stratejiyi kopyalayabilir veya ihtiyaçlarınıza uygun yeni bir strateji oluşturabilirsiniz.
-
Yerleşik strateji
Gereksinimlerinize göre yerleşik bir stratejiyi kopyalayabilir veya kendi stratejinizi oluşturabilirsiniz.
Soldaki listeden yerleşik bir strateji seçin (örneğin, Python recommended detection strategy). Stratejiyi kopyalayıp özelleştirmek için sağ üst köşedeki Copy/edit strategy düğmesine tıklayabilir veya hızlıca kopyalamak için Copy strategy düğmesine tıklayabilirsiniz. Ayrıca stratejiye yeni bir kural paketi eklemek için Add rule seçeneğine tıklayabilirsiniz.
-
Bir stratejiyi kopyalama
Kopyalanacak önerilen bir algılama stratejisi seçin. Görüntülenen Add detection strategy iletişim kutusunda Copy an existing strategy seçeneğini belirleyin, bir Strategy name ve Strategy description girin, Select strategy açılır listesinden hedef stratejiyi seçin ve OK düğmesine tıklayın.
Yeni bir algılama stratejisi oluşturma. Add detection strategy iletişim kutusunda Create a new strategy seçeneğini belirleyin, bir Strategy name ve Strategy description girin. Add rule package alanında bir dil seçin (örneğin, TypeScript, Node.js, Python, Go, C/C++ veya Lua). Ardından, ilgili dil için gerekli kural paketlerini listeden seçmek üzere Add rule package düğmesine tıklayın ve OK düğmesine basın.
-
Adım 2: Strateji içeriğini ayarlayın
Bir algılama stratejisi seçtikten sonra kurallarını ve yapılandırmasını gerektiği şekilde ayarlayabilirsiniz.
Stratejiyi yalnızca stratejiyi oluşturan kullanıcı veya bir Codeup kuruluş yöneticisi düzenleyebilir ve silebilir. Diğer kullanıcılar sadece görüntüleyebilir ve kopyalayabilir.
-
Algılama kuralı içeriğini ayarlayın.
Her kural için önem düzeyini düzenleyebilirsiniz. Bazı kurallar, algılama kapsamını sınırlamak için normal ifadeler kullanmak gibi özel algılama parametrelerini de destekler. Uygun olmayan kuralları devre dışı bırakabilir veya yeniden etkinleştirebilirsiniz.
UyarıBir kuralı devre dışı bırakmanın aşağıdaki etkileri vardır:
Kural tarafından bulunan sorunlar, sonraki algılama çalıştırmasından sonra otomatik olarak kapatılır.
Mevcut algılama stratejisini çalıştırdığınızda kural yürütülmez.
Örneğin, düzenleme iletişim kutusunu açmak için bir kurala tıklayın. Ardından Severity level açılır listesinden düzeyi (kritik, uyarı veya öneri) ayarlayabilir veya kural ayrıntılarında özel normal ifade parametrelerini yapılandırabilirsiniz.
-
Algılama stratejisini bir algılama göreviyle ilişkilendirin. Algılama stratejisi ayrıntıları sayfasında Associated code sekmesine gidin. Herhangi bir algılama görevi ilişkili değilse bir tane ilişkilendirmek için Create detection task düğmesine tıklayın.
Yeni bir algılama görevi oluşturun. Görüntülenen Create detection task iletişim kutusunda bir Code source type (örneğin, Codeup), bir code repository ve detection strategy seçin, bir Trigger method (örneğin, on commit veya on merge request) belirleyin ve Create and execute düğmesine tıklayın.
Algılama stratejisinde yapılan tüm değişiklikler stratejinin değişiklik geçmişinde kaydedilir.
-
Algılama stratejisi ayarlarını değiştirin.
Stratejinin Ayarlar sayfasında strateji adını değiştirebilir, bir açıklama girebilir, algılama için dosya izin listesini yapılandırabilir ve Kaydet düğmesine tıklayabilirsiniz.
İzin verilen yollardaki dosyalar algılama sırasında otomatik olarak atlanır.
ÖnemliBir stratejiyi silmeden önce herhangi bir algılama görevi ile ilişkili olmadığından emin olun. İlişkiliyse çalışan görevleri etkilememek için öncelikle algılama görevlerinden ayırmanız gerekir.
Adım 3: Bir stratejiyi bir kod deposuyla ilişkilendirin
Bir stratejiyi bir kod deposuyla ilişkilendirdikten sonra bu strateji çalıştırılabilir bir algılama görevi haline gelir. Kod deposu başına en fazla bir algılama görevi oluşturabilirsiniz. Bu görev farklı dallarda birden çok kez çalıştırılabilir.
yolunu izleyin ve Create detection task düğmesine tıklayın. Detection tasks sayfasında mevcut görevlerin çalışma durumunu ve algılama istatistiklerini görüntüleyebilirsiniz.
Uygun bir algılama görevi yapılandırması seçin. Detection strategy açılır listesinden yerleşik bir strateji (Java recommended detection strategy veya Python recommended detection strategy gibi) ya da özel bir strateji seçebilirsiniz.
-
Manuel tetiklemelere ek olarak bir algılama görevi için commit tetikleyicileri ve birleştirme isteği tetikleyicileri dahil olmak üzere otomatik tetikleyiciler ayarlayabilirsiniz. Bir commit tetikleyicisi seçerseniz izlenecek dalları belirtmeniz gerekir ve normal ifadeler desteklenir. Bir birleştirme isteği tetikleyicisi seçerseniz depodaki herhangi bir birleştirme isteği kaynak dal ile hedef dal arasındaki kod değişikliklerinin taranmasını tetikler.
Bir algılama görevi yapılandırırken kod algılama tamamlandıktan sonra yapay zeka destekli düzeltme iş akışını başlatmak için Auto-fix after detection seçeneğini açın.
Adım 4: Algılama sonuçlarını görüntüleyin
-
Sonuçları algılama görevinde görüntüleyin.
Algılama görevine gidin, Overview seçeneğini belirleyin ve en son başarılı tam algılamanın sonuçları ile mevcut dal için sorun listesini görüntüleyin.
-
Overview sekmesi şunları içerir:
Algılama sonucu: Başarılı/başarısız durumu, buna karşılık gelen sorun sayısı ve kalite kapısı eşiği.
Sorunlara genel bakış: Çözümlenmemiş ve çözümlenmiş sorunların sayısı.
Sorun önem dağılımı: Kritik, uyarı ve öneri sorunlarının dağılımı.
Sorun türü dağılımı: Güvenlik ve kodlama standardı sorunlarının dağılımı.
Katkıda bulunana göre dağılım: Farklı kullanıcılar tarafından oluşturulan çeşitli türdeki sorunların sayısı.
En çok kritik soruna sahip kurallar: En çok kritik sorunu tetikleyen kuralların sıralaması.
Sorun eğilimi: Her önem düzeyi için bekleyen sorunların eğilimi.
-
Sorun listesi
Sorun listesi önem düzeyine ve çözüm durumuna göre sıralanır. Ayrıntılarını görüntülemek için bir sorun satırına tıklayın. Sorunun o dalda tekrar bildirilmesini önlemek için yoksayabilirsiniz.
-
Çalıştırma geçmişi
Kod algılama hizmeti Flow işlem hattında çalışır. Bir algılama çalıştırması başarısız olursa sayfada View run log seçeneğine tıklayarak Flow'a gidebilir ve sorunu gidermek için hata günlüğünü görüntüleyebilirsiniz.
En son algılama çalıştırması başarısız olursa algılama görevi ayrıntıları sayfası son başarılı çalıştırmanın sonuçlarını korur ve başarısızlık zamanıyla birlikte bir uyarı görüntüler. Sorunu araştırmak ve çözmek için yürütme günlüğüne gidebilirsiniz.
-
-
Algılama sonuçlarını kod deposu commit'lerinde ve birleştirme isteklerinde görüntüleyin.
-
Commit algılama sonuçları
Commit ve dal görünümlerinde belirli bir commit'in kod algılama sonuçları varsa listedeki bir kartta bunları hızlıca görüntüleyebilirsiniz. Sorun ayrıntılarını görüntülemek için karta tıklayın.
-
Birleştirme isteği algılama sonuçları
Bir birleştirme isteği tetikleyicisi seçilirse otomatik taramanın sonuçlarını birleştirme isteği listesinde ve birleştirme ayrıntılarının birleştirme koşulları bölümünde görebilirsiniz.
Çalıştırma tamamlandıktan sonra mevcut birleştirme isteğinin dosya değişiklikleri görünümünde algılanan sorunları görmek için View Details seçeneğine tıklayın. İlgili kod satırına doğrudan gitmek için bir soruna tıklayın.
-
Adım 5: Algılanan sorunları yapay zeka ile düzeltin
Kod algılama tamamlandıktan sonra Issue list öğesini açın ve Smart Fix düğmesine tıklayın.
Yapay zeka asistanı yeni bir dal oluşturur, algılanan sorunları düzeltir ve düzeltmeleri doğrular.
Düzeltme ilerlemesini izlemek veya soruları yanıtlamak için AI assistant conversation öğesini açın.
Düzeltmeler tamamlandığında yapay zeka asistanı onaylamanız için bir birleştirme isteği (MR) gönderir.
SSS
1. Birleştirme isteği kontrol noktası ayarlama
Kod algılama hizmeti kod incelemesine yardımcı olur. Kodlama standardı ve güvenlik açığı sorunlarını otomatik olarak tarayıp vurgulayarak manuel incelemelerin maliyetini azaltır.
Bir birleştirme isteğinde manuel incelemeye ek olarak kodu birleştirmeden önce kod algılamayı bir kontrol noktası olarak ayarlayabilirsiniz. Tarama yapılandırılmış kalite kapısını geçmezse kullanıcılar kodu birleştiremez. Bu, kalite standartlarını karşılamayan kodun üretim dalına birleştirilmesini engeller.
Adım 1: Kalite kapısı eşiğini ayarlayın
Öncelikle kontrol noktası için istenen kalite kapısı eşiğini ayarlayın.
Mevcut depo için algılama görevinde birleştirme isteği kalite kapısı ayarlarını bulabilirsiniz. Varsayılan olarak hiçbir kritik soruna izin verilmez ve uyarı veya öneri sorunları için sınır yoktur. Bu ayarları iş gereksinimlerinize göre değiştirebilirsiniz.
Adım 2: Korumalı dal kontrol noktasını yapılandırın
Ardından "Go to set up merge request checkpoint" seçeneğine tıklayın veya Repository settings > Branch settings > Protected branch rules yolunu izleyin.
Korumak istediğiniz dal için yeni bir korumalı dal kuralı oluşturun, dal adını seçin, kural ayarlarında 'Require automated checks to pass before merging' seçeneğini etkinleştirin ve kod algılama görevini seçin.
Silinen bir kontrol noktası algılama görevinin ele alınması
Bir algılama görevi kontrol noktası olarak ayarlandıysa görev manuel olarak silinse bile birleştirme isteği kontrol noktası etkin kalır. Bu, taranmamış kodun korumalı bir dala birleştirilmesini engeller.
Bu durumda eski silinen algılama görevinin kontrol noktası 'Failed' durumunu gösterir. Bir yöneticinin mevcut depoda yeni bir algılama görevi oluşturması gerekir. Yeni görev otomatik olarak eskisinin yerine geçer ve etkin birleştirme isteği kontrol noktası haline gelir.
2. Kaynak tüketimini hesaplama
Taramalar eşzamanlı çalışma sayısını ve çalışma süresini belirleyen Flow işlem hattı kaynaklarını kullanır. Taramaları işlem hattı kaynak kotasınız dahilinde çalıştırabilirsiniz. Kullanımınız kotayı aşarsa daha fazla işlem hattı kaynağı elde etmek için kullandıkça öde faturalamayı etkinleştirebilirsiniz.
Alibaba Cloud DevOps Pipeline Flow sayfasının sol alt köşesindeki Resources bölümünden mevcut ay için kaynak tüketiminizin ayrıntılarını görüntüleyebilirsiniz.
3. Kod algılamayı devre dışı bırakma
Bir kod deposundan bir algılama görevini sildiğinizde ilişkili sistem işlem hattı da otomatik olarak silinir.
Algılama görevi ayrıntıları sayfasında Task Settings seçeneğine tıklayın ve ardından Basic Information sekmesinin altındaki Delete Task alanında Delete düğmesine tıklayın.